From 35005ce58ddbf2ee3434b5625439b9fdf340eac5 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 4 Jul 2023 11:26:33 +0100 Subject: [PATCH 01/43] Initial perps v3 sdk service setup --- .../futures/CreatePerpsV3AccountModal.tsx | 194 + packages/app/src/state/futures/actions.ts | 553 +- packages/app/src/state/futures/hooks.ts | 18 +- packages/app/src/state/futures/selectors.ts | 9 +- packages/app/src/state/perpsV3/actions.ts | 174 + packages/app/src/state/perpsV3/reducer.ts | 596 ++ packages/app/src/state/perpsV3/selectors.ts | 24 + packages/app/src/state/perpsV3/types.ts | 274 + packages/app/src/state/store.ts | 2 + packages/app/src/utils/futures.ts | 5 + packages/sdk/src/constants/futures.ts | 18 + .../contracts/abis/PerpsV3MarketProxy.json | 3365 +++++++++++ packages/sdk/src/contracts/constants.ts | 3 + packages/sdk/src/contracts/index.ts | 4 + .../sdk/src/contracts/types/BatchClaimer.ts | 218 +- .../src/contracts/types/DappMaintenance.ts | 537 +- packages/sdk/src/contracts/types/ERC20.ts | 872 +-- .../sdk/src/contracts/types/ExchangeRates.ts | 2986 +++++----- packages/sdk/src/contracts/types/Exchanger.ts | 2011 ++++--- .../sdk/src/contracts/types/FuturesMarket.ts | 2735 +++++---- .../src/contracts/types/FuturesMarketData.ts | 1181 ++-- .../contracts/types/FuturesMarketSettings.ts | 811 ++- .../src/contracts/types/KwentaArrakisVault.ts | 817 ++- .../contracts/types/KwentaStakingRewards.ts | 1589 +++--- .../types/MultipleMerkleDistributor.ts | 890 +-- .../types/MultipleMerkleDistributorOp.ts | 839 +-- .../types/MultipleMerkleDistributorPerpsV2.ts | 876 +-- .../sdk/src/contracts/types/PerpsV2Market.ts | 3682 ++++++------ .../src/contracts/types/PerpsV2MarketData.ts | 1330 +++-- .../contracts/types/PerpsV2MarketSettings.ts | 1475 ++--- .../src/contracts/types/PerpsV2MarketViews.ts | 1675 +++--- .../src/contracts/types/PerpsV3MarketProxy.ts | 4203 ++++++++++++++ packages/sdk/src/contracts/types/Pyth.ts | 1034 ++-- .../sdk/src/contracts/types/ReverseRecords.ts | 124 +- .../sdk/src/contracts/types/RewardEscrow.ts | 2036 ++++--- .../src/contracts/types/SmartMarginAccount.ts | 1188 ++-- .../types/SmartMarginAccountFactory.ts | 199 +- .../sdk/src/contracts/types/StakingRewards.ts | 1310 +++-- .../sdk/src/contracts/types/SupplySchedule.ts | 264 +- packages/sdk/src/contracts/types/Synth.ts | 1709 +++--- .../sdk/src/contracts/types/SynthRedeemer.ts | 843 +-- packages/sdk/src/contracts/types/SynthSwap.ts | 871 +-- packages/sdk/src/contracts/types/SynthUtil.ts | 361 +- packages/sdk/src/contracts/types/Synthetix.ts | 5082 +++++++++-------- .../sdk/src/contracts/types/SystemSettings.ts | 1483 ++--- .../sdk/src/contracts/types/SystemStatus.ts | 3862 +++++++------ .../src/contracts/types/VKwentaRedeemer.ts | 183 +- .../src/contracts/types/VeKwentaRedeemer.ts | 250 +- packages/sdk/src/contracts/types/common.ts | 47 +- .../types/factories/BatchClaimer__factory.ts | 115 +- .../factories/DappMaintenance__factory.ts | 426 +- .../types/factories/ERC20__factory.ts | 690 +-- .../types/factories/ExchangeRates__factory.ts | 2192 +++---- .../types/factories/Exchanger__factory.ts | 1563 ++--- .../factories/FuturesMarketData__factory.ts | 1850 +++--- .../FuturesMarketSettings__factory.ts | 1759 +++--- .../types/factories/FuturesMarket__factory.ts | 2239 ++++---- .../factories/KwentaArrakisVault__factory.ts | 2278 ++++---- .../KwentaStakingRewards__factory.ts | 1422 ++--- .../MultipleMerkleDistributorOp__factory.ts | 606 +- ...ltipleMerkleDistributorPerpsV2__factory.ts | 644 +-- .../MultipleMerkleDistributor__factory.ts | 655 +-- .../factories/PerpsV2MarketData__factory.ts | 2318 ++++---- .../PerpsV2MarketSettings__factory.ts | 3305 +++++------ .../factories/PerpsV2MarketViews__factory.ts | 1590 +++--- .../types/factories/PerpsV2Market__factory.ts | 2851 ++++----- .../factories/PerpsV3MarketProxy__factory.ts | 3389 +++++++++++ .../types/factories/Pyth__factory.ts | 960 ++-- .../factories/ReverseRecords__factory.ts | 88 +- .../types/factories/RewardEscrow__factory.ts | 1345 ++--- .../SmartMarginAccountFactory__factory.ts | 573 +- .../factories/SmartMarginAccount__factory.ts | 1226 ++-- .../factories/StakingRewards__factory.ts | 1328 ++--- .../factories/SupplySchedule__factory.ts | 1302 ++--- .../types/factories/SynthRedeemer__factory.ts | 625 +- .../types/factories/SynthSwap__factory.ts | 653 +-- .../types/factories/SynthUtil__factory.ts | 283 +- .../types/factories/Synth__factory.ts | 1608 +++--- .../types/factories/Synthetix__factory.ts | 3803 ++++++------ .../factories/SystemSettings__factory.ts | 4268 +++++++------- .../types/factories/SystemStatus__factory.ts | 2569 ++++----- .../factories/VKwentaRedeemer__factory.ts | 164 +- .../factories/VeKwentaRedeemer__factory.ts | 300 +- .../src/contracts/types/factories/index.ts | 67 +- packages/sdk/src/contracts/types/index.ts | 136 +- packages/sdk/src/index.ts | 3 + packages/sdk/src/queries/perpsV3.ts | 63 + packages/sdk/src/services/perpsV3.ts | 599 ++ packages/sdk/src/types/futures.ts | 27 +- packages/sdk/src/utils/futures.ts | 8 + packages/sdk/src/utils/subgraph.ts | 2 +- 91 files changed, 61118 insertions(+), 45586 deletions(-) create mode 100644 packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx create mode 100644 packages/app/src/state/perpsV3/actions.ts create mode 100644 packages/app/src/state/perpsV3/reducer.ts create mode 100644 packages/app/src/state/perpsV3/selectors.ts create mode 100644 packages/app/src/state/perpsV3/types.ts create mode 100644 packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json create mode 100644 packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts create mode 100644 packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts create mode 100644 packages/sdk/src/queries/perpsV3.ts create mode 100644 packages/sdk/src/services/perpsV3.ts diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx new file mode 100644 index 0000000000..9d716ab11e --- /dev/null +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -0,0 +1,194 @@ +import { useCallback } from 'react' +import { useTranslation } from 'react-i18next' +import styled from 'styled-components' + +import CompleteCheck from 'assets/svg/futures/onboard-complete-check.svg' +import BaseModal from 'components/BaseModal' +import Button from 'components/Button' +import ErrorView from 'components/ErrorView' +import Loader from 'components/Loader' +import ProgressSteps from 'components/ProgressSteps' +import { setOpenModal } from 'state/app/reducer' +import { approveCrossMargin, createCrossMarginAccount } from 'state/futures/actions' +import { + selectCMAccountQueryStatus, + selectSmartMarginDepositApproved, + selectFuturesSupportedNetwork, + selectSubmittingFuturesTx, + selectTradePreview, +} from 'state/futures/selectors' +import { useAppDispatch, useAppSelector } from 'state/hooks' +import { FetchStatus } from 'state/types' +import CrossMarginFAQ from './CrossMarginOnboard/CrossMarginFAQ' +import { selectPerpsV3Account } from 'state/perpsV3/selectors' + +type Props = { + isOpen: boolean +} + +export default function CreatePerpsV3AccountModal({ isOpen }: Props) { + const { t } = useTranslation() + const dispatch = useAppDispatch() + const crossMarginAvailable = useAppSelector(selectFuturesSupportedNetwork) + const perpsV3Account = useAppSelector(selectPerpsV3Account) + const queryStatus = useAppSelector(selectCMAccountQueryStatus) + const depositApproved = useAppSelector(selectSmartMarginDepositApproved) + const txProcessing = useAppSelector(selectSubmittingFuturesTx) + const preview = useAppSelector(selectTradePreview) + + const onClose = () => dispatch(setOpenModal(null)) + + const onComplete = () => { + if (preview) { + dispatch(setOpenModal('futures_confirm_smart_margin_trade')) + } else { + onClose() + } + } + + const createAccount = useCallback(async () => { + dispatch(createCrossMarginAccount()) + }, [dispatch]) + + const onClickApprove = useCallback(async () => { + dispatch(approveCrossMargin()) + }, [dispatch]) + + const renderProgress = (step: number, complete?: boolean) => { + return ( + + + + ) + } + + const renderContent = () => { + if (!crossMarginAvailable) { + return + } + if (!perpsV3Account && queryStatus.status === FetchStatus.Loading) { + return ( + + + + ) + } + + if (depositApproved) { + return ( + <> + {t('futures.modals.onboard.step3-complete')} + + + + {renderProgress(3, true)} + + Done + + + ) + } + + if (perpsV3Account && !depositApproved) { + return ( + <> + {t('futures.modals.onboard.step2-intro')} +
+ FAQ: + +
+ {renderProgress(2)} + + {txProcessing ? : 'Approve'} + + + ) + } + + // TODO: Replace with bridge option + + // if (crossMarginAccount) { + // return ( + // <> + // {t('futures.modals.onboard.step3-intro')} + // + // + // {renderProgress(3)} + // {isDepositDisabled && ( + // + // {t('futures.market.trade.margin.modal.deposit.disclaimer')} + // + // )} + // + // {txProcessing ? : 'Deposit sUSD'} + // + // + // ); + // } + + return ( + <> + {t('futures.modals.onboard.step1-intro')} +
+ FAQ: + +
+ {renderProgress(1)} + + {txProcessing ? : 'Create Account'} + + + ) + } + + return ( + + {renderContent()} + + ) +} + +const StyledBaseModal = styled(BaseModal)` + color: ${(props) => props.theme.colors.selectedTheme.gray}; + [data-reach-dialog-content] { + width: 400px; + } +` + +const StyledButton = styled(Button)` + margin-top: 24px; + height: 50px; + width: 100%; +` + +const FAQHeader = styled.div` + padding-bottom: 4px; + border-bottom: ${(props) => props.theme.colors.selectedTheme.border}; + margin-bottom: 5px; +` + +const ProgressContainer = styled.div` + margin-top: 30px; +` + +const Intro = styled.div` + margin-bottom: 30px; +` + +const Complete = styled.div` + padding: 40px; + text-align: center; +` + +const LoaderContainer = styled.div` + height: 120px; +` diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index 36555bed8b..0f881e4624 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -147,6 +147,8 @@ import { PreviewAction, TradePreviewParams, } from './types' +import { fetchV3Markets } from 'state/perpsV3/actions' + export const fetchMarkets = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, void, @@ -285,9 +287,9 @@ export const refetchPosition = createAsyncThunk< ) if (result.data[0]) { - const serialized = serializeWeiObject( - result.data[0] as FuturesPosition - ) as FuturesPosition + const serialized = serializeWeiObject(result.data[0] as FuturesPosition) as FuturesPosition< + string + > return { position: serialized, wallet: account, futuresType: type, networkId } } return null @@ -429,6 +431,7 @@ export const fetchSharedFuturesData = createAsyncThunk( 'futures/fetchSharedFuturesData', async (_, { dispatch }) => { await dispatch(fetchMarkets()) + await dispatch(fetchV3Markets()) dispatch(fetchDailyVolumes()) } ) @@ -638,207 +641,207 @@ export const clearTradeInputs = createAsyncThunk( } ) -export const editCrossMarginTradeMarginDelta = - (marginDelta: string): AppThunk => - (dispatch, getState) => { - const orderPrice = selectMarketIndexPrice(getState()) - const marketInfo = selectMarketInfo(getState()) - const { susdSize, nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) - - if (!marketInfo) throw new Error('No market selected') - - if (!marginDelta || Number(marginDelta) === 0) { - dispatch(setCrossMarginMarginDelta(marginDelta)) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) - return - } +export const editCrossMarginTradeMarginDelta = (marginDelta: string): AppThunk => ( + dispatch, + getState +) => { + const orderPrice = selectMarketIndexPrice(getState()) + const marketInfo = selectMarketInfo(getState()) + const { susdSize, nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) - const marginDelatWei = wei(marginDelta) - const leverage = wei(susdSize).div(marginDelatWei.abs()) + if (!marketInfo) throw new Error('No market selected') + if (!marginDelta || Number(marginDelta) === 0) { dispatch(setCrossMarginMarginDelta(marginDelta)) - if (!leverage.eq(0)) { - dispatch(setLeverageInput(leverage.toString(2))) - } + dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) + return + } - dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, - orderPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: nativeSizeDelta, - action: 'trade', - }) - ) + const marginDelatWei = wei(marginDelta) + const leverage = wei(susdSize).div(marginDelatWei.abs()) + + dispatch(setCrossMarginMarginDelta(marginDelta)) + if (!leverage.eq(0)) { + dispatch(setLeverageInput(leverage.toString(2))) } -export const editCrossMarginTradeSize = - (size: string, currencyType: 'usd' | 'native'): AppThunk => - (dispatch, getState) => { - const indexPrice = selectMarketIndexPrice(getState()) - const marginDelta = selectCrossMarginMarginDelta(getState()) - const orderPrice = selectCrossMarginOrderPrice(getState()) - const isConditionalOrder = selectIsConditionalOrder(getState()) - const tradeSide = selectLeverageSide(getState()) - const marketInfo = selectMarketInfo(getState()) - const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice + dispatch( + stageCrossMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.market }, + orderPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: nativeSizeDelta, + action: 'trade', + }) + ) +} - if (!marketInfo) throw new Error('No market selected') +export const editCrossMarginTradeSize = ( + size: string, + currencyType: 'usd' | 'native' +): AppThunk => (dispatch, getState) => { + const indexPrice = selectMarketIndexPrice(getState()) + const marginDelta = selectCrossMarginMarginDelta(getState()) + const orderPrice = selectCrossMarginOrderPrice(getState()) + const isConditionalOrder = selectIsConditionalOrder(getState()) + const tradeSide = selectLeverageSide(getState()) + const marketInfo = selectMarketInfo(getState()) + const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice - if (size === '' || price.eq(0)) { - dispatch(setCrossMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) - dispatch(setLeverageInput('')) - return - } + if (!marketInfo) throw new Error('No market selected') - const nativeSize = - currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) - const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size - const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' - const sizeDeltaWei = - tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() - dispatch( - setCrossMarginTradeInputs({ - susdSize: usdSize, - nativeSize: nativeSize, - }) - ) - dispatch(setLeverageInput(leverage.toString(2))) - dispatch( - stageCrossMarginTradePreview({ - market: { - key: marketInfo.marketKey, - address: marketInfo.market, - }, - orderPrice: price, - marginDelta: wei(marginDelta), - sizeDelta: sizeDeltaWei, - action: 'trade', - }) - ) + if (size === '' || price.eq(0)) { + dispatch(setCrossMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) + dispatch(setLeverageInput('')) + return } -export const editCrossMarginPositionSize = - (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => - (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) + const nativeSize = currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) + const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size + const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' + const sizeDeltaWei = + tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() + dispatch( + setCrossMarginTradeInputs({ + susdSize: usdSize, + nativeSize: nativeSize, + }) + ) + dispatch(setLeverageInput(leverage.toString(2))) + dispatch( + stageCrossMarginTradePreview({ + market: { + key: marketInfo.marketKey, + address: marketInfo.market, + }, + orderPrice: price, + marginDelta: wei(marginDelta), + sizeDelta: sizeDeltaWei, + action: 'trade', + }) + ) +} + +export const editCrossMarginPositionSize = ( + marketKey: FuturesMarketKey, + nativeSizeDelta: string +): AppThunk => (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) + dispatch( + setCrossMarginEditPositionInputs({ + marginDelta: '', + nativeSizeDelta: nativeSizeDelta, + }) + ) + try { + const market = getMarketDetailsByKey(getState, marketKey) dispatch( - setCrossMarginEditPositionInputs({ - marginDelta: '', - nativeSizeDelta: nativeSizeDelta, + stageCrossMarginTradePreview({ + orderPrice: marketPrice, + market, + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', }) ) - try { - const market = getMarketDetailsByKey(getState, marketKey) - dispatch( - stageCrossMarginTradePreview({ - orderPrice: marketPrice, - market, - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) - } + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) } +} -export const editClosePositionSizeDelta = - (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => - (dispatch, getState) => { - dispatch(setClosePositionSizeDelta(nativeSizeDelta)) +export const editClosePositionSizeDelta = ( + marketKey: FuturesMarketKey, + nativeSizeDelta: string +): AppThunk => (dispatch, getState) => { + dispatch(setClosePositionSizeDelta(nativeSizeDelta)) - if (nativeSizeDelta === '' || !nativeSizeDelta) { - dispatch(setIsolatedTradePreview({ preview: null, type: 'close' })) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'close' })) - return - } - const { price } = selectClosePositionOrderInputs(getState()) - const { marketPrice } = selectEditPositionModalInfo(getState()) - const accountType = selectFuturesType(getState()) + if (nativeSizeDelta === '' || !nativeSizeDelta) { + dispatch(setIsolatedTradePreview({ preview: null, type: 'close' })) + dispatch(setCrossMarginTradePreview({ preview: null, type: 'close' })) + return + } + const { price } = selectClosePositionOrderInputs(getState()) + const { marketPrice } = selectEditPositionModalInfo(getState()) + const accountType = selectFuturesType(getState()) - try { - const market = getMarketDetailsByKey(getState, marketKey) - const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) - const odrderPrice = accountType === 'isolated_margin' ? marketPrice : smartMarginPrice - const previewParams: TradePreviewParams = { - market, - sizeDelta: wei(nativeSizeDelta), - orderPrice: odrderPrice, - marginDelta: ZERO_WEI, - action: 'close', - } - if (accountType === 'isolated_margin') { - dispatch(stageIsolatedMarginTradePreview(previewParams)) - } else { - dispatch(stageCrossMarginTradePreview(previewParams)) - } - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) + try { + const market = getMarketDetailsByKey(getState, marketKey) + const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) + const odrderPrice = accountType === 'isolated_margin' ? marketPrice : smartMarginPrice + const previewParams: TradePreviewParams = { + market, + sizeDelta: wei(nativeSizeDelta), + orderPrice: odrderPrice, + marginDelta: ZERO_WEI, + action: 'close', + } + if (accountType === 'isolated_margin') { + dispatch(stageIsolatedMarginTradePreview(previewParams)) + } else { + dispatch(stageCrossMarginTradePreview(previewParams)) } + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) } +} -export const editClosePositionPrice = - (marketKey: FuturesMarketKey, price: string): AppThunk => - (dispatch, getState) => { - const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) - const marketPrice = selectMarketIndexPrice(getState()) - const { position } = selectEditPositionModalInfo(getState()) - const closeTradeSide = - position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT - const invalidLabel = orderPriceInvalidLabel( - price || '0', - closeTradeSide, - marketPrice, - orderType - ) +export const editClosePositionPrice = (marketKey: FuturesMarketKey, price: string): AppThunk => ( + dispatch, + getState +) => { + const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) + const marketPrice = selectMarketIndexPrice(getState()) + const { position } = selectEditPositionModalInfo(getState()) + const closeTradeSide = + position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT + const invalidLabel = orderPriceInvalidLabel(price || '0', closeTradeSide, marketPrice, orderType) - dispatch(setClosePositionPrice({ value: price, invalidLabel })) + dispatch(setClosePositionPrice({ value: price, invalidLabel })) - try { - const marketInfo = getMarketDetailsByKey(getState, marketKey) - dispatch( - stageCrossMarginTradePreview({ - market: marketInfo, - orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) - } + try { + const marketInfo = getMarketDetailsByKey(getState, marketKey) + dispatch( + stageCrossMarginTradePreview({ + market: marketInfo, + orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) } +} + +export const editCrossMarginPositionMargin = ( + marketKey: FuturesMarketKey, + marginDelta: string +): AppThunk => (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) + dispatch( + setCrossMarginEditPositionInputs({ + marginDelta: marginDelta, + nativeSizeDelta: '', + }) + ) + try { + const market = getMarketDetailsByKey(getState, marketKey) -export const editCrossMarginPositionMargin = - (marketKey: FuturesMarketKey, marginDelta: string): AppThunk => - (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) dispatch( - setCrossMarginEditPositionInputs({ - marginDelta: marginDelta, - nativeSizeDelta: '', + stageCrossMarginTradePreview({ + market, + orderPrice: marketPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: ZERO_WEI, + action: 'edit', }) ) - try { - const market = getMarketDetailsByKey(getState, marketKey) - - dispatch( - stageCrossMarginTradePreview({ - market, - orderPrice: marketPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: ZERO_WEI, - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) - } + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) } +} export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { const orderPrice = selectCrossMarginOrderPrice(getState()) @@ -881,82 +884,79 @@ const stageIsolatedMarginTradePreview = createAsyncThunk - (dispatch, getState) => { - const marketPrice = selectMarketIndexPrice(getState()) - const position = selectPosition(getState()) - const marketKey = selectMarketKey(getState()) - const tradeSide = selectLeverageSide(getState()) - - if ( - size === '' || - marketPrice.eq(0) || - !position?.remainingMargin || - position?.remainingMargin.eq(0) - ) { - dispatch(setIsolatedMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setIsolatedTradePreview({ preview: null, type: 'edit' })) - dispatch(setLeverageInput('')) - return - } +export const editIsolatedMarginSize = (size: string, currencyType: 'usd' | 'native'): AppThunk => ( + dispatch, + getState +) => { + const marketPrice = selectMarketIndexPrice(getState()) + const position = selectPosition(getState()) + const marketKey = selectMarketKey(getState()) + const tradeSide = selectLeverageSide(getState()) + + if ( + size === '' || + marketPrice.eq(0) || + !position?.remainingMargin || + position?.remainingMargin.eq(0) + ) { + dispatch(setIsolatedMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setIsolatedTradePreview({ preview: null, type: 'edit' })) + dispatch(setLeverageInput('')) + return + } - const market = getMarketDetailsByKey(getState, marketKey) + const market = getMarketDetailsByKey(getState, marketKey) - const nativeSize = currencyType === 'native' ? size : wei(size).div(marketPrice).toString() - const usdSize = currencyType === 'native' ? stripZeros(marketPrice.mul(size).toString()) : size - const leverage = - Number(usdSize) > 0 && position?.remainingMargin.gt(0) - ? wei(usdSize).div(position?.remainingMargin).toString(2) - : '' - const nativeSizeDelta = - tradeSide === PositionSide.LONG ? wei(nativeSize) : wei(nativeSize).neg() + const nativeSize = currencyType === 'native' ? size : wei(size).div(marketPrice).toString() + const usdSize = currencyType === 'native' ? stripZeros(marketPrice.mul(size).toString()) : size + const leverage = + Number(usdSize) > 0 && position?.remainingMargin.gt(0) + ? wei(usdSize).div(position?.remainingMargin).toString(2) + : '' + const nativeSizeDelta = tradeSide === PositionSide.LONG ? wei(nativeSize) : wei(nativeSize).neg() - dispatch(setLeverageInput(leverage)) - dispatch( - setIsolatedMarginTradeInputs({ - susdSize: usdSize, - nativeSize: nativeSize, - }) - ) - dispatch(calculateIsolatedMarginFees()) - dispatch(incrementIsolatedPreviewCount()) - dispatch( - stageIsolatedMarginTradePreview({ - market, - sizeDelta: nativeSizeDelta, - orderPrice: marketPrice, - marginDelta: ZERO_WEI, - action: 'trade', - }) - ) - } + dispatch(setLeverageInput(leverage)) + dispatch( + setIsolatedMarginTradeInputs({ + susdSize: usdSize, + nativeSize: nativeSize, + }) + ) + dispatch(calculateIsolatedMarginFees()) + dispatch(incrementIsolatedPreviewCount()) + dispatch( + stageIsolatedMarginTradePreview({ + market, + sizeDelta: nativeSizeDelta, + orderPrice: marketPrice, + marginDelta: ZERO_WEI, + action: 'trade', + }) + ) +} -export const editTradeSizeInput = - (size: string, currencyType: 'usd' | 'native'): AppThunk => - (dispatch, getState) => { - const type = selectFuturesType(getState()) - if (type === 'cross_margin') { - dispatch(editCrossMarginTradeSize(size, currencyType)) - } else { - dispatch(editIsolatedMarginSize(size, currencyType)) - } +export const editTradeSizeInput = (size: string, currencyType: 'usd' | 'native'): AppThunk => ( + dispatch, + getState +) => { + const type = selectFuturesType(getState()) + if (type === 'cross_margin') { + dispatch(editCrossMarginTradeSize(size, currencyType)) + } else { + dispatch(editIsolatedMarginSize(size, currencyType)) } +} -export const changeLeverageSide = - (side: PositionSide): AppThunk => - (dispatch, getState) => { - const { nativeSizeString } = selectTradeSizeInputs(getState()) - dispatch(setLeverageSide(side)) - dispatch(editTradeSizeInput(nativeSizeString, 'native')) - } +export const changeLeverageSide = (side: PositionSide): AppThunk => (dispatch, getState) => { + const { nativeSizeString } = selectTradeSizeInputs(getState()) + dispatch(setLeverageSide(side)) + dispatch(editTradeSizeInput(nativeSizeString, 'native')) +} -export const setCrossMarginLeverage = - (leverage: string): AppThunk => - (dispatch, getState) => { - const marketKey = selectMarketKey(getState()) - dispatch(setCrossMarginLeverageForAsset({ marketKey: marketKey, leverage: leverage })) - } +export const setCrossMarginLeverage = (leverage: string): AppThunk => (dispatch, getState) => { + const marketKey = selectMarketKey(getState()) + dispatch(setCrossMarginLeverageForAsset({ marketKey: marketKey, leverage: leverage })) +} export const debouncedPrepareCrossMarginTradePreview = debounce( (dispatch, inputs: DebouncedPreviewParams) => { @@ -972,21 +972,19 @@ export const debouncedPrepareIsolatedMarginTradePreview = debounce( 500 ) -export const editTradeOrderPrice = - (price: string): AppThunk => - (dispatch, getState) => { - const rate = selectSkewAdjustedPrice(getState()) - const orderType = selectOrderType(getState()) - const side = selectLeverageSide(getState()) - const inputs = selectCrossMarginTradeInputs(getState()) - dispatch(setCrossMarginOrderPrice(price)) - const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) - dispatch(setCrossMarginOrderPriceInvalidLabel(invalidLabel)) - if (!invalidLabel && price && inputs.susdSize) { - // Recalc the trade - dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) - } +export const editTradeOrderPrice = (price: string): AppThunk => (dispatch, getState) => { + const rate = selectSkewAdjustedPrice(getState()) + const orderType = selectOrderType(getState()) + const side = selectLeverageSide(getState()) + const inputs = selectCrossMarginTradeInputs(getState()) + dispatch(setCrossMarginOrderPrice(price)) + const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) + dispatch(setCrossMarginOrderPriceInvalidLabel(invalidLabel)) + if (!invalidLabel && price && inputs.susdSize) { + // Recalc the trade + dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) } +} export const fetchFuturesPositionHistory = createAsyncThunk< | { @@ -1088,28 +1086,29 @@ export const fetchAllTradesForAccount = createAsyncThunk< } }) -export const calculateCrossMarginFees = - (params: TradePreviewParams): AppThunk => - (dispatch, getState) => { - const markets = selectMarkets(getState()) - const market = markets.find((m) => m.marketKey === params.market.key) - if (!market) throw new Error('Missing market info to compute fee') - const keeperBalance = selectKeeperEthBalance(getState()) - const { delayedOrderFee } = computeDelayedOrderFee( - market, - params.sizeDelta.mul(params.orderPrice?.abs()) - ) +export const calculateCrossMarginFees = (params: TradePreviewParams): AppThunk => ( + dispatch, + getState +) => { + const markets = selectMarkets(getState()) + const market = markets.find((m) => m.marketKey === params.market.key) + if (!market) throw new Error('Missing market info to compute fee') + const keeperBalance = selectKeeperEthBalance(getState()) + const { delayedOrderFee } = computeDelayedOrderFee( + market, + params.sizeDelta.mul(params.orderPrice?.abs()) + ) - const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) - ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) - : wei(0) + const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) + ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) + : wei(0) - const fees = { - delayedOrderFee: delayedOrderFee.toString(), - keeperEthDeposit: requiredDeposit.toString(), - } - dispatch(setCrossMarginFees(fees)) + const fees = { + delayedOrderFee: delayedOrderFee.toString(), + keeperEthDeposit: requiredDeposit.toString(), } + dispatch(setCrossMarginFees(fees)) +} export const calculateKeeperDeposit = (): AppThunk => (dispatch, getState) => { const keeperBalance = selectKeeperEthBalance(getState()) diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index 1c438ac83f..fbb6785ae8 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -20,6 +20,8 @@ import { selectFuturesType, selectMarkets, } from './selectors' +import { fetchPerpsV3Account } from 'state/perpsV3/actions' +import { selectPerpsV3SupportedNetwork } from 'state/perpsV3/selectors' // TODO: Optimise polling and queries @@ -31,10 +33,16 @@ export const usePollMarketFuturesData = () => { const selectedAccountType = useAppSelector(selectFuturesType) const networkSupportsCrossMargin = useAppSelector(selectFuturesSupportedNetwork) const networkSupportsFutures = useAppSelector(selectFuturesSupportedNetwork) + const networkSupportsPerpsV3 = useAppSelector(selectPerpsV3SupportedNetwork) useFetchAction(fetchCrossMarginAccount, { dependencies: [networkId, wallet], - disabled: !wallet || !networkSupportsCrossMargin || selectedAccountType === 'isolated_margin', + disabled: !wallet || !networkSupportsCrossMargin || selectedAccountType !== 'cross_margin', + }) + + useFetchAction(fetchPerpsV3Account, { + dependencies: [networkId, wallet], + disabled: !wallet || !networkSupportsPerpsV3 || selectedAccountType !== 'isolated_margin', // TODO: Change to perps v3 }) useFetchAction(fetchStakingData, { dependencies: [networkId, wallet] }) @@ -47,12 +55,12 @@ export const usePollMarketFuturesData = () => { usePollAction('fetchIsolatedMarginAccountData', fetchIsolatedMarginAccountData, { intervalTime: 30000, dependencies: [wallet, markets.length], - disabled: !wallet || !markets.length || selectedAccountType === 'cross_margin', + disabled: !wallet || !markets.length || selectedAccountType !== 'isolated_margin', }) usePollAction('fetchCrossMarginAccountData', fetchCrossMarginAccountData, { intervalTime: 30000, dependencies: [markets.length, crossMarginAddress], - disabled: !markets.length || !crossMarginAddress || selectedAccountType === 'isolated_margin', + disabled: !markets.length || !crossMarginAddress || selectedAccountType !== 'cross_margin', }) usePollAction('fetchFuturesPositionHistory', fetchFuturesPositionHistory, { intervalTime: 15000, @@ -62,13 +70,13 @@ export const usePollMarketFuturesData = () => { usePollAction('fetchIsolatedOpenOrders', fetchIsolatedOpenOrders, { dependencies: [networkId, wallet, markets.length, selectedAccountType], intervalTime: 10000, - disabled: !wallet || selectedAccountType === 'cross_margin', + disabled: !wallet || selectedAccountType !== 'isolated_margin', }) usePollAction('fetchCrossMarginOpenOrders', fetchCrossMarginOpenOrders, { dependencies: [networkId, wallet, markets.length, crossMarginAddress], intervalTime: 10000, - disabled: !wallet || selectedAccountType === 'isolated_margin', + disabled: !wallet || selectedAccountType !== 'cross_margin', }) usePollAction('fetchAllTradesForAccount', fetchAllTradesForAccount, { diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index e353ed2f6f..c5676faf77 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -54,6 +54,7 @@ import { SmartPerpsPortfolio, IsolatedPerpsPortfolio, } from './types' +import { selectV3Markets } from 'state/perpsV3/selectors' export const selectFuturesType = (state: RootState) => state.futures.selectedType @@ -144,10 +145,14 @@ export const selectMarketAsset = createSelector( ) export const selectMarkets = createSelector( + selectFuturesType, selectNetwork, + selectV3Markets, (state: RootState) => state.futures, - (network, futures) => - futures.markets[network] ? unserializeMarkets(futures.markets[network]) : [] + (futuresType, network, v3Markets, futures) => { + if (futuresType === 'perps_v3') return v3Markets + return futures.markets[network] ? unserializeMarkets(futures.markets[network]) : [] + } ) export const selectMarketVolumes = createSelector( diff --git a/packages/app/src/state/perpsV3/actions.ts b/packages/app/src/state/perpsV3/actions.ts new file mode 100644 index 0000000000..630fecef98 --- /dev/null +++ b/packages/app/src/state/perpsV3/actions.ts @@ -0,0 +1,174 @@ +import { + FuturesAccountType, + FuturesMarket, + FuturesPositionHistory, + NetworkId, + TransactionStatus, +} from '@kwenta/sdk/types' +import { createAsyncThunk } from '@reduxjs/toolkit' + +import { notifyError } from 'components/ErrorNotifier' +import { selectFuturesAccount, selectFuturesType } from 'state/futures/selectors' +import { ThunkConfig } from 'state/types' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { + perpsAccountIdFromAddress, + serializeMarkets, + serializePositionHistory, +} from 'utils/futures' +import logError from 'utils/logError' + +import { selectPerpsV3SupportedNetwork } from './selectors' +import { setPerpsV3Account } from './reducer' +import { + handleTransactionError, + setTransaction, + updateTransactionHash, + updateTransactionStatus, +} from 'state/app/reducer' +import { AppDispatch } from 'state/store' +import { ethers } from 'ethers' + +export const fetchV3Markets = createAsyncThunk< + { markets: FuturesMarket[]; networkId: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchV3Markets', async (_, { getState, extra: { sdk } }) => { + const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) + const networkId = selectNetwork(getState()) + if (!supportedNetwork) return + try { + const v3Markets = await sdk.perpsV3.getMarkets() + + return { markets: serializeMarkets(v3Markets), networkId } + } catch (err) { + logError(err) + notifyError('Failed to fetch markets', err) + throw err + } +}) + +export const fetchPerpsV3Account = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchPerpsV3Account', async (_, { getState, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + + const accounts = getState().futures.crossMargin.accounts + + // Already have an account fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) return + + const id = perpsAccountIdFromAddress(wallet) + + try { + const owner = await sdk.perpsV3.getAccountOwner(id) + console.log('owner', owner) + if (owner) { + // Account already created + if (owner.toLowerCase() !== wallet.toLowerCase()) { + const errMessage = 'Account id registered with a different wallet' + notifyError(errMessage) + rejectWithValue(errMessage) + } + return { account: id, wallet, network } + } + return undefined + } catch (err) { + notifyError('Failed to fetch smart margin account', err) + rejectWithValue(err.message) + } +}) + +export const fetchPerpsV3PositionHistory = createAsyncThunk< + | { + accountType: FuturesAccountType + history: FuturesPositionHistory[] + account: string + wallet: string + networkId: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchPerpsV3PositionHistory', async (_, { getState, extra: { sdk } }) => { + try { + const account = selectFuturesAccount(getState()) + const accountType = selectFuturesType(getState()) + const networkId = selectNetwork(getState()) + const wallet = selectWallet(getState()) + const futuresSupported = selectPerpsV3SupportedNetwork(getState()) + if (!wallet || !account || !futuresSupported) return + const history = await sdk.futures.getPositionHistory(account) + return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } + } catch (err) { + notifyError('Failed to fetch perps v3 position history', err) + throw err + } +}) + +export const createPerpsV3Account = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>( + 'futures/createPerpsV3Account', + async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + const accounts = getState().perpsV3.accounts + + // Already have an accoutn fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) { + notifyError('There is already an account associated with this wallet') + rejectWithValue('Account already created') + } + + const id = perpsAccountIdFromAddress(wallet) + + try { + // Check if this wallet has already registered an account from Kwenta + // as we want to maintain one to one eoa account mapping for now + + const owner = await sdk.perpsV3.getAccountOwner(id) + if (owner && owner.toLowerCase() !== wallet.toLowerCase()) { + notifyError('Another wallet is already registered with account id ' + id) + rejectWithValue('Account id already registered') + return + } else if (owner) { + dispatch(setPerpsV3Account({ account: id.toString(), wallet: wallet, network })) + return + } + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'create_cross_margin_account', + hash: null, + }) + ) + const tx = await sdk.perpsV3.createPerpsV3Account(id) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchPe()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + } + } +) + +// TODO: Move this to shared action under app + +const monitorAndAwaitTransaction = async ( + dispatch: AppDispatch, + tx: ethers.providers.TransactionResponse +) => { + dispatch(updateTransactionHash(tx.hash)) + await tx.wait() + dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) +} diff --git a/packages/app/src/state/perpsV3/reducer.ts b/packages/app/src/state/perpsV3/reducer.ts new file mode 100644 index 0000000000..df5a987cdb --- /dev/null +++ b/packages/app/src/state/perpsV3/reducer.ts @@ -0,0 +1,596 @@ +import { Period } from '@kwenta/sdk/constants' +import { + NetworkId, + FuturesAccountType, + FuturesMarketAsset, + FuturesMarketKey, + FuturesPotentialTradeDetails, + PositionSide, + FuturesTrade, +} from '@kwenta/sdk/types' +import { MarketKeyByAsset } from '@kwenta/sdk/utils' +import { createSlice, PayloadAction } from '@reduxjs/toolkit' + +import { DEFAULT_FUTURES_MARGIN_TYPE } from 'constants/defaults' +import { ORDER_PREVIEW_ERRORS } from 'queries/futures/constants' +import { + DEFAULT_MAP_BY_NETWORK, + DEFAULT_QUERY_STATUS, + LOADING_STATUS, + SUCCESS_STATUS, + ZERO_STATE_CM_ACCOUNT, + ZERO_STATE_TRADE_INPUTS, +} from 'state/constants' +import { FetchStatus } from 'state/types' + +import { + fetchCrossMarginPositions, + fetchIsolatedMarginPositions, + fetchDailyVolumes, + refetchPosition, + fetchIsolatedMarginTradePreview, + fetchCrossMarginTradePreview, + fetchCrossMarginAccount, + fetchFuturesPositionHistory, + fetchPositionHistoryForTrader, + fetchTradesForSelectedMarket, + fetchAllTradesForAccount, + fetchIsolatedOpenOrders, + fetchMarginTransfers, + fetchCombinedMarginTransfers, + fetchFundingRatesHistory, +} from '../futures/actions' +import { + EditPositionInputs, + InputCurrencyDenomination, + PerpsV3AccountData, + TradeSizeInputs, + PerspV3State, + PreviewAction, +} from './types' +import { fetchPerpsV3PositionHistory, fetchV3Markets } from './actions' + +export const FUTURES_INITIAL_STATE: PerspV3State = { + selectedType: DEFAULT_FUTURES_MARGIN_TYPE, + confirmationModalOpen: false, + markets: { + 420: [], + 10: [], + }, + dailyMarketVolumes: {}, + accounts: DEFAULT_MAP_BY_NETWORK, + selectedMarketAsset: FuturesMarketAsset.sETH, + selectedMarketKey: FuturesMarketKey.sETHPERP, + leverageSide: PositionSide.LONG, + orderType: 'market', + previews: { + trade: null, + close: null, + edit: null, + }, + closePositionOrderInputs: { + nativeSizeDelta: '', + }, + previewDebounceCount: 0, + tradeInputs: ZERO_STATE_TRADE_INPUTS, + editPositionInputs: { + nativeSizeDelta: '', + marginDelta: '', + }, + tradeFee: '0', + leverageInput: '0', + fundingRates: [], + selectedInputDenomination: 'usd', + selectedInputHours: 1, + selectedChart: 'price', + preferences: { + showHistory: true, + }, + dashboard: { + selectedPortfolioTimeframe: Period.ONE_WEEK, + }, + leaderboard: { + selectedTrader: undefined, + selectedTraderPositionHistory: DEFAULT_MAP_BY_NETWORK, + }, + queryStatuses: { + markets: DEFAULT_QUERY_STATUS, + dailyVolumes: DEFAULT_QUERY_STATUS, + perpsV3Positions: DEFAULT_QUERY_STATUS, + perpsV3PositionHistory: DEFAULT_QUERY_STATUS, + perpsV3Account: DEFAULT_QUERY_STATUS, + openOrders: DEFAULT_QUERY_STATUS, + perpsV3TradePreview: DEFAULT_QUERY_STATUS, + positionHistory: DEFAULT_QUERY_STATUS, + selectedTraderPositionHistory: DEFAULT_QUERY_STATUS, + trades: DEFAULT_QUERY_STATUS, + marginTransfers: DEFAULT_QUERY_STATUS, + historicalFundingRates: DEFAULT_QUERY_STATUS, + }, + tradePanelDrawerOpen: false, + historicalFundingRates: {}, +} + +const futuresSlice = createSlice({ + name: 'futures', + initialState: FUTURES_INITIAL_STATE, + reducers: { + setMarketAsset: (state, action) => { + state.selectedMarketAsset = action.payload + state.selectedMarketKey = MarketKeyByAsset[action.payload as FuturesMarketAsset] + state.tradeInputs = ZERO_STATE_TRADE_INPUTS + state.selectedMarketAsset = action.payload + }, + setClosePositionSizeDelta: (state, action: PayloadAction) => { + state.closePositionOrderInputs.nativeSizeDelta = action.payload + }, + setLeverageSide: (state, action) => { + state.leverageSide = action.payload + }, + setTradeInputs: (state, action: PayloadAction>) => { + state.tradeInputs = action.payload + }, + setEditPositionInputs: (state, action: PayloadAction>) => { + state.editPositionInputs = action.payload + }, + setSelectedInputDenomination: (state, action: PayloadAction) => { + state.selectedInputDenomination = action.payload + }, + setSelectedInputFundingRateHour: (state, action: PayloadAction) => { + state.selectedInputHours = action.payload + }, + setTradeFee: (state, action: PayloadAction) => { + state.tradeFee = action.payload + }, + setLeverageInput: (state, action: PayloadAction) => { + state.leverageInput = action.payload + }, + handlePreviewError: ( + futuresState, + { + payload, + }: PayloadAction<{ + error: string + previewType: PreviewAction + }> + ) => { + const message = Object.values(ORDER_PREVIEW_ERRORS).includes(payload.error) + ? payload.error + : 'Failed to get trade preview' + futuresState.queryStatuses.perpsV3TradePreview = { + status: FetchStatus.Error, + error: message, + } + futuresState.previews[payload.previewType] = null + }, + + setPerpsV3Account: ( + state, + action: PayloadAction<{ wallet: string; account: string; network: NetworkId }> + ) => { + const { account, wallet, network } = action.payload + if (!state.accounts[network]?.[wallet]?.account) { + state.accounts[network] = { + ...state.accounts[network], + [wallet]: { + account: account, + ...ZERO_STATE_CM_ACCOUNT, + }, + } + } + }, + setTradePreview: ( + state, + { + payload, + }: PayloadAction<{ + preview: FuturesPotentialTradeDetails | null + type: PreviewAction + }> + ) => { + state.previews[payload.type] = payload.preview + }, + clearAllTradePreviews: (state) => { + state.previews = { + edit: null, + trade: null, + close: null, + } + state.queryStatuses.perpsV3TradePreview = DEFAULT_QUERY_STATUS + }, + setSelectedTrader: (state, action: PayloadAction) => { + state.leaderboard.selectedTrader = action.payload + }, + incrementPreviewCount: (state) => { + state.previewDebounceCount = state.previewDebounceCount + 1 + }, + setSelectedPortfolioTimeframe: (state, action: PayloadAction) => { + state.dashboard.selectedPortfolioTimeframe = action.payload + }, + setTradePanelDrawerOpen: (state, action: PayloadAction) => { + state.tradePanelDrawerOpen = action.payload + }, + setShowTradeHistory: (state, action: PayloadAction) => { + state.preferences.showHistory = action.payload + }, + setSelectedChart: (state, action: PayloadAction<'price' | 'funding'>) => { + state.selectedChart = action.payload + }, + }, + extraReducers: (builder) => { + // Markets + builder.addCase(fetchV3Markets.pending, (futuresState) => { + futuresState.queryStatuses.markets = LOADING_STATUS + }) + builder.addCase(fetchV3Markets.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.markets = SUCCESS_STATUS + if (payload) { + futuresState.markets[payload.networkId] = payload.markets + } + }) + builder.addCase(fetchV3Markets.rejected, (futuresState) => { + futuresState.queryStatuses.markets = { + status: FetchStatus.Error, + error: 'Failed to fetch markets', + } + }) + + // Daily volumes + builder.addCase(fetchDailyVolumes.pending, (futuresState) => { + futuresState.queryStatuses.dailyVolumes = LOADING_STATUS + }) + builder.addCase(fetchDailyVolumes.fulfilled, (futuresState, action) => { + futuresState.queryStatuses.dailyVolumes = SUCCESS_STATUS + futuresState.dailyMarketVolumes = action.payload + }) + builder.addCase(fetchDailyVolumes.rejected, (futuresState) => { + futuresState.queryStatuses.dailyVolumes = { + status: FetchStatus.Error, + error: 'Failed to fetch volume data', + } + }) + + // margin transfers + builder.addCase(fetchMarginTransfers.pending, (futuresState) => { + futuresState.queryStatuses.marginTransfers = LOADING_STATUS + }) + builder.addCase(fetchMarginTransfers.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS + if (payload) { + const { context, marginTransfers, idleTransfers } = payload + const newAccountData = + context.type === 'isolated_margin' + ? { marginTransfers } + : { + marginTransfers, + idleTransfers, + } + updateFuturesAccount( + futuresState, + context.type, + context.network, + context.wallet, + newAccountData + ) + } + }) + builder.addCase(fetchMarginTransfers.rejected, (futuresState) => { + futuresState.queryStatuses.marginTransfers = { + status: FetchStatus.Error, + error: 'Failed to fetch margin transfers', + } + }) + + // combined margin transfers + builder.addCase(fetchCombinedMarginTransfers.pending, (futuresState) => { + futuresState.queryStatuses.marginTransfers = LOADING_STATUS + }) + builder.addCase(fetchCombinedMarginTransfers.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS + if (payload) { + const { context, isolatedMarginTransfers, smartMarginTransfers, idleTransfers } = payload + const newIsolatedAccountData = { marginTransfers: isolatedMarginTransfers } + const newSmartAccountData = { + marginTransfers: smartMarginTransfers, + idleTransfers, + } + + updateFuturesAccount( + futuresState, + 'isolated_margin', + context.network, + context.wallet, + newIsolatedAccountData + ) + + updateFuturesAccount( + futuresState, + 'smart_margin', + context.network, + context.wallet, + newSmartAccountData + ) + } + }) + builder.addCase(fetchCombinedMarginTransfers.rejected, (futuresState) => { + futuresState.queryStatuses.marginTransfers = { + status: FetchStatus.Error, + error: 'Failed to fetch combined margin transfers', + } + }) + + // Cross margin positions + builder.addCase(fetchCrossMarginPositions.pending, (futuresState) => { + futuresState.queryStatuses.perpsV3Positions = LOADING_STATUS + }) + builder.addCase(fetchCrossMarginPositions.fulfilled, (futuresState, action) => { + futuresState.queryStatuses.perpsV3Positions = SUCCESS_STATUS + if (!action.payload) return + const { account, positions, network } = action.payload + const wallet = findWalletForAccount(futuresState, account, network) + if (wallet) { + updateFuturesAccount(futuresState, 'cross_margin', network, wallet, { positions }) + } + }) + builder.addCase(fetchCrossMarginPositions.rejected, (futuresState) => { + futuresState.queryStatuses.perpsV3Positions = { + status: FetchStatus.Error, + error: 'Failed to fetch positions', + } + }) + + // Isolated margin positions + builder.addCase(fetchIsolatedMarginPositions.pending, (futuresState) => { + futuresState.queryStatuses.perpsV3Positions = LOADING_STATUS + }) + builder.addCase(fetchIsolatedMarginPositions.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.perpsV3Positions = SUCCESS_STATUS + if (payload) { + const { positions, wallet, network } = payload + updateFuturesAccount(futuresState, 'isolated_margin', network, wallet, { positions }) + } + }) + builder.addCase(fetchIsolatedMarginPositions.rejected, (futuresState) => { + futuresState.queryStatuses.perpsV3Positions = { + status: FetchStatus.Error, + error: 'Failed to fetch positions', + } + }) + + // Refetch selected position + builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { + if (payload) { + const { position, wallet, networkId } = payload + const account = futuresState.accounts[networkId]?.[wallet] + + const existingPositions = account?.positions ?? [] + const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) + existingPositions[index] = position + futuresState.accounts[networkId][wallet] = { + ...account, + positions: existingPositions, + } + } + }) + + // Fetch Isolated Open Orders + builder.addCase(fetchIsolatedOpenOrders.pending, (futuresState) => { + futuresState.queryStatuses.openOrders = LOADING_STATUS + }) + builder.addCase(fetchIsolatedOpenOrders.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.openOrders = SUCCESS_STATUS + if (payload) { + const { orders: delayedOrders, wallet, networkId } = payload + updateFuturesAccount(futuresState, 'isolated_margin', networkId, wallet, { + delayedOrders, + }) + } + }) + builder.addCase(fetchIsolatedOpenOrders.rejected, (futuresState) => { + futuresState.queryStatuses.openOrders = { + status: FetchStatus.Error, + error: 'Failed to fetch open orders for isolated margin', + } + }) + + // Fetch Isolated Margin Trade Preview + builder.addCase(fetchIsolatedMarginTradePreview.pending, (futuresState) => { + futuresState.queryStatuses.perpsV3TradePreview = LOADING_STATUS + }) + builder.addCase(fetchIsolatedMarginTradePreview.fulfilled, (futuresState, { payload }) => { + futuresState.previews[payload.type] = payload.preview + futuresState.queryStatuses.perpsV3TradePreview = SUCCESS_STATUS + }) + builder.addCase(fetchIsolatedMarginTradePreview.rejected, (futuresState) => { + futuresState.queryStatuses.perpsV3TradePreview = { + status: FetchStatus.Error, + error: 'Failed to fetch trade preview', + } + futuresState.previews.trade = null + }) + + // Fetch Cross Margin Trade Preview + builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { + futuresState.queryStatuses.perpsV3TradePreview = LOADING_STATUS + }) + builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { + futuresState.previews[payload.type] = payload.preview + futuresState.queryStatuses.perpsV3TradePreview = SUCCESS_STATUS + }) + + // Fetch cross margin account + builder.addCase(fetchCrossMarginAccount.pending, (futuresState) => { + futuresState.queryStatuses.perpsV3Account = LOADING_STATUS + }) + builder.addCase(fetchCrossMarginAccount.fulfilled, (futuresState, action) => { + if (action.payload) { + const { network, account, wallet } = action.payload + futuresState.accounts[network] = { + ...futuresState.accounts[network], + [wallet]: { + account: account, + ...ZERO_STATE_CM_ACCOUNT, + }, + } + } + futuresState.queryStatuses.perpsV3Account = SUCCESS_STATUS + }) + builder.addCase(fetchCrossMarginAccount.rejected, (futuresState) => { + futuresState.queryStatuses.perpsV3Account = { + status: FetchStatus.Error, + error: 'Failed to fetch account', + } + }) + + // Fetch position history + builder.addCase(fetchPerpsV3PositionHistory.pending, (futuresState) => { + futuresState.queryStatuses.positionHistory = LOADING_STATUS + }) + builder.addCase(fetchPerpsV3PositionHistory.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.positionHistory = SUCCESS_STATUS + if (payload) { + const { accountType: type, history: positionHistory, networkId, wallet } = payload + updateFuturesAccount(futuresState, type, networkId, wallet, { + positionHistory, + }) + } + }) + builder.addCase(fetchFuturesPositionHistory.rejected, (futuresState) => { + futuresState.queryStatuses.positionHistory = { + error: 'Failed to fetch position history', + status: FetchStatus.Error, + } + }) + + // Fetch position history for trader + builder.addCase(fetchPositionHistoryForTrader.pending, (futuresState) => { + futuresState.queryStatuses.selectedTraderPositionHistory = LOADING_STATUS + }) + builder.addCase(fetchPositionHistoryForTrader.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.selectedTraderPositionHistory = SUCCESS_STATUS + if (!payload) return + futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId] = { + ...futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId], + [payload.address]: payload.history, + } + }) + builder.addCase(fetchPositionHistoryForTrader.rejected, (futuresState) => { + futuresState.queryStatuses.selectedTraderPositionHistory = { + error: 'Failed to fetch traders position history', + status: FetchStatus.Error, + } + }) + + // Fetch trades for market + builder.addCase(fetchTradesForSelectedMarket.pending, (futuresState) => { + futuresState.queryStatuses.trades = LOADING_STATUS + }) + builder.addCase(fetchTradesForSelectedMarket.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.trades = SUCCESS_STATUS + if (payload) { + const { accountType: type, trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, type, networkId, wallet, trades) + } + }) + builder.addCase(fetchTradesForSelectedMarket.rejected, (futuresState) => { + futuresState.queryStatuses.trades = { + error: 'Failed to fetch trades', + status: FetchStatus.Error, + } + }) + + // TODO: Combine all with market trades rather than overwrite as the filter is done on selector + + // Fetch all trades for account + builder.addCase(fetchAllTradesForAccount.pending, (futuresState) => { + futuresState.queryStatuses.trades = LOADING_STATUS + }) + builder.addCase(fetchAllTradesForAccount.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.trades = SUCCESS_STATUS + if (payload) { + const { accountType: type, trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, type, networkId, wallet, trades) + } + }) + builder.addCase(fetchAllTradesForAccount.rejected, (futuresState) => { + futuresState.queryStatuses.trades = { + error: 'Failed to fetch trades', + status: FetchStatus.Error, + } + }) + + // Fetch funding rates + builder.addCase(fetchFundingRatesHistory.rejected, (futuresState) => { + futuresState.queryStatuses.historicalFundingRates = { + error: 'Failed to fetch funding rates', + status: FetchStatus.Error, + } + }) + builder.addCase(fetchFundingRatesHistory.fulfilled, (futuresState, { payload }) => { + futuresState.historicalFundingRates[payload.marketAsset] = payload.rates + }) + }, +}) + +export default futuresSlice.reducer + +export const { + handlePreviewError, + setMarketAsset, + setClosePositionSizeDelta, + setLeverageSide, + setLeverageInput, + clearAllTradePreviews, + setSelectedTrader, + setSelectedInputDenomination, + setSelectedInputFundingRateHour, + setSelectedPortfolioTimeframe, + setTradePanelDrawerOpen, + setShowTradeHistory, + setSelectedChart, + setPerpsV3Account, +} = futuresSlice.actions + +const findWalletForAccount = (perpsV3State: PerspV3State, account: string, network: NetworkId) => { + const entry = Object.entries(perpsV3State.accounts[network]).find(([_, value]) => { + return value.account === account + }) + return entry ? entry[0] : undefined +} + +const mergeTradesForAccount = ( + futuresState: PerspV3State, + type: FuturesAccountType, + network: NetworkId, + wallet: string, + trades: FuturesTrade[] +) => { + const existingTrades = futuresState.accounts[network]?.[wallet]?.trades ?? [] + trades.forEach((t) => { + if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { + existingTrades.push(t) + } + }) + existingTrades.sort((a, b) => b.timestamp - a.timestamp) + updateFuturesAccount(futuresState, type, network, wallet, { + trades: trades, + }) +} + +const updateFuturesAccount = ( + futuresState: PerspV3State, + type: FuturesAccountType, + network: NetworkId, + wallet: string, + newAccountData: Partial +) => { + const updatedAccount = { + ...ZERO_STATE_CM_ACCOUNT, + ...futuresState.accounts[network]?.[wallet], + ...newAccountData, + } + futuresState.accounts[network] = { + ...futuresState.accounts[network], + [wallet]: updatedAccount, + } +} diff --git a/packages/app/src/state/perpsV3/selectors.ts b/packages/app/src/state/perpsV3/selectors.ts new file mode 100644 index 0000000000..6b79b9e4b0 --- /dev/null +++ b/packages/app/src/state/perpsV3/selectors.ts @@ -0,0 +1,24 @@ +import { createSelector } from '@reduxjs/toolkit' + +import { RootState } from 'state/store' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { unserializeMarkets } from 'utils/futures' + +export const selectV3Markets = createSelector( + selectNetwork, + (state: RootState) => state.perpsV3, + (network, perpsV3) => + perpsV3.markets[network] ? unserializeMarkets(perpsV3.markets[network]) : [] +) + +export const selectPerpsV3SupportedNetwork = (state: RootState) => + state.wallet.networkId === 10 || state.wallet.networkId === 420 + +export const selectPerpsV3Account = createSelector( + selectWallet, + selectNetwork, + (state: RootState) => state.perpsV3, + (wallet, network, perpsV3) => { + return wallet ? perpsV3.accounts[network]?.[wallet]?.account : undefined + } +) diff --git a/packages/app/src/state/perpsV3/types.ts b/packages/app/src/state/perpsV3/types.ts new file mode 100644 index 0000000000..e587d475c4 --- /dev/null +++ b/packages/app/src/state/perpsV3/types.ts @@ -0,0 +1,274 @@ +import { Period } from '@kwenta/sdk/constants' +import { + NetworkId, + TransactionStatus, + FuturesOrderTypeDisplay, + FuturesPosition, + FuturesPositionHistory, + FuturesPotentialTradeDetails, + FuturesTrade, + FuturesVolumes, + PositionSide, + FuturesMarketKey, + FuturesMarketAsset, + MarginTransfer, + FuturesAccountType, + FuturesFilledPosition, + FuturesMarket, +} from '@kwenta/sdk/types' +import Wei from '@synthetixio/wei' + +import { PricesInfo } from 'state/prices/types' +import { QueryStatus } from 'state/types' + +export type TradeSizeInputs = { + nativeSize: T + susdSize: T +} + +export type SLTPInputs = { + stopLossPrice?: T + takeProfitPrice?: T +} + +export type TradeInputs = TradeSizeInputs & { + stopLossPrice?: T + takeProfitPrice?: T +} + +export type EditPositionInputs = { + nativeSizeDelta: T + marginDelta: T +} + +export type ClosePositionInputs = { + nativeSizeDelta: T +} + +export type MarkPrices = Partial> + +export type MarkPriceInfos = Partial>> + +export type FundingRate = { + asset: FuturesMarketKey + fundingTitle: string + fundingRate: T | null +} + +export type FuturesAction = { + account: string + timestamp: number + asset: FuturesMarketAsset + margin: number + size: number + action: 'trade' | 'deposit' | 'withdraw' +} + +export type PerpsV3Portfolio = { + account: string + timestamp: number + assets: { + [asset: string]: number + } + total: number +} + +export type PortfolioValues = { + timestamp: number + total: number +} + +export type FuturesQueryStatuses = { + markets: QueryStatus + dailyVolumes: QueryStatus + perpsV3Positions: QueryStatus + perpsV3PositionHistory: QueryStatus + openOrders: QueryStatus + perpsV3TradePreview: QueryStatus + perpsV3Account: QueryStatus + positionHistory: QueryStatus + trades: QueryStatus + selectedTraderPositionHistory: QueryStatus + marginTransfers: QueryStatus + historicalFundingRates: QueryStatus +} + +export type PerpsV3TransactionType = + | 'deposit_perps_v3' + | 'withdraw_perps_v3' + | 'approve_perps_v3' + | 'modify_perps_v3' + | 'close_perps_v3' + | 'cancel_delayed_perps_v3' + | 'execute_delayed_perps_v3' + | 'create_account_perps_v3' + +export type PerpsV3Transaction = { + type: PerpsV3TransactionType + status: TransactionStatus + error?: string + hash: string | null +} + +type FuturesNetwork = number + +export type InputCurrencyDenomination = 'usd' | 'native' + +export type FundingRatePeriods = { + [key: number]: string +} + +export type AccountContext = { + type: FuturesAccountType + network: NetworkId + wallet: string + cmAccount?: string +} + +export type PreviewAction = 'edit' | 'trade' | 'close' + +export type PerpsV3AccountData = { + account: string + position?: FuturesPosition + positions?: FuturesPosition[] + positionHistory?: FuturesPositionHistory[] + trades?: FuturesTrade[] + marginTransfers?: MarginTransfer[] + delayedOrders: DelayedOrderWithDetails[] +} + +export type PerspV3State = { + markets: Record[]> + tradeInputs: TradeSizeInputs + editPositionInputs: EditPositionInputs + orderType: 'market' + previews: { + trade: FuturesPotentialTradeDetails | null + close: FuturesPotentialTradeDetails | null + edit: FuturesPotentialTradeDetails | null + } + selectedType: FuturesAccountType + confirmationModalOpen: boolean + closePositionOrderInputs: ClosePositionInputs + previewDebounceCount: number + leverageSide: PositionSide + selectedMarketKey: FuturesMarketKey + selectedMarketAsset: FuturesMarketAsset + leverageInput: string + tradeFee: string + accounts: Record< + FuturesNetwork, + { + [wallet: string]: PerpsV3AccountData + } + > + fundingRates: FundingRate[] + queryStatuses: FuturesQueryStatuses + dailyMarketVolumes: FuturesVolumes + selectedInputDenomination: InputCurrencyDenomination + selectedInputHours: number + selectedChart: 'price' | 'funding' + preferences: { + showHistory?: boolean + } + dashboard: { + selectedPortfolioTimeframe: Period + } + leaderboard: { + selectedTrader: string | undefined + selectedTraderPositionHistory: Record< + FuturesNetwork, + { + [wallet: string]: FuturesPositionHistory[] + } + > + } + tradePanelDrawerOpen: boolean + historicalFundingRates: Partial< + Record + > +} + +export type TradePreviewResult = { + data: FuturesPotentialTradeDetails | null + error: string | null +} + +export type DelayedOrderWithDetails = { + account: string + marketAddress: string + market: string + asset: FuturesMarketAsset + marketKey: FuturesMarketKey + size: T + commitDeposit: T + keeperDeposit: T + submittedAtTimestamp: number + executableAtTimestamp: number + isOffchain: boolean + desiredFillPrice: T + targetRoundId: T | null + orderType: FuturesOrderTypeDisplay + side: PositionSide + isStale?: boolean + isExecutable?: boolean + isCancelling?: boolean +} + +export type TradePreviewParams = { + market: { + key: FuturesMarketKey + address: string + } + orderPrice: Wei + sizeDelta: Wei + marginDelta: Wei + action: PreviewAction +} + +export type DebouncedPreviewParams = TradePreviewParams & { + debounceCount: number +} + +export type SharePositionParams = { + asset?: FuturesMarketAsset + position?: FuturesFilledPosition + positionHistory?: FuturesPositionHistory + marketPrice?: Wei +} + +export const futuresPositionKeys = new Set([ + 'remainingMargin', + 'accessibleMargin', + 'order.fee', + 'order.leverage', + 'position.notionalValue', + 'position.accruedFunding', + 'position.initialMargin', + 'position.profitLoss', + 'position.lastPrice', + 'position.size', + 'position.liquidationPrice', + 'position.initialLeverage', + 'position.leverage', + 'position.pnl', + 'position.pnlPct', + 'position.marginRatio', +]) + +export const futuresPositionHistoryKeys = new Set([ + 'size', + 'feesPaid', + 'netFunding', + 'netTransfers', + 'totalDeposits', + 'initialMargin', + 'margin', + 'entryPrice', + 'avgEntryPrice', + 'exitPrice', + 'leverage', + 'pnl', + 'pnlWithFeesPaid', + 'totalVolume', +]) diff --git a/packages/app/src/state/store.ts b/packages/app/src/state/store.ts index 436e181372..102b1d1920 100644 --- a/packages/app/src/state/store.ts +++ b/packages/app/src/state/store.ts @@ -28,6 +28,7 @@ import sdk from './sdk' import stakingReducer from './staking/reducer' import statsReducer from './stats/reducer' import walletReducer from './wallet/reducer' +import perpsV3Reducer from './perpsV3/reducer' const LOG_REDUX = false @@ -45,6 +46,7 @@ const combinedReducers = combineReducers({ balances: balancesReducer, exchange: exchangeReducer, futures: futuresReducer, + perpsV3: perpsV3Reducer, home: homeReducer, earn: earnReducer, staking: stakingReducer, diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index caf34a7ab4..ef9d5dcea4 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -409,3 +409,8 @@ export const formatDelayedOrders = (orders: DelayedOrder[], markets: FuturesMark return acc }, [] as DelayedOrderWithDetails[]) } + +export const perpsAccountIdFromAddress = (eoa: string): number => { + const numberedId = eoa.replace(/\D/g, '') + return Number(numberedId) +} diff --git a/packages/sdk/src/constants/futures.ts b/packages/sdk/src/constants/futures.ts index 48382d66c3..66d59f15e0 100644 --- a/packages/sdk/src/constants/futures.ts +++ b/packages/sdk/src/constants/futures.ts @@ -10,6 +10,7 @@ import { FuturesOrderType, } from '../types/futures' import { weiFromWei } from '../utils/number' +import { NetworkId } from '../types' export const KWENTA_TRACKING_CODE = ethers.utils.formatBytes32String('KWENTA') @@ -38,6 +39,11 @@ export const MAIN_ENDPOINT_OP_MAINNET = export const MAIN_ENDPOINT_OP_GOERLI = 'https://api.thegraph.com/subgraphs/name/kwenta/optimism-goerli-main' +export const PERPS_V3_SUBGRAPH_URLS: Record = { + // TODO: Update perps v3 subgraph urls + 420: 'https://api.thegraph.com/subgraphs/name/rickk137/v3-perps-opt-goerli', +} + export const KWENTA_PYTH_SERVER = 'https://price.kwenta.io' export const PUBLIC_PYTH_SERVER = 'https://xc-mainnet.pyth.network' @@ -490,6 +496,18 @@ export const MARKETS: Record = { testnet: '0xb7abd25a76ddaffdf847224f03198ccb92723f90b2429cf33f0eecb96e352a86', }, }, + // Perps v3 + + [FuturesMarketKey.ETH]: { + key: FuturesMarketKey.ETH, + asset: FuturesMarketAsset.ETH, + supports: 'both', + version: 2, + pythIds: { + mainnet: '0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace', + testnet: '0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6', + }, + }, } export const MARKET_ASSETS_BY_PYTH_ID = Object.values(MARKETS) diff --git a/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json b/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json new file mode 100644 index 0000000000..916b0415bf --- /dev/null +++ b/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json @@ -0,0 +1,3365 @@ +[ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "which", + "type": "bytes32" + } + ], + "name": "FeatureUnavailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "InvalidAccountId", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + } + ], + "name": "InvalidPermission", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "OnlyAccountTokenProxy", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "PermissionDenied", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "user", + "type": "address" + } + ], + "name": "PermissionNotGranted", + "type": "error" + }, + { + "inputs": [], + "name": "PositionOutOfBounds", + "type": "error" + }, + { + "inputs": [], + "name": "ValueAlreadyInSet", + "type": "error" + }, + { + "inputs": [], + "name": "ValueNotInSet", + "type": "error" + }, + { + "inputs": [], + "name": "ZeroAddress", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "AccountCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "user", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "PermissionGranted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "user", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "PermissionRevoked", + "type": "event" + }, + { + "inputs": [], + "name": "createAccount", + "outputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "requestedAccountId", + "type": "uint128" + } + ], + "name": "createAccount", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "getAccountLastInteraction", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "getAccountOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "getAccountPermissions", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "user", + "type": "address" + }, + { + "internalType": "bytes32[]", + "name": "permissions", + "type": "bytes32[]" + } + ], + "internalType": "struct IAccountModule.AccountPermissions[]", + "name": "accountPerms", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAccountTokenAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "user", + "type": "address" + } + ], + "name": "grantPermission", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "user", + "type": "address" + } + ], + "name": "hasPermission", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "user", + "type": "address" + } + ], + "name": "isAuthorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "notifyAccountTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + } + ], + "name": "renouncePermission", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "permission", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "user", + "type": "address" + } + ], + "name": "revokePermission", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "expected", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "actual", + "type": "bytes32" + } + ], + "name": "MismatchAssociatedSystemKind", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + } + ], + "name": "MissingAssociatedSystem", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "Unauthorized", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "kind", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "proxy", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "impl", + "type": "address" + } + ], + "name": "AssociatedSystemSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + } + ], + "name": "getAssociatedSystem", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "kind", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "string", + "name": "uri", + "type": "string" + }, + { + "internalType": "address", + "name": "impl", + "type": "address" + } + ], + "name": "initOrUpgradeNft", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "symbol", + "type": "string" + }, + { + "internalType": "uint8", + "name": "decimals", + "type": "uint8" + }, + { + "internalType": "address", + "name": "impl", + "type": "address" + } + ], + "name": "initOrUpgradeToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "endpoint", + "type": "address" + } + ], + "name": "registerUnmanagedSystem", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ImplementationIsSterile", + "type": "error" + }, + { + "inputs": [], + "name": "NoChange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "contr", + "type": "address" + } + ], + "name": "NotAContract", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "NotNominated", + "type": "error" + }, + { + "inputs": [], + "name": "UpgradeSimulationFailed", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "oldOwner", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnerNominated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "self", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newNominatedOwner", + "type": "address" + } + ], + "name": "nominateNewOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "nominatedOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceNomination", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "simulateUpgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "InvalidMarketOwner", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowInt256ToUint256", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "address", + "name": "oldOwner", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "MarketOwnerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "address", + "name": "newNominatedOwner", + "type": "address" + } + ], + "name": "MarketOwnerNominated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "feedId", + "type": "bytes32" + } + ], + "name": "MarketPriceDataUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "address", + "name": "marketOwner", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "marketName", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "marketSymbol", + "type": "string" + } + ], + "name": "MarketRegistered", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "acceptMarketOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "marketName", + "type": "string" + }, + { + "internalType": "string", + "name": "marketSymbol", + "type": "string" + }, + { + "internalType": "address", + "name": "marketOwner", + "type": "address" + } + ], + "name": "createMarket", + "outputs": [ + { + "internalType": "uint128", + "name": "", + "type": "uint128" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "getMarketOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "minimumCredit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "internalType": "address", + "name": "newNominatedOwner", + "type": "address" + } + ], + "name": "nominateMarketOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "reportedDebt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ISpotMarketSystem", + "name": "spotMarket", + "type": "address" + } + ], + "name": "setSpotMarket", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ISynthetixSystem", + "name": "synthetix", + "type": "address" + } + ], + "name": "setSynthetix", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + } + ], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "perpsMarketId", + "type": "uint128" + }, + { + "internalType": "bytes32", + "name": "feedId", + "type": "bytes32" + } + ], + "name": "updatePriceData", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "AccountLiquidatable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "AccountNotFound", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "collateralAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawAmount", + "type": "uint256" + } + ], + "name": "InsufficientCollateral", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "available", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "required", + "type": "uint256" + } + ], + "name": "InsufficientCollateralAvailableForWithdraw", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "amountDelta", + "type": "int256" + } + ], + "name": "InvalidAmountDelta", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "InvalidMarket", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "maxAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "collateralAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "depositAmount", + "type": "uint256" + } + ], + "name": "MaxCollateralExceeded", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowUint128ToInt128", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowUint256ToInt256", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowUint256ToUint128", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "PriceFeedNotSet", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + } + ], + "name": "SynthNotEnabledForCollateral", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "int256", + "name": "amountDelta", + "type": "int256" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "CollateralModified", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getAsyncOrderClaim", + "outputs": [ + { + "components": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "int128", + "name": "sizeDelta", + "type": "int128" + }, + { + "internalType": "uint128", + "name": "settlementStrategyId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + } + ], + "internalType": "struct AsyncOrder.Data", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "getAvailableMargin", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getOpenPosition", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + }, + { + "internalType": "int256", + "name": "", + "type": "int256" + }, + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "internalType": "int256", + "name": "amountDelta", + "type": "int256" + } + ], + "name": "modifyCollateral", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "totalAccountOpenInterest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "totalCollateralValue", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "currentFundingRate", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "currentFundingVelocity", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "int256", + "name": "orderSize", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "price", + "type": "uint256" + } + ], + "name": "fillPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getMarketSummary", + "outputs": [ + { + "components": [ + { + "internalType": "int256", + "name": "skew", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "size", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxOpenInterest", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "currentFundingRate", + "type": "int256" + }, + { + "internalType": "int256", + "name": "currentFundingVelocity", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "indexPrice", + "type": "uint256" + } + ], + "internalType": "struct IPerpsMarketModule.MarketSummary", + "name": "summary", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "indexPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "maxOpenInterest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "size", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "skew", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "fillPrice", + "type": "uint256" + } + ], + "name": "AcceptablePriceExceeded", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "availableMargin", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "minMargin", + "type": "uint256" + } + ], + "name": "InsufficientMargin", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "leftover", + "type": "uint256" + } + ], + "name": "InsufficientMarginError", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "settlementStrategyId", + "type": "uint128" + } + ], + "name": "InvalidSettlementStrategy", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string[]", + "name": "urls", + "type": "string[]" + }, + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "callbackFunction", + "type": "bytes4" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "OffchainLookup", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "OrderAlreadyCommitted", + "type": "error" + }, + { + "inputs": [], + "name": "OrderNotValid", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowInt256ToInt128", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowUint256ToUint64", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "deviation", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tolerance", + "type": "uint256" + } + ], + "name": "PriceDeviationToleranceExceeded", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "enum SettlementStrategy.Type", + "name": "strategyType", + "type": "uint8" + } + ], + "name": "SettlementStrategyNotFound", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementExpiration", + "type": "uint256" + } + ], + "name": "SettlementWindowExpired", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "timestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementExpiration", + "type": "uint256" + } + ], + "name": "SettlementWindowNotExpired", + "type": "error" + }, + { + "inputs": [], + "name": "ZeroSizeOrder", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + } + ], + "name": "OrderCanceled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "enum SettlementStrategy.Type", + "name": "orderType", + "type": "uint8" + }, + { + "indexed": false, + "internalType": "int128", + "name": "sizeDelta", + "type": "int128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expirationTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "OrderCommitted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": true, + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "fillPrice", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "int256", + "name": "accountPnlRealized", + "type": "int256" + }, + { + "indexed": false, + "internalType": "int128", + "name": "newSize", + "type": "int128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "collectedFees", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "settelementReward", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "settler", + "type": "address" + } + ], + "name": "OrderSettled", + "type": "event" + }, + { + "inputs": [], + "name": "PRECISION", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "cancelOrder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "int128", + "name": "sizeDelta", + "type": "int128" + }, + { + "internalType": "uint128", + "name": "settlementStrategyId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + } + ], + "internalType": "struct AsyncOrder.OrderCommitmentRequest", + "name": "commitment", + "type": "tuple" + } + ], + "name": "commitOrder", + "outputs": [ + { + "components": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "int128", + "name": "sizeDelta", + "type": "int128" + }, + { + "internalType": "uint128", + "name": "settlementStrategyId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + } + ], + "internalType": "struct AsyncOrder.Data", + "name": "retOrder", + "type": "tuple" + }, + { + "internalType": "uint256", + "name": "fees", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "getOrder", + "outputs": [ + { + "components": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "int128", + "name": "sizeDelta", + "type": "int128" + }, + { + "internalType": "uint128", + "name": "settlementStrategyId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "settlementTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "acceptablePrice", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "trackingCode", + "type": "bytes32" + } + ], + "internalType": "struct AsyncOrder.Data", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "settle", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "result", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + } + ], + "name": "settlePythOrder", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowAll", + "type": "bool" + } + ], + "name": "FeatureFlagAllowAllSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "FeatureFlagAllowlistAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "FeatureFlagAllowlistRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "deniers", + "type": "address[]" + } + ], + "name": "FeatureFlagDeniersReset", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "denyAll", + "type": "bool" + } + ], + "name": "FeatureFlagDenyAllSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "addToFeatureFlagAllowlist", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + } + ], + "name": "getDeniers", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + } + ], + "name": "getFeatureFlagAllowAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + } + ], + "name": "getFeatureFlagAllowlist", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + } + ], + "name": "getFeatureFlagDenyAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "isFeatureAllowed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "removeFromFeatureFlagAllowlist", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "address[]", + "name": "deniers", + "type": "address[]" + } + ], + "name": "setDeniers", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "allowAll", + "type": "bool" + } + ], + "name": "setFeatureFlagAllowAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "feature", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "denyAll", + "type": "bool" + } + ], + "name": "setFeatureFlagDenyAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "NotEligibleForLiquidation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "accountId", + "type": "uint128" + } + ], + "name": "liquidate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "liquidateFlagged", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "marketOwner", + "type": "address" + }, + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "OnlyMarketOwner", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "skewScale", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "maxFundingVelocity", + "type": "uint256" + } + ], + "name": "FundingParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "initialMarginFraction", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "maintenanceMarginFraction", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "liquidationRewardRatioD18", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "maxLiquidationLimitAccumulationMultiplier", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "maxSecondsInLiquidationWindow", + "type": "uint256" + } + ], + "name": "LiquidationParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "lockedOiPercent", + "type": "uint256" + } + ], + "name": "LockedOiPercentSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "maxMarketValue", + "type": "uint256" + } + ], + "name": "MaxMarketValueSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "makerFeeRatio", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "takerFeeRatio", + "type": "uint256" + } + ], + "name": "OrderFeesSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "components": [ + { + "internalType": "enum SettlementStrategy.Type", + "name": "strategyType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "settlementDelay", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementWindowDuration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceWindowDuration", + "type": "uint256" + }, + { + "internalType": "address", + "name": "priceVerificationContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "feedId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "url", + "type": "string" + }, + { + "internalType": "uint256", + "name": "settlementReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceDeviationTolerance", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "disabled", + "type": "bool" + } + ], + "indexed": false, + "internalType": "struct SettlementStrategy.Data", + "name": "strategy", + "type": "tuple" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "strategyId", + "type": "uint256" + } + ], + "name": "SettlementStrategyAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "strategyId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "SettlementStrategyEnabled", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "components": [ + { + "internalType": "enum SettlementStrategy.Type", + "name": "strategyType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "settlementDelay", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementWindowDuration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceWindowDuration", + "type": "uint256" + }, + { + "internalType": "address", + "name": "priceVerificationContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "feedId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "url", + "type": "string" + }, + { + "internalType": "uint256", + "name": "settlementReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceDeviationTolerance", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "disabled", + "type": "bool" + } + ], + "internalType": "struct SettlementStrategy.Data", + "name": "strategy", + "type": "tuple" + } + ], + "name": "addSettlementStrategy", + "outputs": [ + { + "internalType": "uint256", + "name": "strategyId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getFundingParameters", + "outputs": [ + { + "internalType": "uint256", + "name": "skewScale", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxFundingVelocity", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getLiquidationParameters", + "outputs": [ + { + "internalType": "uint256", + "name": "initialMarginFraction", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maintenanceMarginFraction", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidationRewardRatioD18", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxLiquidationLimitAccumulationMultiplier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxSecondsInLiquidationWindow", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getLockedOiPercent", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getMaxMarketValue", + "outputs": [ + { + "internalType": "uint256", + "name": "maxMarketValue", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + } + ], + "name": "getOrderFees", + "outputs": [ + { + "internalType": "uint256", + "name": "makerFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "takerFee", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "strategyId", + "type": "uint256" + } + ], + "name": "getSettlementStrategy", + "outputs": [ + { + "components": [ + { + "internalType": "enum SettlementStrategy.Type", + "name": "strategyType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "settlementDelay", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "settlementWindowDuration", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceWindowDuration", + "type": "uint256" + }, + { + "internalType": "address", + "name": "priceVerificationContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "feedId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "url", + "type": "string" + }, + { + "internalType": "uint256", + "name": "settlementReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "priceDeviationTolerance", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "disabled", + "type": "bool" + } + ], + "internalType": "struct SettlementStrategy.Data", + "name": "settlementStrategy", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "skewScale", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxFundingVelocity", + "type": "uint256" + } + ], + "name": "setFundingParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "initialMarginFraction", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maintenanceMarginFraction", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "liquidationRewardRatioD18", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxLiquidationLimitAccumulationMultiplier", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxSecondsInLiquidationWindow", + "type": "uint256" + } + ], + "name": "setLiquidationParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "lockedOiPercent", + "type": "uint256" + } + ], + "name": "setLockedOiPercent", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "maxMarketValue", + "type": "uint256" + } + ], + "name": "setMaxMarketValue", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "makerFeeRatio", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "takerFeeRatio", + "type": "uint256" + } + ], + "name": "setOrderFees", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "marketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "strategyId", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "setSettlementStrategyEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "minLiquidationRewardUsd", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "maxLiquidationRewardUsd", + "type": "uint256" + } + ], + "name": "LiquidationRewardGuardsSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "collateralAmount", + "type": "uint256" + } + ], + "name": "MaxCollateralAmountSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint128[]", + "name": "newSynthDeductionPriority", + "type": "uint128[]" + } + ], + "name": "SynthDeductionPrioritySet", + "type": "event" + }, + { + "inputs": [], + "name": "getLiquidationRewardGuards", + "outputs": [ + { + "internalType": "uint256", + "name": "minLiquidationRewardUsd", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxLiquidationRewardUsd", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + } + ], + "name": "getMaxCollateralAmount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getSynthDeductionPriority", + "outputs": [ + { + "internalType": "uint128[]", + "name": "", + "type": "uint128[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "minLiquidationRewardUsd", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxLiquidationRewardUsd", + "type": "uint256" + } + ], + "name": "setLiquidationRewardGuards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128", + "name": "synthMarketId", + "type": "uint128" + }, + { + "internalType": "uint256", + "name": "collateralAmount", + "type": "uint256" + } + ], + "name": "setMaxCollateralAmount", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint128[]", + "name": "newSynthDeductionPriority", + "type": "uint128[]" + } + ], + "name": "setSynthDeductionPriority", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/packages/sdk/src/contracts/constants.ts b/packages/sdk/src/contracts/constants.ts index 6175b6058d..5639b33f7a 100644 --- a/packages/sdk/src/contracts/constants.ts +++ b/packages/sdk/src/contracts/constants.ts @@ -139,4 +139,7 @@ export const ADDRESSES: Record> = { 10: '0x54581A23F62D147AC76d454f0b3eF77F9D766058', 420: '0x4259a2004A1E110A86564ff1441c37F1461F344F', }, + PerpsV3MarketProxy: { + 420: '0x54D71285871C5a0914F5B53740b70bA3eDb51Fbb', + }, } diff --git a/packages/sdk/src/contracts/index.ts b/packages/sdk/src/contracts/index.ts index 1e9f6c7366..1e292942eb 100644 --- a/packages/sdk/src/contracts/index.ts +++ b/packages/sdk/src/contracts/index.ts @@ -47,6 +47,7 @@ import { BatchClaimer__factory, MultipleMerkleDistributorOp__factory, MultipleMerkleDistributorPerpsV2__factory, + PerpsV3MarketProxy__factory, } from './types' import { PerpsV2MarketData__factory } from './types/factories/PerpsV2MarketData__factory' import { PerpsV2MarketSettings__factory } from './types/factories/PerpsV2MarketSettings__factory' @@ -165,6 +166,9 @@ export const getContractsByNetwork = ( veKwentaRedeemer: ADDRESSES.veKwentaRedeemer[networkId] ? VeKwentaRedeemer__factory.connect(ADDRESSES.veKwentaRedeemer[networkId], provider) : undefined, + perpsV3MarketProxy: ADDRESSES.PerpsV3MarketProxy[networkId] + ? PerpsV3MarketProxy__factory.connect(ADDRESSES.PerpsV3MarketProxy[networkId], provider) + : undefined, } } diff --git a/packages/sdk/src/contracts/types/BatchClaimer.ts b/packages/sdk/src/contracts/types/BatchClaimer.ts index c11250e92f..bfcf9da4f2 100644 --- a/packages/sdk/src/contracts/types/BatchClaimer.ts +++ b/packages/sdk/src/contracts/types/BatchClaimer.ts @@ -2,117 +2,133 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: PromiseOrValue - account: PromiseOrValue - amount: PromiseOrValue - merkleProof: PromiseOrValue[] - epoch: PromiseOrValue - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface BatchClaimerInterface extends utils.Interface { - functions: { - 'claimMultiple(address[],tuple[][])': FunctionFragment - } + functions: { + "claimMultiple(address[],tuple[][])": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'claimMultiple'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "claimMultiple"): FunctionFragment; - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [PromiseOrValue[], IMultipleMerkleDistributor.ClaimsStruct[][]] - ): string + encodeFunctionData( + functionFragment: "claimMultiple", + values: [string[], IMultipleMerkleDistributor.ClaimsStruct[][]] + ): string; - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; - events: {} + events: {}; } export interface BatchClaimer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: BatchClaimerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - claimMultiple( - _distributors: PromiseOrValue[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - claimMultiple( - _distributors: PromiseOrValue[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - claimMultiple( - _distributors: PromiseOrValue[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: CallOverrides - ): Promise - } - - filters: {} - - estimateGas: { - claimMultiple( - _distributors: PromiseOrValue[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - populateTransaction: { - claimMultiple( - _distributors: PromiseOrValue[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: BatchClaimerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/DappMaintenance.ts b/packages/sdk/src/contracts/types/DappMaintenance.ts index d51da67f3d..30dcae334c 100644 --- a/packages/sdk/src/contracts/types/DappMaintenance.ts +++ b/packages/sdk/src/contracts/types/DappMaintenance.ts @@ -2,313 +2,378 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface DappMaintenanceInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'isPausedSX()': FunctionFragment - 'isPausedStaking()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'setMaintenanceModeAll(bool)': FunctionFragment - 'setMaintenanceModeSX(bool)': FunctionFragment - 'setMaintenanceModeStaking(bool)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'isPausedSX' - | 'isPausedStaking' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'setMaintenanceModeAll' - | 'setMaintenanceModeSX' - | 'setMaintenanceModeStaking' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'isPausedSX', values?: undefined): string - encodeFunctionData(functionFragment: 'isPausedStaking', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'setMaintenanceModeAll', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaintenanceModeSX', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaintenanceModeStaking', - values: [PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isPausedSX', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isPausedStaking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeSX', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeStaking', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'SXMaintenance(bool)': EventFragment - 'StakingMaintenance(bool)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SXMaintenance'): EventFragment - getEvent(nameOrSignatureOrTopic: 'StakingMaintenance'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "isPausedSX()": FunctionFragment; + "isPausedStaking()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "setMaintenanceModeAll(bool)": FunctionFragment; + "setMaintenanceModeSX(bool)": FunctionFragment; + "setMaintenanceModeStaking(bool)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "isPausedSX" + | "isPausedStaking" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "setMaintenanceModeAll" + | "setMaintenanceModeSX" + | "setMaintenanceModeStaking" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isPausedSX", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isPausedStaking", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeAll", + values: [boolean] + ): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeSX", + values: [boolean] + ): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeStaking", + values: [boolean] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isPausedSX", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isPausedStaking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeSX", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeStaking", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "SXMaintenance(bool)": EventFragment; + "StakingMaintenance(bool)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SXMaintenance"): EventFragment; + getEvent(nameOrSignatureOrTopic: "StakingMaintenance"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface SXMaintenanceEventObject { - isPaused: boolean + isPaused: boolean; } -export type SXMaintenanceEvent = TypedEvent<[boolean], SXMaintenanceEventObject> +export type SXMaintenanceEvent = TypedEvent< + [boolean], + SXMaintenanceEventObject +>; -export type SXMaintenanceEventFilter = TypedEventFilter +export type SXMaintenanceEventFilter = TypedEventFilter; export interface StakingMaintenanceEventObject { - isPaused: boolean + isPaused: boolean; } -export type StakingMaintenanceEvent = TypedEvent<[boolean], StakingMaintenanceEventObject> +export type StakingMaintenanceEvent = TypedEvent< + [boolean], + StakingMaintenanceEventObject +>; -export type StakingMaintenanceEventFilter = TypedEventFilter +export type StakingMaintenanceEventFilter = + TypedEventFilter; export interface DappMaintenance extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: DappMaintenanceInterface + interface: DappMaintenanceInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise<[boolean]> + isPausedSX(overrides?: CallOverrides): Promise<[boolean]>; - isPausedStaking(overrides?: CallOverrides): Promise<[boolean]> + isPausedStaking(overrides?: CallOverrides): Promise<[boolean]>; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - setMaintenanceModeAll( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; - setMaintenanceModeSX( - isPaused: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; - setMaintenanceModeStaking( - isPaused: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; + }; - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'SXMaintenance(bool)'(isPaused?: null): SXMaintenanceEventFilter - SXMaintenance(isPaused?: null): SXMaintenanceEventFilter + "SXMaintenance(bool)"(isPaused?: null): SXMaintenanceEventFilter; + SXMaintenance(isPaused?: null): SXMaintenanceEventFilter; - 'StakingMaintenance(bool)'(isPaused?: null): StakingMaintenanceEventFilter - StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter - } + "StakingMaintenance(bool)"(isPaused?: null): StakingMaintenanceEventFilter; + StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ERC20.ts b/packages/sdk/src/contracts/types/ERC20.ts index 1de4906073..5a675444d2 100644 --- a/packages/sdk/src/contracts/types/ERC20.ts +++ b/packages/sdk/src/contracts/types/ERC20.ts @@ -2,437 +2,469 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ERC20Interface extends utils.Interface { - functions: { - 'name()': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'mint(uint256)': FunctionFragment - 'totalSupply()': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'decimals()': FunctionFragment - 'increaseAllowance(address,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'symbol()': FunctionFragment - 'decreaseAllowance(address,uint256)': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'allowance(address,address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'name' - | 'approve' - | 'mint' - | 'totalSupply' - | 'transferFrom' - | 'decimals' - | 'increaseAllowance' - | 'balanceOf' - | 'symbol' - | 'decreaseAllowance' - | 'transfer' - | 'allowance' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData( - functionFragment: 'approve', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'mint', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData( - functionFragment: 'increaseAllowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData( - functionFragment: 'decreaseAllowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transfer', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'allowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'increaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decreaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - - events: { - 'Transfer(address,address,uint256)': EventFragment - 'Approval(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment + functions: { + "name()": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "mint(uint256)": FunctionFragment; + "totalSupply()": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "decimals()": FunctionFragment; + "increaseAllowance(address,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "symbol()": FunctionFragment; + "decreaseAllowance(address,uint256)": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "allowance(address,address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "name" + | "approve" + | "mint" + | "totalSupply" + | "transferFrom" + | "decimals" + | "increaseAllowance" + | "balanceOf" + | "symbol" + | "decreaseAllowance" + | "transfer" + | "allowance" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "mint", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "increaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "decreaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "increaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "decreaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + + events: { + "Transfer(address,address,uint256)": EventFragment; + "Approval(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; } export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface ERC20 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ERC20Interface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - name(overrides?: CallOverrides): Promise<[string]> - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint( - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - decimals(overrides?: CallOverrides): Promise<[number]> - - increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - symbol(overrides?: CallOverrides): Promise<[string]> - - decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - } - - name(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint( - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - callStatic: { - name(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - mint(value: PromiseOrValue, overrides?: CallOverrides): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'Transfer(address,address,uint256)'( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - Transfer( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - - 'Approval(address,address,uint256)'( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - Approval( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - } - - estimateGas: { - name(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint( - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - name(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint( - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ERC20Interface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + name(overrides?: CallOverrides): Promise<[string]>; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise<[number]>; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; + + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + callStatic: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + mint(value: BigNumberish, overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + }; + + estimateGas: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ExchangeRates.ts b/packages/sdk/src/contracts/types/ExchangeRates.ts index 8bdd68a0c3..9da7ab93fe 100644 --- a/packages/sdk/src/contracts/types/ExchangeRates.ts +++ b/packages/sdk/src/contracts/types/ExchangeRates.ts @@ -2,1418 +2,1632 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IDirectIntegrationManager { - export type ParameterIntegrationSettingsStruct = { - currencyKey: PromiseOrValue - dexPriceAggregator: PromiseOrValue - atomicEquivalentForDexPricing: PromiseOrValue - atomicExchangeFeeRate: PromiseOrValue - atomicTwapWindow: PromiseOrValue - atomicMaxVolumePerBlock: PromiseOrValue - atomicVolatilityConsiderationWindow: PromiseOrValue - atomicVolatilityUpdateThreshold: PromiseOrValue - exchangeFeeRate: PromiseOrValue - exchangeMaxDynamicFee: PromiseOrValue - exchangeDynamicFeeRounds: PromiseOrValue - exchangeDynamicFeeThreshold: PromiseOrValue - exchangeDynamicFeeWeightDecay: PromiseOrValue - } - - export type ParameterIntegrationSettingsStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - currencyKey: string - dexPriceAggregator: string - atomicEquivalentForDexPricing: string - atomicExchangeFeeRate: BigNumber - atomicTwapWindow: BigNumber - atomicMaxVolumePerBlock: BigNumber - atomicVolatilityConsiderationWindow: BigNumber - atomicVolatilityUpdateThreshold: BigNumber - exchangeFeeRate: BigNumber - exchangeMaxDynamicFee: BigNumber - exchangeDynamicFeeRounds: BigNumber - exchangeDynamicFeeThreshold: BigNumber - exchangeDynamicFeeWeightDecay: BigNumber - } + export type ParameterIntegrationSettingsStruct = { + currencyKey: BytesLike; + dexPriceAggregator: string; + atomicEquivalentForDexPricing: string; + atomicExchangeFeeRate: BigNumberish; + atomicTwapWindow: BigNumberish; + atomicMaxVolumePerBlock: BigNumberish; + atomicVolatilityConsiderationWindow: BigNumberish; + atomicVolatilityUpdateThreshold: BigNumberish; + exchangeFeeRate: BigNumberish; + exchangeMaxDynamicFee: BigNumberish; + exchangeDynamicFeeRounds: BigNumberish; + exchangeDynamicFeeThreshold: BigNumberish; + exchangeDynamicFeeWeightDecay: BigNumberish; + }; + + export type ParameterIntegrationSettingsStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + currencyKey: string; + dexPriceAggregator: string; + atomicEquivalentForDexPricing: string; + atomicExchangeFeeRate: BigNumber; + atomicTwapWindow: BigNumber; + atomicMaxVolumePerBlock: BigNumber; + atomicVolatilityConsiderationWindow: BigNumber; + atomicVolatilityUpdateThreshold: BigNumber; + exchangeFeeRate: BigNumber; + exchangeMaxDynamicFee: BigNumber; + exchangeDynamicFeeRounds: BigNumber; + exchangeDynamicFeeThreshold: BigNumber; + exchangeDynamicFeeWeightDecay: BigNumber; + }; } export interface ExchangeRatesInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'addAggregator(bytes32,address)': FunctionFragment - 'aggregatorKeys(uint256)': FunctionFragment - 'aggregatorWarningFlags()': FunctionFragment - 'aggregators(bytes32)': FunctionFragment - 'anyRateIsInvalid(bytes32[])': FunctionFragment - 'anyRateIsInvalidAtRound(bytes32[],uint256[])': FunctionFragment - 'currenciesUsingAggregator(address)': FunctionFragment - 'currencyKeyDecimals(bytes32)': FunctionFragment - 'effectiveAtomicValueAndRates(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValue(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValueAndRates(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)': FunctionFragment - 'getCurrentRoundId(bytes32)': FunctionFragment - 'getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'lastRateUpdateTimes(bytes32)': FunctionFragment - 'lastRateUpdateTimesForCurrencies(bytes32[])': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rateAndInvalid(bytes32)': FunctionFragment - 'rateAndTimestampAtRound(bytes32,uint256)': FunctionFragment - 'rateAndUpdatedTime(bytes32)': FunctionFragment - 'rateForCurrency(bytes32)': FunctionFragment - 'rateIsFlagged(bytes32)': FunctionFragment - 'rateIsInvalid(bytes32)': FunctionFragment - 'rateIsStale(bytes32)': FunctionFragment - 'rateStalePeriod()': FunctionFragment - 'rateWithSafetyChecks(bytes32)': FunctionFragment - 'ratesAndInvalidForCurrencies(bytes32[])': FunctionFragment - 'ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)': FunctionFragment - 'ratesForCurrencies(bytes32[])': FunctionFragment - 'rebuildCache()': FunctionFragment - 'removeAggregator(bytes32)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'synthTooVolatileForAtomicExchange(bytes32)': FunctionFragment - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'addAggregator' - | 'aggregatorKeys' - | 'aggregatorWarningFlags' - | 'aggregators' - | 'anyRateIsInvalid' - | 'anyRateIsInvalidAtRound' - | 'currenciesUsingAggregator' - | 'currencyKeyDecimals' - | 'effectiveAtomicValueAndRates' - | 'effectiveValue' - | 'effectiveValueAndRates' - | 'effectiveValueAndRatesAtRound' - | 'getCurrentRoundId' - | 'getLastRoundIdBeforeElapsedSecs' - | 'isResolverCached' - | 'lastRateUpdateTimes' - | 'lastRateUpdateTimesForCurrencies' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rateAndInvalid' - | 'rateAndTimestampAtRound' - | 'rateAndUpdatedTime' - | 'rateForCurrency' - | 'rateIsFlagged' - | 'rateIsInvalid' - | 'rateIsStale' - | 'rateStalePeriod' - | 'rateWithSafetyChecks' - | 'ratesAndInvalidForCurrencies' - | 'ratesAndUpdatedTimeForCurrencyLastNRounds' - | 'ratesForCurrencies' - | 'rebuildCache' - | 'removeAggregator' - | 'resolver' - | 'resolverAddressesRequired' - | 'synthTooVolatileForAtomicExchange(bytes32)' - | 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'addAggregator', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'aggregatorKeys', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'aggregatorWarningFlags', values?: undefined): string - encodeFunctionData(functionFragment: 'aggregators', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'anyRateIsInvalid', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'anyRateIsInvalidAtRound', - values: [PromiseOrValue[], PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'currenciesUsingAggregator', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'currencyKeyDecimals', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'effectiveAtomicValueAndRates', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'effectiveValue', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'effectiveValueAndRates', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'effectiveValueAndRatesAtRound', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'getCurrentRoundId', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getLastRoundIdBeforeElapsedSecs', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData( - functionFragment: 'lastRateUpdateTimes', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'lastRateUpdateTimesForCurrencies', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'rateAndInvalid', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'rateAndTimestampAtRound', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'rateAndUpdatedTime', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'rateForCurrency', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'rateIsFlagged', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rateIsInvalid', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rateIsStale', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rateStalePeriod', values?: undefined): string - encodeFunctionData( - functionFragment: 'rateWithSafetyChecks', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'ratesAndInvalidForCurrencies', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'ratesForCurrencies', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData( - functionFragment: 'removeAggregator', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', - values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregatorKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregatorWarningFlags', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregators', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anyRateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anyRateIsInvalidAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currenciesUsingAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currencyKeyDecimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveAtomicValueAndRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValueAndRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValueAndRatesAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getCurrentRoundId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getLastRoundIdBeforeElapsedSecs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastRateUpdateTimes', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'lastRateUpdateTimesForCurrencies', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndTimestampAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndUpdatedTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateForCurrency', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsFlagged', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsStale', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateStalePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateWithSafetyChecks', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'ratesAndInvalidForCurrencies', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'ratesForCurrencies', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', - data: BytesLike - ): Result - - events: { - 'AggregatorAdded(bytes32,address)': EventFragment - 'AggregatorRemoved(bytes32,address)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AggregatorAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AggregatorRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "addAggregator(bytes32,address)": FunctionFragment; + "aggregatorKeys(uint256)": FunctionFragment; + "aggregatorWarningFlags()": FunctionFragment; + "aggregators(bytes32)": FunctionFragment; + "anyRateIsInvalid(bytes32[])": FunctionFragment; + "anyRateIsInvalidAtRound(bytes32[],uint256[])": FunctionFragment; + "currenciesUsingAggregator(address)": FunctionFragment; + "currencyKeyDecimals(bytes32)": FunctionFragment; + "effectiveAtomicValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValue(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)": FunctionFragment; + "getCurrentRoundId(bytes32)": FunctionFragment; + "getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "lastRateUpdateTimes(bytes32)": FunctionFragment; + "lastRateUpdateTimesForCurrencies(bytes32[])": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rateAndInvalid(bytes32)": FunctionFragment; + "rateAndTimestampAtRound(bytes32,uint256)": FunctionFragment; + "rateAndUpdatedTime(bytes32)": FunctionFragment; + "rateForCurrency(bytes32)": FunctionFragment; + "rateIsFlagged(bytes32)": FunctionFragment; + "rateIsInvalid(bytes32)": FunctionFragment; + "rateIsStale(bytes32)": FunctionFragment; + "rateStalePeriod()": FunctionFragment; + "rateWithSafetyChecks(bytes32)": FunctionFragment; + "ratesAndInvalidForCurrencies(bytes32[])": FunctionFragment; + "ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)": FunctionFragment; + "ratesForCurrencies(bytes32[])": FunctionFragment; + "rebuildCache()": FunctionFragment; + "removeAggregator(bytes32)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "synthTooVolatileForAtomicExchange(bytes32)": FunctionFragment; + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "addAggregator" + | "aggregatorKeys" + | "aggregatorWarningFlags" + | "aggregators" + | "anyRateIsInvalid" + | "anyRateIsInvalidAtRound" + | "currenciesUsingAggregator" + | "currencyKeyDecimals" + | "effectiveAtomicValueAndRates" + | "effectiveValue" + | "effectiveValueAndRates" + | "effectiveValueAndRatesAtRound" + | "getCurrentRoundId" + | "getLastRoundIdBeforeElapsedSecs" + | "isResolverCached" + | "lastRateUpdateTimes" + | "lastRateUpdateTimesForCurrencies" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rateAndInvalid" + | "rateAndTimestampAtRound" + | "rateAndUpdatedTime" + | "rateForCurrency" + | "rateIsFlagged" + | "rateIsInvalid" + | "rateIsStale" + | "rateStalePeriod" + | "rateWithSafetyChecks" + | "ratesAndInvalidForCurrencies" + | "ratesAndUpdatedTimeForCurrencyLastNRounds" + | "ratesForCurrencies" + | "rebuildCache" + | "removeAggregator" + | "resolver" + | "resolverAddressesRequired" + | "synthTooVolatileForAtomicExchange(bytes32)" + | "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "addAggregator", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "aggregatorKeys", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "aggregatorWarningFlags", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "aggregators", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "anyRateIsInvalid", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "anyRateIsInvalidAtRound", + values: [BytesLike[], BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "currenciesUsingAggregator", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "currencyKeyDecimals", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveAtomicValueAndRates", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValue", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValueAndRates", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValueAndRatesAtRound", + values: [BytesLike, BigNumberish, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getCurrentRoundId", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getLastRoundIdBeforeElapsedSecs", + values: [BytesLike, BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastRateUpdateTimes", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "lastRateUpdateTimesForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rateAndInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateAndTimestampAtRound", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rateAndUpdatedTime", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateForCurrency", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsFlagged", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsStale", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateStalePeriod", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rateWithSafetyChecks", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "ratesAndInvalidForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", + values: [BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "ratesForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "removeAggregator", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", + values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addAggregator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregatorKeys", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregatorWarningFlags", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregators", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "anyRateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "anyRateIsInvalidAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currenciesUsingAggregator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currencyKeyDecimals", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveAtomicValueAndRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValueAndRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValueAndRatesAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getCurrentRoundId", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLastRoundIdBeforeElapsedSecs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastRateUpdateTimes", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastRateUpdateTimesForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rateAndInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateAndTimestampAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateAndUpdatedTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateForCurrency", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsFlagged", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsStale", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateStalePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateWithSafetyChecks", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesAndInvalidForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "removeAggregator", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", + data: BytesLike + ): Result; + + events: { + "AggregatorAdded(bytes32,address)": EventFragment; + "AggregatorRemoved(bytes32,address)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AggregatorAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AggregatorRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface AggregatorAddedEventObject { - currencyKey: string - aggregator: string + currencyKey: string; + aggregator: string; } -export type AggregatorAddedEvent = TypedEvent<[string, string], AggregatorAddedEventObject> +export type AggregatorAddedEvent = TypedEvent< + [string, string], + AggregatorAddedEventObject +>; -export type AggregatorAddedEventFilter = TypedEventFilter +export type AggregatorAddedEventFilter = TypedEventFilter; export interface AggregatorRemovedEventObject { - currencyKey: string - aggregator: string + currencyKey: string; + aggregator: string; } -export type AggregatorRemovedEvent = TypedEvent<[string, string], AggregatorRemovedEventObject> +export type AggregatorRemovedEvent = TypedEvent< + [string, string], + AggregatorRemovedEventObject +>; -export type AggregatorRemovedEventFilter = TypedEventFilter +export type AggregatorRemovedEventFilter = + TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ExchangeRates extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ExchangeRatesInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - addAggregator( - currencyKey: PromiseOrValue, - aggregatorAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - aggregatorKeys(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]> - - aggregators(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - anyRateIsInvalid( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[boolean]> - - anyRateIsInvalidAtRound( - currencyKeys: PromiseOrValue[], - roundIds: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[boolean]> - - currenciesUsingAggregator( - aggregator: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[]] & { currencies: string[] }> - - currencyKeyDecimals( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[number]> - - effectiveAtomicValueAndRates( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { value: BigNumber }> - - effectiveValueAndRates( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - roundIdForSrc: PromiseOrValue, - roundIdForDest: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getLastRoundIdBeforeElapsedSecs( - currencyKey: PromiseOrValue, - startingRoundId: PromiseOrValue, - startingTimestamp: PromiseOrValue, - timediff: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - lastRateUpdateTimes( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - lastRateUpdateTimesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber[]]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rateAndInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - rateIsFlagged( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - rateIsInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - rateIsStale( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]> - - rateWithSafetyChecks( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: PromiseOrValue, - numRounds: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber[]]> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - removeAggregator( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise<[boolean]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - addAggregator( - currencyKey: PromiseOrValue, - aggregatorAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - aggregatorKeys(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - anyRateIsInvalid( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - anyRateIsInvalidAtRound( - currencyKeys: PromiseOrValue[], - roundIds: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator( - aggregator: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currencyKeyDecimals(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - roundIdForSrc: PromiseOrValue, - roundIdForDest: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: PromiseOrValue, - startingRoundId: PromiseOrValue, - startingTimestamp: PromiseOrValue, - timediff: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsFlagged(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - rateIsInvalid(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - rateIsStale(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: PromiseOrValue, - numRounds: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - removeAggregator( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - addAggregator( - currencyKey: PromiseOrValue, - aggregatorAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - aggregatorKeys(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - anyRateIsInvalid( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - anyRateIsInvalidAtRound( - currencyKeys: PromiseOrValue[], - roundIds: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator( - aggregator: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currencyKeyDecimals(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - roundIdForSrc: PromiseOrValue, - roundIdForDest: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: PromiseOrValue, - startingRoundId: PromiseOrValue, - startingTimestamp: PromiseOrValue, - timediff: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsFlagged( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsStale(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean, boolean] & { - rate: BigNumber - broken: boolean - staleOrInvalid: boolean - } - > - - ratesAndInvalidForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: PromiseOrValue, - numRounds: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - removeAggregator( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AggregatorAdded(bytes32,address)'( - currencyKey?: null, - aggregator?: null - ): AggregatorAddedEventFilter - AggregatorAdded(currencyKey?: null, aggregator?: null): AggregatorAddedEventFilter - - 'AggregatorRemoved(bytes32,address)'( - currencyKey?: null, - aggregator?: null - ): AggregatorRemovedEventFilter - AggregatorRemoved(currencyKey?: null, aggregator?: null): AggregatorRemovedEventFilter - - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - addAggregator( - currencyKey: PromiseOrValue, - aggregatorAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - aggregatorKeys( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - anyRateIsInvalid( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - anyRateIsInvalidAtRound( - currencyKeys: PromiseOrValue[], - roundIds: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator( - aggregator: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currencyKeyDecimals( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveAtomicValueAndRates( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValue( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - roundIdForSrc: PromiseOrValue, - roundIdForDest: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getCurrentRoundId( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: PromiseOrValue, - startingRoundId: PromiseOrValue, - startingTimestamp: PromiseOrValue, - timediff: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateAndTimestampAtRound( - currencyKey: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateAndUpdatedTime( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateForCurrency( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsFlagged( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsStale( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: PromiseOrValue, - numRounds: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - ratesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - removeAggregator( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - addAggregator( - currencyKey: PromiseOrValue, - aggregatorAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - aggregatorKeys( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - anyRateIsInvalid( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - anyRateIsInvalidAtRound( - currencyKeys: PromiseOrValue[], - roundIds: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator( - aggregator: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currencyKeyDecimals( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveAtomicValueAndRates( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValue( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - roundIdForSrc: PromiseOrValue, - roundIdForDest: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getCurrentRoundId( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: PromiseOrValue, - startingRoundId: PromiseOrValue, - startingTimestamp: PromiseOrValue, - timediff: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateAndTimestampAtRound( - currencyKey: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateAndUpdatedTime( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateForCurrency( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsFlagged( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateIsStale( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: PromiseOrValue, - numRounds: PromiseOrValue, - roundId: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - ratesForCurrencies( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - removeAggregator( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ExchangeRatesInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]>; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]>; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[boolean]>; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise<[boolean]>; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise<[string[]] & { currencies: string[] }>; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[number]>; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { value: BigNumber }>; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]>; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise<[boolean]>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: CallOverrides + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean, boolean] & { + rate: BigNumber; + broken: boolean; + staleOrInvalid: boolean; + } + >; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AggregatorAdded(bytes32,address)"( + currencyKey?: null, + aggregator?: null + ): AggregatorAddedEventFilter; + AggregatorAdded( + currencyKey?: null, + aggregator?: null + ): AggregatorAddedEventFilter; + + "AggregatorRemoved(bytes32,address)"( + currencyKey?: null, + aggregator?: null + ): AggregatorRemovedEventFilter; + AggregatorRemoved( + currencyKey?: null, + aggregator?: null + ): AggregatorRemovedEventFilter; + + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags( + overrides?: CallOverrides + ): Promise; + + aggregators( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Exchanger.ts b/packages/sdk/src/contracts/types/Exchanger.ts index dd916f82af..d73b36420d 100644 --- a/packages/sdk/src/contracts/types/Exchanger.ts +++ b/packages/sdk/src/contracts/types/Exchanger.ts @@ -2,959 +2,1110 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ExchangerInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'calculateAmountAfterSettlement(address,bytes32,uint256,uint256)': FunctionFragment - 'dynamicFeeRateForExchange(bytes32,bytes32)': FunctionFragment - 'exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)': FunctionFragment - 'exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)': FunctionFragment - 'feeRateForExchange(bytes32,bytes32)': FunctionFragment - 'getAmountsForExchange(uint256,bytes32,bytes32)': FunctionFragment - 'hasWaitingPeriodOrSettlementOwing(address,bytes32)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'isSynthRateInvalid(bytes32)': FunctionFragment - 'lastExchangeRate(bytes32)': FunctionFragment - 'maxSecsLeftInWaitingPeriod(address,bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'priceDeviationThresholdFactor()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'settle(address,bytes32)': FunctionFragment - 'settlementOwing(address,bytes32)': FunctionFragment - 'tradingRewardsEnabled()': FunctionFragment - 'waitingPeriodSecs()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'calculateAmountAfterSettlement' - | 'dynamicFeeRateForExchange' - | 'exchange' - | 'exchangeAtomically' - | 'feeRateForExchange' - | 'getAmountsForExchange' - | 'hasWaitingPeriodOrSettlementOwing' - | 'isResolverCached' - | 'isSynthRateInvalid' - | 'lastExchangeRate' - | 'maxSecsLeftInWaitingPeriod' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'priceDeviationThresholdFactor' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'settle' - | 'settlementOwing' - | 'tradingRewardsEnabled' - | 'waitingPeriodSecs' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'calculateAmountAfterSettlement', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'dynamicFeeRateForExchange', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'exchange', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeAtomically', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'feeRateForExchange', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getAmountsForExchange', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'hasWaitingPeriodOrSettlementOwing', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData( - functionFragment: 'isSynthRateInvalid', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'lastExchangeRate', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'maxSecsLeftInWaitingPeriod', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'priceDeviationThresholdFactor', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'settle', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'settlementOwing', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'tradingRewardsEnabled', values?: undefined): string - encodeFunctionData(functionFragment: 'waitingPeriodSecs', values?: undefined): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'calculateAmountAfterSettlement', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'dynamicFeeRateForExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'feeRateForExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAmountsForExchange', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'hasWaitingPeriodOrSettlementOwing', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isSynthRateInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastExchangeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxSecsLeftInWaitingPeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'priceDeviationThresholdFactor', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settlementOwing', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tradingRewardsEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'waitingPeriodSecs', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)': EventFragment - 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeEntryAppended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeEntrySettled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "calculateAmountAfterSettlement(address,bytes32,uint256,uint256)": FunctionFragment; + "dynamicFeeRateForExchange(bytes32,bytes32)": FunctionFragment; + "exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)": FunctionFragment; + "exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)": FunctionFragment; + "feeRateForExchange(bytes32,bytes32)": FunctionFragment; + "getAmountsForExchange(uint256,bytes32,bytes32)": FunctionFragment; + "hasWaitingPeriodOrSettlementOwing(address,bytes32)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "isSynthRateInvalid(bytes32)": FunctionFragment; + "lastExchangeRate(bytes32)": FunctionFragment; + "maxSecsLeftInWaitingPeriod(address,bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "priceDeviationThresholdFactor()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "settle(address,bytes32)": FunctionFragment; + "settlementOwing(address,bytes32)": FunctionFragment; + "tradingRewardsEnabled()": FunctionFragment; + "waitingPeriodSecs()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "calculateAmountAfterSettlement" + | "dynamicFeeRateForExchange" + | "exchange" + | "exchangeAtomically" + | "feeRateForExchange" + | "getAmountsForExchange" + | "hasWaitingPeriodOrSettlementOwing" + | "isResolverCached" + | "isSynthRateInvalid" + | "lastExchangeRate" + | "maxSecsLeftInWaitingPeriod" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "priceDeviationThresholdFactor" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "settle" + | "settlementOwing" + | "tradingRewardsEnabled" + | "waitingPeriodSecs" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "calculateAmountAfterSettlement", + values: [string, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "dynamicFeeRateForExchange", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchange", + values: [ + string, + string, + BytesLike, + BigNumberish, + BytesLike, + string, + boolean, + string, + BytesLike + ] + ): string; + encodeFunctionData( + functionFragment: "exchangeAtomically", + values: [ + string, + BytesLike, + BigNumberish, + BytesLike, + string, + BytesLike, + BigNumberish + ] + ): string; + encodeFunctionData( + functionFragment: "feeRateForExchange", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getAmountsForExchange", + values: [BigNumberish, BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "hasWaitingPeriodOrSettlementOwing", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isSynthRateInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "lastExchangeRate", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxSecsLeftInWaitingPeriod", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "priceDeviationThresholdFactor", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "settle", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "settlementOwing", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "tradingRewardsEnabled", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "waitingPeriodSecs", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "calculateAmountAfterSettlement", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "dynamicFeeRateForExchange", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "exchangeAtomically", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "feeRateForExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAmountsForExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "hasWaitingPeriodOrSettlementOwing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isSynthRateInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastExchangeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxSecsLeftInWaitingPeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "priceDeviationThresholdFactor", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "settlementOwing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tradingRewardsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "waitingPeriodSecs", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)": EventFragment; + "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeEntryAppended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeEntrySettled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface ExchangeEntryAppendedEventObject { - account: string - src: string - amount: BigNumber - dest: string - amountReceived: BigNumber - exchangeFeeRate: BigNumber - roundIdForSrc: BigNumber - roundIdForDest: BigNumber + account: string; + src: string; + amount: BigNumber; + dest: string; + amountReceived: BigNumber; + exchangeFeeRate: BigNumber; + roundIdForSrc: BigNumber; + roundIdForDest: BigNumber; } export type ExchangeEntryAppendedEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber], - ExchangeEntryAppendedEventObject -> - -export type ExchangeEntryAppendedEventFilter = TypedEventFilter + [ + string, + string, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + ExchangeEntryAppendedEventObject +>; + +export type ExchangeEntryAppendedEventFilter = + TypedEventFilter; export interface ExchangeEntrySettledEventObject { - from: string - src: string - amount: BigNumber - dest: string - reclaim: BigNumber - rebate: BigNumber - srcRoundIdAtPeriodEnd: BigNumber - destRoundIdAtPeriodEnd: BigNumber - exchangeTimestamp: BigNumber + from: string; + src: string; + amount: BigNumber; + dest: string; + reclaim: BigNumber; + rebate: BigNumber; + srcRoundIdAtPeriodEnd: BigNumber; + destRoundIdAtPeriodEnd: BigNumber; + exchangeTimestamp: BigNumber; } export type ExchangeEntrySettledEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - ExchangeEntrySettledEventObject -> - -export type ExchangeEntrySettledEventFilter = TypedEventFilter + [ + string, + string, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + ExchangeEntrySettledEventObject +>; + +export type ExchangeEntrySettledEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface Exchanger extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ExchangerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - calculateAmountAfterSettlement( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - refunded: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }> - - dynamicFeeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: PromiseOrValue, - from: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - destinationAddress: PromiseOrValue, - virtualSynth: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - arg6: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getAmountsForExchange( - sourceAmount: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - isSynthRateInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - lastExchangeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - maxSecsLeftInWaitingPeriod( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise<[BigNumber]> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - settle( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]> - - waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - calculateAmountAfterSettlement( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - refunded: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: PromiseOrValue, - from: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - destinationAddress: PromiseOrValue, - virtualSynth: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - arg6: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastExchangeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - maxSecsLeftInWaitingPeriod( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - calculateAmountAfterSettlement( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - refunded: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: PromiseOrValue, - from: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - destinationAddress: PromiseOrValue, - virtualSynth: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> - - exchangeAtomically( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - arg6: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - feeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastExchangeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - maxSecsLeftInWaitingPeriod( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber - refunded: BigNumber - numEntriesSettled: BigNumber - } - > - - settlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)'( - account?: PromiseOrValue | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter - ExchangeEntryAppended( - account?: PromiseOrValue | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter - - 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)'( - from?: PromiseOrValue | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter - ExchangeEntrySettled( - from?: PromiseOrValue | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - calculateAmountAfterSettlement( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - refunded: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchange( - exchangeForAddress: PromiseOrValue, - from: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - destinationAddress: PromiseOrValue, - virtualSynth: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - arg6: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - hasWaitingPeriodOrSettlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastExchangeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - maxSecsLeftInWaitingPeriod( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - calculateAmountAfterSettlement( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - refunded: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchange( - exchangeForAddress: PromiseOrValue, - from: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - destinationAddress: PromiseOrValue, - virtualSynth: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - arg2: PromiseOrValue, - arg3: PromiseOrValue, - arg4: PromiseOrValue, - arg5: PromiseOrValue, - arg6: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - hasWaitingPeriodOrSettlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - lastExchangeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - maxSecsLeftInWaitingPeriod( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settlementOwing( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ExchangerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }>; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]>; + + waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } + >; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: CallOverrides + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber; + refunded: BigNumber; + numEntriesSettled: BigNumber; + } + >; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)"( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter; + ExchangeEntryAppended( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter; + + "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)"( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter; + ExchangeEntrySettled( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + tradingRewardsEnabled( + overrides?: CallOverrides + ): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarket.ts b/packages/sdk/src/contracts/types/FuturesMarket.ts index bcf10f3640..dc4be5c5d5 100644 --- a/packages/sdk/src/contracts/types/FuturesMarket.ts +++ b/packages/sdk/src/contracts/types/FuturesMarket.ts @@ -2,1299 +2,1574 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface FuturesMarketInterface extends utils.Interface { - functions: { - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'cancelNextPriceOrder(address)': FunctionFragment - 'closePosition()': FunctionFragment - 'closePositionWithTracking(bytes32)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'executeNextPriceOrder(address)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'liquidatePosition(address)': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'modifyPosition(int256)': FunctionFragment - 'modifyPositionWithTracking(int256,bytes32)': FunctionFragment - 'nextPriceOrders(address)': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256)': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'recomputeFunding()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'submitNextPriceOrder(int256)': FunctionFragment - 'submitNextPriceOrderWithTracking(int256,bytes32)': FunctionFragment - 'transferMargin(int256)': FunctionFragment - 'unrecordedFunding()': FunctionFragment - 'withdrawAllMargin()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'cancelNextPriceOrder' - | 'closePosition' - | 'closePositionWithTracking' - | 'currentFundingRate' - | 'executeNextPriceOrder' - | 'fundingLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isResolverCached' - | 'liquidatePosition' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'modifyPosition' - | 'modifyPositionWithTracking' - | 'nextPriceOrders' - | 'notionalValue' - | 'orderFee' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'rebuildCache' - | 'recomputeFunding' - | 'remainingMargin' - | 'resolver' - | 'resolverAddressesRequired' - | 'submitNextPriceOrder' - | 'submitNextPriceOrderWithTracking' - | 'transferMargin' - | 'unrecordedFunding' - | 'withdrawAllMargin' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accessibleMargin', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'cancelNextPriceOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'closePosition', values?: undefined): string - encodeFunctionData( - functionFragment: 'closePositionWithTracking', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData( - functionFragment: 'executeNextPriceOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData( - functionFragment: 'fundingSequence', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData( - functionFragment: 'liquidatePosition', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData( - functionFragment: 'modifyPosition', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'modifyPositionWithTracking', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nextPriceOrders', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'notionalValue', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'orderFee', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'positions', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'postTradeDetails', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'profitLoss', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'submitNextPriceOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'submitNextPriceOrderWithTracking', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferMargin', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string - - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelNextPriceOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeNextPriceOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextPriceOrders', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitNextPriceOrder', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitNextPriceOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'FundingRecomputed(int256,uint256,uint256)': EventFragment - 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment - 'MarginTransferred(address,int256)': EventFragment - 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)': EventFragment - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'NextPriceOrderRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'NextPriceOrderSubmitted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment + functions: { + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "cancelNextPriceOrder(address)": FunctionFragment; + "closePosition()": FunctionFragment; + "closePositionWithTracking(bytes32)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "executeNextPriceOrder(address)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "liquidatePosition(address)": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "modifyPosition(int256)": FunctionFragment; + "modifyPositionWithTracking(int256,bytes32)": FunctionFragment; + "nextPriceOrders(address)": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256)": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "recomputeFunding()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "submitNextPriceOrder(int256)": FunctionFragment; + "submitNextPriceOrderWithTracking(int256,bytes32)": FunctionFragment; + "transferMargin(int256)": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + "withdrawAllMargin()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "cancelNextPriceOrder" + | "closePosition" + | "closePositionWithTracking" + | "currentFundingRate" + | "executeNextPriceOrder" + | "fundingLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isResolverCached" + | "liquidatePosition" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "modifyPosition" + | "modifyPositionWithTracking" + | "nextPriceOrders" + | "notionalValue" + | "orderFee" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "rebuildCache" + | "recomputeFunding" + | "remainingMargin" + | "resolver" + | "resolverAddressesRequired" + | "submitNextPriceOrder" + | "submitNextPriceOrderWithTracking" + | "transferMargin" + | "unrecordedFunding" + | "withdrawAllMargin" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelNextPriceOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "closePosition", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "closePositionWithTracking", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "executeNextPriceOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "modifyPosition", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyPositionWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nextPriceOrders", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recomputeFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "submitNextPriceOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitNextPriceOrderWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "transferMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "withdrawAllMargin", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "modifyPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyPositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextPriceOrders", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recomputeFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitNextPriceOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawAllMargin", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "FundingRecomputed(int256,uint256,uint256)": EventFragment; + "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; + "MarginTransferred(address,int256)": EventFragment; + "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "PositionLiquidated(uint256,address,address,int256,uint256,uint256)": EventFragment; + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "NextPriceOrderRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "NextPriceOrderSubmitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface FundingRecomputedEventObject { - funding: BigNumber - index: BigNumber - timestamp: BigNumber + funding: BigNumber; + index: BigNumber; + timestamp: BigNumber; } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject -> + [BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +>; -export type FundingRecomputedEventFilter = TypedEventFilter +export type FundingRecomputedEventFilter = + TypedEventFilter; export interface FuturesTrackingEventObject { - trackingCode: string - baseAsset: string - marketKey: string - sizeDelta: BigNumber - fee: BigNumber + trackingCode: string; + baseAsset: string; + marketKey: string; + sizeDelta: BigNumber; + fee: BigNumber; } export type FuturesTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - FuturesTrackingEventObject -> + [string, string, string, BigNumber, BigNumber], + FuturesTrackingEventObject +>; -export type FuturesTrackingEventFilter = TypedEventFilter +export type FuturesTrackingEventFilter = TypedEventFilter; export interface MarginTransferredEventObject { - account: string - marginDelta: BigNumber + account: string; + marginDelta: BigNumber; } -export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> +export type MarginTransferredEvent = TypedEvent< + [string, BigNumber], + MarginTransferredEventObject +>; -export type MarginTransferredEventFilter = TypedEventFilter +export type MarginTransferredEventFilter = + TypedEventFilter; export interface NextPriceOrderRemovedEventObject { - account: string - currentRoundId: BigNumber - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + currentRoundId: BigNumber; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type NextPriceOrderRemovedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderRemovedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderRemovedEventObject +>; -export type NextPriceOrderRemovedEventFilter = TypedEventFilter +export type NextPriceOrderRemovedEventFilter = + TypedEventFilter; export interface NextPriceOrderSubmittedEventObject { - account: string - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type NextPriceOrderSubmittedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderSubmittedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderSubmittedEventObject +>; -export type NextPriceOrderSubmittedEventFilter = TypedEventFilter +export type NextPriceOrderSubmittedEventFilter = + TypedEventFilter; export interface PositionLiquidatedEventObject { - id: BigNumber - account: string - liquidator: string - size: BigNumber - price: BigNumber - fee: BigNumber + id: BigNumber; + account: string; + liquidator: string; + size: BigNumber; + price: BigNumber; + fee: BigNumber; } export type PositionLiquidatedEvent = TypedEvent< - [BigNumber, string, string, BigNumber, BigNumber, BigNumber], - PositionLiquidatedEventObject -> + [BigNumber, string, string, BigNumber, BigNumber, BigNumber], + PositionLiquidatedEventObject +>; -export type PositionLiquidatedEventFilter = TypedEventFilter +export type PositionLiquidatedEventFilter = + TypedEventFilter; export interface PositionModifiedEventObject { - id: BigNumber - account: string - margin: BigNumber - size: BigNumber - tradeSize: BigNumber - lastPrice: BigNumber - fundingIndex: BigNumber - fee: BigNumber + id: BigNumber; + account: string; + margin: BigNumber; + size: BigNumber; + tradeSize: BigNumber; + lastPrice: BigNumber; + fundingIndex: BigNumber; + fee: BigNumber; } export type PositionModifiedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionModifiedEventObject -> - -export type PositionModifiedEventFilter = TypedEventFilter + [ + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionModifiedEventObject +>; + +export type PositionModifiedEventFilter = + TypedEventFilter; export interface FuturesMarket extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: FuturesMarketInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string]> - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]> - - cancelNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> - - executeNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> - - fundingSequence( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string]> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> - - modifyPosition( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nextPriceOrders( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - submitNextPriceOrder( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nextPriceOrders( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelNextPriceOrder(account: PromiseOrValue, overrides?: CallOverrides): Promise - - closePosition(overrides?: CallOverrides): Promise - - closePositionWithTracking( - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder(account: PromiseOrValue, overrides?: CallOverrides): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nextPriceOrders( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache(overrides?: CallOverrides): Promise - - recomputeFunding(overrides?: CallOverrides): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'FundingRecomputed(int256,uint256,uint256)'( - funding?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - FundingRecomputed(funding?: null, index?: null, timestamp?: null): FundingRecomputedEventFilter - - 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)'( - trackingCode?: PromiseOrValue | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter - FuturesTracking( - trackingCode?: PromiseOrValue | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter - - 'MarginTransferred(address,int256)'( - account?: PromiseOrValue | null, - marginDelta?: null - ): MarginTransferredEventFilter - MarginTransferred( - account?: PromiseOrValue | null, - marginDelta?: null - ): MarginTransferredEventFilter - - 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)'( - account?: PromiseOrValue | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter - NextPriceOrderRemoved( - account?: PromiseOrValue | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter - - 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)'( - account?: PromiseOrValue | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter - NextPriceOrderSubmitted( - account?: PromiseOrValue | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter - - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)'( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - liquidator?: PromiseOrValue | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter - PositionLiquidated( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - liquidator?: PromiseOrValue | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter - - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)'( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter - PositionModified( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter - } - - estimateGas: { - accessibleMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise - - accruedFunding(account: PromiseOrValue, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - closePositionWithTracking( - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice(account: PromiseOrValue, overrides?: CallOverrides): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nextPriceOrders(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - notionalValue(account: PromiseOrValue, overrides?: CallOverrides): Promise - - orderFee(sizeDelta: PromiseOrValue, overrides?: CallOverrides): Promise - - positions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - profitLoss(account: PromiseOrValue, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - recomputeFunding(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - remainingMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin(overrides?: Overrides & { from?: PromiseOrValue }): Promise - } - - populateTransaction: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - cancelNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: FuturesMarketInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string]>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string]>; + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + closePosition(overrides?: CallOverrides): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache(overrides?: CallOverrides): Promise; + + recomputeFunding(overrides?: CallOverrides): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin(overrides?: CallOverrides): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "FundingRecomputed(int256,uint256,uint256)"( + funding?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + FundingRecomputed( + funding?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + + "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)"( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter; + FuturesTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter; + + "MarginTransferred(address,int256)"( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + MarginTransferred( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + + "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter; + NextPriceOrderRemoved( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter; + + "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter; + NextPriceOrderSubmitted( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter; + + "PositionLiquidated(uint256,address,address,int256,uint256,uint256)"( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter; + PositionLiquidated( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter; + + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)"( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter; + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter; + }; + + estimateGas: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise; - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - marketKey(overrides?: CallOverrides): Promise + positions(arg0: string, overrides?: CallOverrides): Promise; - marketSize(overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - marketSizes(overrides?: CallOverrides): Promise + profitLoss(account: string, overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - modifyPosition( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - nextPriceOrders( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + resolver(overrides?: CallOverrides): Promise; - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - orderFee( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - positions( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - postTradeDetails( - sizeDelta: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + unrecordedFunding(overrides?: CallOverrides): Promise; - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + populateTransaction: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + baseAsset(overrides?: CallOverrides): Promise; - submitNextPriceOrder( - sizeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - submitNextPriceOrderWithTracking( - sizeDelta: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarketData.ts b/packages/sdk/src/contracts/types/FuturesMarketData.ts index b037dc9094..62511c5ad3 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketData.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketData.ts @@ -2,575 +2,642 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace FuturesMarketData { - export type FeeRatesStruct = { - takerFee: PromiseOrValue - makerFee: PromiseOrValue - takerFeeNextPrice: PromiseOrValue - makerFeeNextPrice: PromiseOrValue - } - - export type FeeRatesStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - } - - export type MarketSummaryStruct = { - market: PromiseOrValue - asset: PromiseOrValue - key: PromiseOrValue - maxLeverage: PromiseOrValue - price: PromiseOrValue - marketSize: PromiseOrValue - marketSkew: PromiseOrValue - marketDebt: PromiseOrValue - currentFundingRate: PromiseOrValue - feeRates: FuturesMarketData.FeeRatesStruct - } - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - FuturesMarketData.FeeRatesStructOutput - ] & { - market: string - asset: string - key: string - maxLeverage: BigNumber - price: BigNumber - marketSize: BigNumber - marketSkew: BigNumber - marketDebt: BigNumber - currentFundingRate: BigNumber - feeRates: FuturesMarketData.FeeRatesStructOutput - } - - export type FuturesGlobalsStruct = { - minInitialMargin: PromiseOrValue - liquidationFeeRatio: PromiseOrValue - liquidationBufferRatio: PromiseOrValue - minKeeperFee: PromiseOrValue - } - - export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - minInitialMargin: BigNumber - liquidationFeeRatio: BigNumber - liquidationBufferRatio: BigNumber - minKeeperFee: BigNumber - } - - export type MarketLimitsStruct = { - maxLeverage: PromiseOrValue - maxMarketValueUSD: PromiseOrValue - } - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - } - - export type FundingParametersStruct = { - maxFundingRate: PromiseOrValue - skewScaleUSD: PromiseOrValue - } - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } - - export type SidesStruct = { - long: PromiseOrValue - short: PromiseOrValue - } - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber - short: BigNumber - } - - export type MarketSizeDetailsStruct = { - marketSize: PromiseOrValue - sides: FuturesMarketData.SidesStruct - marketDebt: PromiseOrValue - marketSkew: PromiseOrValue - } - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - FuturesMarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber - sides: FuturesMarketData.SidesStructOutput - marketDebt: BigNumber - marketSkew: BigNumber - } - - export type PriceDetailsStruct = { - price: PromiseOrValue - invalid: PromiseOrValue - } - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber - invalid: boolean - } - - export type MarketDataStruct = { - market: PromiseOrValue - baseAsset: PromiseOrValue - marketKey: PromiseOrValue - feeRates: FuturesMarketData.FeeRatesStruct - limits: FuturesMarketData.MarketLimitsStruct - fundingParameters: FuturesMarketData.FundingParametersStruct - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct - priceDetails: FuturesMarketData.PriceDetailsStruct - } - - export type MarketDataStructOutput = [ - string, - string, - string, - FuturesMarketData.FeeRatesStructOutput, - FuturesMarketData.MarketLimitsStructOutput, - FuturesMarketData.FundingParametersStructOutput, - FuturesMarketData.MarketSizeDetailsStructOutput, - FuturesMarketData.PriceDetailsStructOutput - ] & { - market: string - baseAsset: string - marketKey: string - feeRates: FuturesMarketData.FeeRatesStructOutput - limits: FuturesMarketData.MarketLimitsStructOutput - fundingParameters: FuturesMarketData.FundingParametersStructOutput - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput - priceDetails: FuturesMarketData.PriceDetailsStructOutput - } - - export type PositionDataStruct = { - position: IFuturesMarketBaseTypes.PositionStruct - notionalValue: PromiseOrValue - profitLoss: PromiseOrValue - accruedFunding: PromiseOrValue - remainingMargin: PromiseOrValue - accessibleMargin: PromiseOrValue - liquidationPrice: PromiseOrValue - canLiquidatePosition: PromiseOrValue - } - - export type PositionDataStructOutput = [ - IFuturesMarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IFuturesMarketBaseTypes.PositionStructOutput - notionalValue: BigNumber - profitLoss: BigNumber - accruedFunding: BigNumber - remainingMargin: BigNumber - accessibleMargin: BigNumber - liquidationPrice: BigNumber - canLiquidatePosition: boolean - } + export type FeeRatesStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeNextPrice: BigNumberish; + makerFeeNextPrice: BigNumberish; + }; + + export type FeeRatesStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + }; + + export type MarketSummaryStruct = { + market: string; + asset: BytesLike; + key: BytesLike; + maxLeverage: BigNumberish; + price: BigNumberish; + marketSize: BigNumberish; + marketSkew: BigNumberish; + marketDebt: BigNumberish; + currentFundingRate: BigNumberish; + feeRates: FuturesMarketData.FeeRatesStruct; + }; + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + FuturesMarketData.FeeRatesStructOutput + ] & { + market: string; + asset: string; + key: string; + maxLeverage: BigNumber; + price: BigNumber; + marketSize: BigNumber; + marketSkew: BigNumber; + marketDebt: BigNumber; + currentFundingRate: BigNumber; + feeRates: FuturesMarketData.FeeRatesStructOutput; + }; + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish; + liquidationFeeRatio: BigNumberish; + liquidationBufferRatio: BigNumberish; + minKeeperFee: BigNumberish; + }; + + export type FuturesGlobalsStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + minInitialMargin: BigNumber; + liquidationFeeRatio: BigNumber; + liquidationBufferRatio: BigNumber; + minKeeperFee: BigNumber; + }; + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish; + maxMarketValueUSD: BigNumberish; + }; + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + }; + + export type FundingParametersStruct = { + maxFundingRate: BigNumberish; + skewScaleUSD: BigNumberish; + }; + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + }; + + export type SidesStruct = { long: BigNumberish; short: BigNumberish }; + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber; + short: BigNumber; + }; + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish; + sides: FuturesMarketData.SidesStruct; + marketDebt: BigNumberish; + marketSkew: BigNumberish; + }; + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + FuturesMarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber; + sides: FuturesMarketData.SidesStructOutput; + marketDebt: BigNumber; + marketSkew: BigNumber; + }; + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber; + invalid: boolean; + }; + + export type MarketDataStruct = { + market: string; + baseAsset: BytesLike; + marketKey: BytesLike; + feeRates: FuturesMarketData.FeeRatesStruct; + limits: FuturesMarketData.MarketLimitsStruct; + fundingParameters: FuturesMarketData.FundingParametersStruct; + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct; + priceDetails: FuturesMarketData.PriceDetailsStruct; + }; + + export type MarketDataStructOutput = [ + string, + string, + string, + FuturesMarketData.FeeRatesStructOutput, + FuturesMarketData.MarketLimitsStructOutput, + FuturesMarketData.FundingParametersStructOutput, + FuturesMarketData.MarketSizeDetailsStructOutput, + FuturesMarketData.PriceDetailsStructOutput + ] & { + market: string; + baseAsset: string; + marketKey: string; + feeRates: FuturesMarketData.FeeRatesStructOutput; + limits: FuturesMarketData.MarketLimitsStructOutput; + fundingParameters: FuturesMarketData.FundingParametersStructOutput; + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput; + priceDetails: FuturesMarketData.PriceDetailsStructOutput; + }; + + export type PositionDataStruct = { + position: IFuturesMarketBaseTypes.PositionStruct; + notionalValue: BigNumberish; + profitLoss: BigNumberish; + accruedFunding: BigNumberish; + remainingMargin: BigNumberish; + accessibleMargin: BigNumberish; + liquidationPrice: BigNumberish; + canLiquidatePosition: boolean; + }; + + export type PositionDataStructOutput = [ + IFuturesMarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IFuturesMarketBaseTypes.PositionStructOutput; + notionalValue: BigNumber; + profitLoss: BigNumber; + accruedFunding: BigNumber; + remainingMargin: BigNumber; + accessibleMargin: BigNumber; + liquidationPrice: BigNumber; + canLiquidatePosition: boolean; + }; } export declare namespace IFuturesMarketSettings { - export type ParametersStruct = { - takerFee: PromiseOrValue - makerFee: PromiseOrValue - takerFeeNextPrice: PromiseOrValue - makerFeeNextPrice: PromiseOrValue - nextPriceConfirmWindow: PromiseOrValue - maxLeverage: PromiseOrValue - maxMarketValueUSD: PromiseOrValue - maxFundingRate: PromiseOrValue - skewScaleUSD: PromiseOrValue - } - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - nextPriceConfirmWindow: BigNumber - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } + export type ParametersStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeNextPrice: BigNumberish; + makerFeeNextPrice: BigNumberish; + nextPriceConfirmWindow: BigNumberish; + maxLeverage: BigNumberish; + maxMarketValueUSD: BigNumberish; + maxFundingRate: BigNumberish; + skewScaleUSD: BigNumberish; + }; + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + nextPriceConfirmWindow: BigNumber; + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + }; } export declare namespace IFuturesMarketBaseTypes { - export type PositionStruct = { - id: PromiseOrValue - lastFundingIndex: PromiseOrValue - margin: PromiseOrValue - lastPrice: PromiseOrValue - size: PromiseOrValue - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface FuturesMarketDataInterface extends utils.Interface { - functions: { - 'allMarketSummaries()': FunctionFragment - 'globals()': FunctionFragment - 'marketDetails(address)': FunctionFragment - 'marketDetailsForKey(bytes32)': FunctionFragment - 'marketSummaries(address[])': FunctionFragment - 'marketSummariesForKeys(bytes32[])': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'positionDetails(address,address)': FunctionFragment - 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment - 'resolverProxy()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'allMarketSummaries' - | 'globals' - | 'marketDetails' - | 'marketDetailsForKey' - | 'marketSummaries' - | 'marketSummariesForKeys' - | 'parameters' - | 'positionDetails' - | 'positionDetailsForMarketKey' - | 'resolverProxy' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'globals', values?: undefined): string - encodeFunctionData(functionFragment: 'marketDetails', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'marketDetailsForKey', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'marketSummaries', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'marketSummariesForKeys', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'parameters', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'positionDetails', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'positionDetailsForMarketKey', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string - - decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result - - events: {} + functions: { + "allMarketSummaries()": FunctionFragment; + "globals()": FunctionFragment; + "marketDetails(address)": FunctionFragment; + "marketDetailsForKey(bytes32)": FunctionFragment; + "marketSummaries(address[])": FunctionFragment; + "marketSummariesForKeys(bytes32[])": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "positionDetails(address,address)": FunctionFragment; + "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; + "resolverProxy()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "allMarketSummaries" + | "globals" + | "marketDetails" + | "marketDetailsForKey" + | "marketSummaries" + | "marketSummariesForKeys" + | "parameters" + | "positionDetails" + | "positionDetailsForMarketKey" + | "resolverProxy" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "allMarketSummaries", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "globals", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketDetails", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDetailsForKey", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "marketSummaries", + values: [string[]] + ): string; + encodeFunctionData( + functionFragment: "marketSummariesForKeys", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "positionDetails", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "positionDetailsForMarketKey", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "resolverProxy", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "allMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketDetailsForKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummariesForKeys", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "positionDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "positionDetailsForMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resolverProxy", + data: BytesLike + ): Result; + + events: {}; } export interface FuturesMarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: FuturesMarketDataInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - globals(overrides?: CallOverrides): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]> - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]> - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]> - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IFuturesMarketSettings.ParametersStructOutput]> - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]> - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]> - - resolverProxy(overrides?: CallOverrides): Promise<[string]> - } - - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - filters: {} - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: PromiseOrValue, overrides?: CallOverrides): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters(marketKey: PromiseOrValue, overrides?: CallOverrides): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - populateTransaction: { - allMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: FuturesMarketDataInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + globals( + overrides?: CallOverrides + ): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]>; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]>; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]>; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IFuturesMarketSettings.ParametersStructOutput]>; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]>; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]>; + + resolverProxy(overrides?: CallOverrides): Promise<[string]>; + }; + + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + filters: {}; + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts index 1a635bbe46..abb7a378ec 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts @@ -15,7 +15,7 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface FuturesMarketSettingsInterface extends utils.Interface { functions: { @@ -101,106 +101,67 @@ export interface FuturesMarketSettingsInterface extends utils.Interface { encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string encodeFunctionData(functionFragment: 'liquidationBufferRatio', values?: undefined): string encodeFunctionData(functionFragment: 'liquidationFeeRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'makerFee', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'makerFeeNextPrice', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'maxFundingRate', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'maxLeverage', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'maxMarketValueUSD', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'makerFee', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'makerFeeNextPrice', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxFundingRate', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxLeverage', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxMarketValueUSD', values: [BytesLike]): string encodeFunctionData(functionFragment: 'minInitialMargin', values?: undefined): string encodeFunctionData(functionFragment: 'minKeeperFee', values?: undefined): string - encodeFunctionData( - functionFragment: 'nextPriceConfirmWindow', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'nextPriceConfirmWindow', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'parameters', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string encodeFunctionData(functionFragment: 'resolver', values?: undefined): string encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'setLiquidationBufferRatio', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationFeeRatio', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMakerFee', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'setLiquidationBufferRatio', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setLiquidationFeeRatio', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setMakerFee', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setMakerFeeNextPrice', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setMaxFundingRate', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaxLeverage', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMaxLeverage', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setMaxMarketValueUSD', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMinInitialMargin', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMinKeeperFee', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMinInitialMargin', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setMinKeeperFee', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setNextPriceConfirmWindow', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setParameters', values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue + BytesLike, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish ] ): string - encodeFunctionData( - functionFragment: 'setSkewScaleUSD', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTakerFee', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'setSkewScaleUSD', values: [BytesLike, BigNumberish]): string + encodeFunctionData(functionFragment: 'setTakerFee', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setTakerFeeNextPrice', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'skewScaleUSD', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'takerFee', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'takerFeeNextPrice', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'skewScaleUSD', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'takerFee', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'takerFeeNextPrice', values: [BytesLike]): string decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result @@ -276,8 +237,9 @@ export type LiquidationBufferRatioUpdatedEvent = TypedEvent< LiquidationBufferRatioUpdatedEventObject > -export type LiquidationBufferRatioUpdatedEventFilter = - TypedEventFilter +export type LiquidationBufferRatioUpdatedEventFilter = TypedEventFilter< + LiquidationBufferRatioUpdatedEvent +> export interface LiquidationFeeRatioUpdatedEventObject { bps: BigNumber @@ -287,8 +249,9 @@ export type LiquidationFeeRatioUpdatedEvent = TypedEvent< LiquidationFeeRatioUpdatedEventObject > -export type LiquidationFeeRatioUpdatedEventFilter = - TypedEventFilter +export type LiquidationFeeRatioUpdatedEventFilter = TypedEventFilter< + LiquidationFeeRatioUpdatedEvent +> export interface MinInitialMarginUpdatedEventObject { minMargin: BigNumber @@ -359,9 +322,7 @@ export interface FuturesMarketSettings extends BaseContract { removeListener: OnEvent functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise isResolverCached(overrides?: CallOverrides): Promise<[boolean]> @@ -369,40 +330,25 @@ export interface FuturesMarketSettings extends BaseContract { liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]> - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - makerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxFundingRate( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxMarketValueUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]> minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise<[string]> @@ -410,7 +356,7 @@ export interface FuturesMarketSettings extends BaseContract { owner(overrides?: CallOverrides): Promise<[string]> parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise< [ @@ -436,9 +382,7 @@ export interface FuturesMarketSettings extends BaseContract { } > - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise<[string]> @@ -447,109 +391,101 @@ export interface FuturesMarketSettings extends BaseContract { ): Promise<[string[]] & { addresses: string[] }> setLiquidationBufferRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeNextPrice( - _marketKey: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingRate( - _marketKey: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValueUSD( - _marketKey: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - _makerFee: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - _maxLeverage: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSkewScaleUSD( - _marketKey: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeNextPrice( - _marketKey: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScaleUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - takerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> } - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -557,37 +493,25 @@ export interface FuturesMarketSettings extends BaseContract { liquidationFeeRatio(overrides?: CallOverrides): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingRate( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLeverage(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValueUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -595,7 +519,7 @@ export interface FuturesMarketSettings extends BaseContract { owner(overrides?: CallOverrides): Promise parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise< [ @@ -621,110 +545,105 @@ export interface FuturesMarketSettings extends BaseContract { } > - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setLiquidationBufferRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeNextPrice( - _marketKey: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingRate( - _marketKey: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValueUSD( - _marketKey: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - _makerFee: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - _maxLeverage: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSkewScaleUSD( - _marketKey: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeNextPrice( - _marketKey: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScaleUSD(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise callStatic: { acceptOwnership(overrides?: CallOverrides): Promise @@ -735,45 +654,30 @@ export interface FuturesMarketSettings extends BaseContract { liquidationFeeRatio(overrides?: CallOverrides): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingRate( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValueUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise nominatedOwner(overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise< [ @@ -805,102 +709,87 @@ export interface FuturesMarketSettings extends BaseContract { resolverAddressesRequired(overrides?: CallOverrides): Promise - setLiquidationBufferRatio( - _ratio: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationBufferRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise - setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationFeeRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, + _marketKey: BytesLike, + _makerFee: BigNumberish, overrides?: CallOverrides ): Promise setMakerFeeNextPrice( - _marketKey: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, overrides?: CallOverrides ): Promise setMaxFundingRate( - _marketKey: PromiseOrValue, - _maxFundingRate: PromiseOrValue, + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, overrides?: CallOverrides ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, + _marketKey: BytesLike, + _maxLeverage: BigNumberish, overrides?: CallOverrides ): Promise setMaxMarketValueUSD( - _marketKey: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, overrides?: CallOverrides ): Promise - setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMinInitialMargin(_minMargin: BigNumberish, overrides?: CallOverrides): Promise - setMinKeeperFee(_sUSD: PromiseOrValue, overrides?: CallOverrides): Promise + setMinKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, overrides?: CallOverrides ): Promise setParameters( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - _makerFee: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - _maxLeverage: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, overrides?: CallOverrides ): Promise setSkewScaleUSD( - _marketKey: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, overrides?: CallOverrides ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, + _marketKey: BytesLike, + _takerFee: BigNumberish, overrides?: CallOverrides ): Promise setTakerFeeNextPrice( - _marketKey: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, overrides?: CallOverrides ): Promise - skewScaleUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise } filters: { @@ -926,19 +815,19 @@ export interface FuturesMarketSettings extends BaseContract { OwnerNominated(newOwner?: null): OwnerNominatedEventFilter 'ParameterUpdated(bytes32,bytes32,uint256)'( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedEventFilter ParameterUpdated( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedEventFilter } estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -946,159 +835,133 @@ export interface FuturesMarketSettings extends BaseContract { liquidationFeeRatio(overrides?: CallOverrides): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingRate( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValueUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise nominatedOwner(overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise - parameters(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setLiquidationBufferRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeNextPrice( - _marketKey: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingRate( - _marketKey: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValueUSD( - _marketKey: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - _makerFee: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - _maxLeverage: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSkewScaleUSD( - _marketKey: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeNextPrice( - _marketKey: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScaleUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeNextPrice( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise } populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -1106,28 +969,19 @@ export interface FuturesMarketSettings extends BaseContract { liquidationFeeRatio(overrides?: CallOverrides): Promise - makerFee( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise makerFeeNextPrice( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - maxFundingRate( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise maxMarketValueUSD( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise @@ -1136,132 +990,121 @@ export interface FuturesMarketSettings extends BaseContract { minKeeperFee(overrides?: CallOverrides): Promise nextPriceConfirmWindow( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise - parameters( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setLiquidationBufferRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeNextPrice( - _marketKey: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingRate( - _marketKey: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValueUSD( - _marketKey: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - _makerFee: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - _makerFeeNextPrice: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - _maxLeverage: PromiseOrValue, - _maxMarketValueUSD: PromiseOrValue, - _maxFundingRate: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSkewScaleUSD( - _marketKey: PromiseOrValue, - _skewScaleUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeNextPrice( - _marketKey: PromiseOrValue, - _takerFeeNextPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScaleUSD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise takerFeeNextPrice( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise } diff --git a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts index bcec24fbe0..164d7f8f65 100644 --- a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts +++ b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts @@ -15,7 +15,7 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface KwentaArrakisVaultInterface extends utils.Interface { functions: { @@ -125,66 +125,37 @@ export interface KwentaArrakisVaultInterface extends utils.Interface { encodeFunctionData(functionFragment: 'GELATO', values?: undefined): string encodeFunctionData(functionFragment: 'RESTRICTED_MINT_ENABLED', values?: undefined): string - encodeFunctionData( - functionFragment: 'allowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'approve', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string + encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string encodeFunctionData(functionFragment: 'arrakisBalance0', values?: undefined): string encodeFunctionData(functionFragment: 'arrakisBalance1', values?: undefined): string encodeFunctionData(functionFragment: 'arrakisFeeBPS', values?: undefined): string encodeFunctionData(functionFragment: 'arrakisTreasury', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'burn', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'burn', values: [BigNumberish, string]): string encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData( - functionFragment: 'decreaseAllowance', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'decreaseAllowance', values: [string, BigNumberish]): string encodeFunctionData( functionFragment: 'executiveRebalance', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] + values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, boolean] ): string encodeFunctionData(functionFragment: 'gelatoRebalanceBPS', values?: undefined): string encodeFunctionData(functionFragment: 'gelatoSlippageBPS', values?: undefined): string encodeFunctionData(functionFragment: 'gelatoSlippageInterval', values?: undefined): string encodeFunctionData( functionFragment: 'getMintAmounts', - values: [PromiseOrValue, PromiseOrValue] + values: [BigNumberish, BigNumberish] ): string encodeFunctionData(functionFragment: 'getPositionID', values?: undefined): string encodeFunctionData(functionFragment: 'getUnderlyingBalances', values?: undefined): string encodeFunctionData( functionFragment: 'getUnderlyingBalancesAtPrice', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'increaseAllowance', - values: [PromiseOrValue, PromiseOrValue] + values: [BigNumberish] ): string + encodeFunctionData(functionFragment: 'increaseAllowance', values: [string, BigNumberish]): string encodeFunctionData( functionFragment: 'initialize', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] + values: [string, string, string, BigNumberish, BigNumberish, BigNumberish, string] ): string encodeFunctionData(functionFragment: 'lowerTick', values?: undefined): string encodeFunctionData(functionFragment: 'manager', values?: undefined): string @@ -192,21 +163,12 @@ export interface KwentaArrakisVaultInterface extends utils.Interface { encodeFunctionData(functionFragment: 'managerBalance1', values?: undefined): string encodeFunctionData(functionFragment: 'managerFeeBPS', values?: undefined): string encodeFunctionData(functionFragment: 'managerTreasury', values?: undefined): string - encodeFunctionData( - functionFragment: 'mint', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'mint', values: [BigNumberish, string]): string encodeFunctionData(functionFragment: 'name', values?: undefined): string encodeFunctionData(functionFragment: 'pool', values?: undefined): string encodeFunctionData( functionFragment: 'rebalance', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] + values: [BigNumberish, BigNumberish, boolean, BigNumberish, string] ): string encodeFunctionData(functionFragment: 'renounceOwnership', values?: undefined): string encodeFunctionData(functionFragment: 'restrictedMintToggle', values?: undefined): string @@ -215,35 +177,23 @@ export interface KwentaArrakisVaultInterface extends utils.Interface { encodeFunctionData(functionFragment: 'token0', values?: undefined): string encodeFunctionData(functionFragment: 'token1', values?: undefined): string encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'transfer', - values: [PromiseOrValue, PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string encodeFunctionData( functionFragment: 'transferFrom', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferOwnership', - values: [PromiseOrValue] + values: [string, string, BigNumberish] ): string + encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string encodeFunctionData( functionFragment: 'uniswapV3MintCallback', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] + values: [BigNumberish, BigNumberish, BytesLike] ): string encodeFunctionData( functionFragment: 'uniswapV3SwapCallback', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] + values: [BigNumberish, BigNumberish, BytesLike] ): string encodeFunctionData( functionFragment: 'updateManagerParams', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] + values: [BigNumberish, string, BigNumberish, BigNumberish, BigNumberish] ): string encodeFunctionData(functionFragment: 'upperTick', values?: undefined): string encodeFunctionData(functionFragment: 'version', values?: undefined): string @@ -442,16 +392,12 @@ export interface KwentaArrakisVault extends BaseContract { RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise<[number]> - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> approve( - spender: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise arrakisBalance0(overrides?: CallOverrides): Promise<[BigNumber]> @@ -462,29 +408,29 @@ export interface KwentaArrakisVault extends BaseContract { arrakisTreasury(overrides?: CallOverrides): Promise<[string]> - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> burn( - burnAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise decimals(overrides?: CallOverrides): Promise<[number]> decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise executiveRebalance( - newLowerTick: PromiseOrValue, - newUpperTick: PromiseOrValue, - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } ): Promise gelatoRebalanceBPS(overrides?: CallOverrides): Promise<[number]> @@ -494,8 +440,8 @@ export interface KwentaArrakisVault extends BaseContract { gelatoSlippageInterval(overrides?: CallOverrides): Promise<[number]> getMintAmounts( - amount0Max: PromiseOrValue, - amount1Max: PromiseOrValue, + amount0Max: BigNumberish, + amount1Max: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { @@ -507,7 +453,9 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise<[string] & { positionID: string }> - getUnderlyingBalances(overrides?: CallOverrides): Promise< + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber @@ -515,7 +463,7 @@ export interface KwentaArrakisVault extends BaseContract { > getUnderlyingBalancesAtPrice( - sqrtRatioX96: PromiseOrValue, + sqrtRatioX96: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { @@ -525,20 +473,20 @@ export interface KwentaArrakisVault extends BaseContract { > increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise initialize( - _name: PromiseOrValue, - _symbol: PromiseOrValue, - _pool: PromiseOrValue, - _managerFeeBPS: PromiseOrValue, - _lowerTick: PromiseOrValue, - _upperTick: PromiseOrValue, - _manager_: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } ): Promise lowerTick(overrides?: CallOverrides): Promise<[number]> @@ -554,9 +502,9 @@ export interface KwentaArrakisVault extends BaseContract { managerTreasury(overrides?: CallOverrides): Promise<[string]> mint( - mintAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise name(overrides?: CallOverrides): Promise<[string]> @@ -564,25 +512,21 @@ export interface KwentaArrakisVault extends BaseContract { pool(overrides?: CallOverrides): Promise<[string]> rebalance( - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - feeAmount: PromiseOrValue, - paymentToken: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } ): Promise - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + renounceOwnership(overrides?: Overrides & { from?: string }): Promise restrictedMintToggle(overrides?: CallOverrides): Promise<[number]> symbol(overrides?: CallOverrides): Promise<[string]> - toggleRestrictMint( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise token0(overrides?: CallOverrides): Promise<[string]> @@ -591,73 +535,65 @@ export interface KwentaArrakisVault extends BaseContract { totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise uniswapV3MintCallback( - amount0Owed: PromiseOrValue, - amount1Owed: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise uniswapV3SwapCallback( - amount0Delta: PromiseOrValue, - amount1Delta: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise updateManagerParams( - newManagerFeeBPS: PromiseOrValue, - newManagerTreasury: PromiseOrValue, - newRebalanceBPS: PromiseOrValue, - newSlippageBPS: PromiseOrValue, - newSlippageInterval: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise upperTick(overrides?: CallOverrides): Promise<[number]> version(overrides?: CallOverrides): Promise<[string]> - withdrawArrakisBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - withdrawManagerBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise } GELATO(overrides?: CallOverrides): Promise RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise approve( - spender: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise arrakisBalance0(overrides?: CallOverrides): Promise @@ -668,29 +604,29 @@ export interface KwentaArrakisVault extends BaseContract { arrakisTreasury(overrides?: CallOverrides): Promise - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise burn( - burnAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise decimals(overrides?: CallOverrides): Promise decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise executiveRebalance( - newLowerTick: PromiseOrValue, - newUpperTick: PromiseOrValue, - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } ): Promise gelatoRebalanceBPS(overrides?: CallOverrides): Promise @@ -700,8 +636,8 @@ export interface KwentaArrakisVault extends BaseContract { gelatoSlippageInterval(overrides?: CallOverrides): Promise getMintAmounts( - amount0Max: PromiseOrValue, - amount1Max: PromiseOrValue, + amount0Max: BigNumberish, + amount1Max: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { @@ -713,7 +649,9 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise - getUnderlyingBalances(overrides?: CallOverrides): Promise< + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber @@ -721,7 +659,7 @@ export interface KwentaArrakisVault extends BaseContract { > getUnderlyingBalancesAtPrice( - sqrtRatioX96: PromiseOrValue, + sqrtRatioX96: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { @@ -731,20 +669,20 @@ export interface KwentaArrakisVault extends BaseContract { > increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise initialize( - _name: PromiseOrValue, - _symbol: PromiseOrValue, - _pool: PromiseOrValue, - _managerFeeBPS: PromiseOrValue, - _lowerTick: PromiseOrValue, - _upperTick: PromiseOrValue, - _manager_: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } ): Promise lowerTick(overrides?: CallOverrides): Promise @@ -760,9 +698,9 @@ export interface KwentaArrakisVault extends BaseContract { managerTreasury(overrides?: CallOverrides): Promise mint( - mintAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise name(overrides?: CallOverrides): Promise @@ -770,25 +708,21 @@ export interface KwentaArrakisVault extends BaseContract { pool(overrides?: CallOverrides): Promise rebalance( - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - feeAmount: PromiseOrValue, - paymentToken: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } ): Promise - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + renounceOwnership(overrides?: Overrides & { from?: string }): Promise restrictedMintToggle(overrides?: CallOverrides): Promise symbol(overrides?: CallOverrides): Promise - toggleRestrictMint( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise token0(overrides?: CallOverrides): Promise @@ -797,74 +731,62 @@ export interface KwentaArrakisVault extends BaseContract { totalSupply(overrides?: CallOverrides): Promise transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise uniswapV3MintCallback( - amount0Owed: PromiseOrValue, - amount1Owed: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise uniswapV3SwapCallback( - amount0Delta: PromiseOrValue, - amount1Delta: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise updateManagerParams( - newManagerFeeBPS: PromiseOrValue, - newManagerTreasury: PromiseOrValue, - newRebalanceBPS: PromiseOrValue, - newSlippageBPS: PromiseOrValue, - newSlippageInterval: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise upperTick(overrides?: CallOverrides): Promise version(overrides?: CallOverrides): Promise - withdrawArrakisBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - withdrawManagerBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise callStatic: { GELATO(overrides?: CallOverrides): Promise RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - approve( - spender: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + approve(spender: string, amount: BigNumberish, overrides?: CallOverrides): Promise arrakisBalance0(overrides?: CallOverrides): Promise @@ -874,11 +796,11 @@ export interface KwentaArrakisVault extends BaseContract { arrakisTreasury(overrides?: CallOverrides): Promise - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise burn( - burnAmount: PromiseOrValue, - receiver: PromiseOrValue, + burnAmount: BigNumberish, + receiver: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { @@ -891,17 +813,17 @@ export interface KwentaArrakisVault extends BaseContract { decimals(overrides?: CallOverrides): Promise decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, + spender: string, + subtractedValue: BigNumberish, overrides?: CallOverrides ): Promise executiveRebalance( - newLowerTick: PromiseOrValue, - newUpperTick: PromiseOrValue, - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, overrides?: CallOverrides ): Promise @@ -912,8 +834,8 @@ export interface KwentaArrakisVault extends BaseContract { gelatoSlippageInterval(overrides?: CallOverrides): Promise getMintAmounts( - amount0Max: PromiseOrValue, - amount1Max: PromiseOrValue, + amount0Max: BigNumberish, + amount1Max: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { @@ -925,7 +847,9 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise - getUnderlyingBalances(overrides?: CallOverrides): Promise< + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber @@ -933,7 +857,7 @@ export interface KwentaArrakisVault extends BaseContract { > getUnderlyingBalancesAtPrice( - sqrtRatioX96: PromiseOrValue, + sqrtRatioX96: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { @@ -943,19 +867,19 @@ export interface KwentaArrakisVault extends BaseContract { > increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, + spender: string, + addedValue: BigNumberish, overrides?: CallOverrides ): Promise initialize( - _name: PromiseOrValue, - _symbol: PromiseOrValue, - _pool: PromiseOrValue, - _managerFeeBPS: PromiseOrValue, - _lowerTick: PromiseOrValue, - _upperTick: PromiseOrValue, - _manager_: PromiseOrValue, + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, overrides?: CallOverrides ): Promise @@ -972,8 +896,8 @@ export interface KwentaArrakisVault extends BaseContract { managerTreasury(overrides?: CallOverrides): Promise mint( - mintAmount: PromiseOrValue, - receiver: PromiseOrValue, + mintAmount: BigNumberish, + receiver: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { @@ -988,11 +912,11 @@ export interface KwentaArrakisVault extends BaseContract { pool(overrides?: CallOverrides): Promise rebalance( - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - feeAmount: PromiseOrValue, - paymentToken: PromiseOrValue, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, overrides?: CallOverrides ): Promise @@ -1010,41 +934,37 @@ export interface KwentaArrakisVault extends BaseContract { totalSupply(overrides?: CallOverrides): Promise - transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + transfer(recipient: string, amount: BigNumberish, overrides?: CallOverrides): Promise transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, + sender: string, + recipient: string, + amount: BigNumberish, overrides?: CallOverrides ): Promise - transferOwnership(newOwner: PromiseOrValue, overrides?: CallOverrides): Promise + transferOwnership(newOwner: string, overrides?: CallOverrides): Promise uniswapV3MintCallback( - amount0Owed: PromiseOrValue, - amount1Owed: PromiseOrValue, - arg2: PromiseOrValue, + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, overrides?: CallOverrides ): Promise uniswapV3SwapCallback( - amount0Delta: PromiseOrValue, - amount1Delta: PromiseOrValue, - arg2: PromiseOrValue, + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, overrides?: CallOverrides ): Promise updateManagerParams( - newManagerFeeBPS: PromiseOrValue, - newManagerTreasury: PromiseOrValue, - newRebalanceBPS: PromiseOrValue, - newSlippageBPS: PromiseOrValue, - newSlippageInterval: PromiseOrValue, + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, overrides?: CallOverrides ): Promise @@ -1059,15 +979,11 @@ export interface KwentaArrakisVault extends BaseContract { filters: { 'Approval(address,address,uint256)'( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - Approval( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, + owner?: string | null, + spender?: string | null, value?: null ): ApprovalEventFilter + Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter 'Burned(address,uint256,uint256,uint256,uint128)'( receiver?: null, @@ -1103,12 +1019,12 @@ export interface KwentaArrakisVault extends BaseContract { ): MintedEventFilter 'OwnershipTransferred(address,address)'( - previousManager?: PromiseOrValue | null, - newManager?: PromiseOrValue | null + previousManager?: string | null, + newManager?: string | null ): OwnershipTransferredEventFilter OwnershipTransferred( - previousManager?: PromiseOrValue | null, - newManager?: PromiseOrValue | null + previousManager?: string | null, + newManager?: string | null ): OwnershipTransferredEventFilter 'Rebalance(int24,int24,uint128,uint128)'( @@ -1125,15 +1041,11 @@ export interface KwentaArrakisVault extends BaseContract { ): RebalanceEventFilter 'Transfer(address,address,uint256)'( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - Transfer( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, + from?: string | null, + to?: string | null, value?: null ): TransferEventFilter + Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter 'UpdateManagerParams(uint16,address,uint16,uint16,uint32)'( managerFeeBPS?: null, @@ -1156,16 +1068,12 @@ export interface KwentaArrakisVault extends BaseContract { RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise approve( - spender: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise arrakisBalance0(overrides?: CallOverrides): Promise @@ -1176,29 +1084,29 @@ export interface KwentaArrakisVault extends BaseContract { arrakisTreasury(overrides?: CallOverrides): Promise - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise burn( - burnAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise decimals(overrides?: CallOverrides): Promise decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise executiveRebalance( - newLowerTick: PromiseOrValue, - newUpperTick: PromiseOrValue, - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } ): Promise gelatoRebalanceBPS(overrides?: CallOverrides): Promise @@ -1208,8 +1116,8 @@ export interface KwentaArrakisVault extends BaseContract { gelatoSlippageInterval(overrides?: CallOverrides): Promise getMintAmounts( - amount0Max: PromiseOrValue, - amount1Max: PromiseOrValue, + amount0Max: BigNumberish, + amount1Max: BigNumberish, overrides?: CallOverrides ): Promise @@ -1218,25 +1126,25 @@ export interface KwentaArrakisVault extends BaseContract { getUnderlyingBalances(overrides?: CallOverrides): Promise getUnderlyingBalancesAtPrice( - sqrtRatioX96: PromiseOrValue, + sqrtRatioX96: BigNumberish, overrides?: CallOverrides ): Promise increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise initialize( - _name: PromiseOrValue, - _symbol: PromiseOrValue, - _pool: PromiseOrValue, - _managerFeeBPS: PromiseOrValue, - _lowerTick: PromiseOrValue, - _upperTick: PromiseOrValue, - _manager_: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } ): Promise lowerTick(overrides?: CallOverrides): Promise @@ -1252,9 +1160,9 @@ export interface KwentaArrakisVault extends BaseContract { managerTreasury(overrides?: CallOverrides): Promise mint( - mintAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise name(overrides?: CallOverrides): Promise @@ -1262,23 +1170,21 @@ export interface KwentaArrakisVault extends BaseContract { pool(overrides?: CallOverrides): Promise rebalance( - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - feeAmount: PromiseOrValue, - paymentToken: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } ): Promise - renounceOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + renounceOwnership(overrides?: Overrides & { from?: string }): Promise restrictedMintToggle(overrides?: CallOverrides): Promise symbol(overrides?: CallOverrides): Promise - toggleRestrictMint( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise token0(overrides?: CallOverrides): Promise @@ -1287,57 +1193,53 @@ export interface KwentaArrakisVault extends BaseContract { totalSupply(overrides?: CallOverrides): Promise transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise uniswapV3MintCallback( - amount0Owed: PromiseOrValue, - amount1Owed: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise uniswapV3SwapCallback( - amount0Delta: PromiseOrValue, - amount1Delta: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise updateManagerParams( - newManagerFeeBPS: PromiseOrValue, - newManagerTreasury: PromiseOrValue, - newRebalanceBPS: PromiseOrValue, - newSlippageBPS: PromiseOrValue, - newSlippageInterval: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise upperTick(overrides?: CallOverrides): Promise version(overrides?: CallOverrides): Promise - withdrawArrakisBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - withdrawManagerBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise } populateTransaction: { @@ -1346,15 +1248,15 @@ export interface KwentaArrakisVault extends BaseContract { RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, + owner: string, + spender: string, overrides?: CallOverrides ): Promise approve( - spender: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise arrakisBalance0(overrides?: CallOverrides): Promise @@ -1365,32 +1267,29 @@ export interface KwentaArrakisVault extends BaseContract { arrakisTreasury(overrides?: CallOverrides): Promise - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise burn( - burnAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise decimals(overrides?: CallOverrides): Promise decreaseAllowance( - spender: PromiseOrValue, - subtractedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise executiveRebalance( - newLowerTick: PromiseOrValue, - newUpperTick: PromiseOrValue, - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } ): Promise gelatoRebalanceBPS(overrides?: CallOverrides): Promise @@ -1400,8 +1299,8 @@ export interface KwentaArrakisVault extends BaseContract { gelatoSlippageInterval(overrides?: CallOverrides): Promise getMintAmounts( - amount0Max: PromiseOrValue, - amount1Max: PromiseOrValue, + amount0Max: BigNumberish, + amount1Max: BigNumberish, overrides?: CallOverrides ): Promise @@ -1410,25 +1309,25 @@ export interface KwentaArrakisVault extends BaseContract { getUnderlyingBalances(overrides?: CallOverrides): Promise getUnderlyingBalancesAtPrice( - sqrtRatioX96: PromiseOrValue, + sqrtRatioX96: BigNumberish, overrides?: CallOverrides ): Promise increaseAllowance( - spender: PromiseOrValue, - addedValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise initialize( - _name: PromiseOrValue, - _symbol: PromiseOrValue, - _pool: PromiseOrValue, - _managerFeeBPS: PromiseOrValue, - _lowerTick: PromiseOrValue, - _upperTick: PromiseOrValue, - _manager_: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } ): Promise lowerTick(overrides?: CallOverrides): Promise @@ -1444,9 +1343,9 @@ export interface KwentaArrakisVault extends BaseContract { managerTreasury(overrides?: CallOverrides): Promise mint( - mintAmount: PromiseOrValue, - receiver: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } ): Promise name(overrides?: CallOverrides): Promise @@ -1454,25 +1353,21 @@ export interface KwentaArrakisVault extends BaseContract { pool(overrides?: CallOverrides): Promise rebalance( - swapThresholdPrice: PromiseOrValue, - swapAmountBPS: PromiseOrValue, - zeroForOne: PromiseOrValue, - feeAmount: PromiseOrValue, - paymentToken: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } ): Promise - renounceOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + renounceOwnership(overrides?: Overrides & { from?: string }): Promise restrictedMintToggle(overrides?: CallOverrides): Promise symbol(overrides?: CallOverrides): Promise - toggleRestrictMint( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise token0(overrides?: CallOverrides): Promise @@ -1481,56 +1376,52 @@ export interface KwentaArrakisVault extends BaseContract { totalSupply(overrides?: CallOverrides): Promise transfer( - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferFrom( - sender: PromiseOrValue, - recipient: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise uniswapV3MintCallback( - amount0Owed: PromiseOrValue, - amount1Owed: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise uniswapV3SwapCallback( - amount0Delta: PromiseOrValue, - amount1Delta: PromiseOrValue, - arg2: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } ): Promise updateManagerParams( - newManagerFeeBPS: PromiseOrValue, - newManagerTreasury: PromiseOrValue, - newRebalanceBPS: PromiseOrValue, - newSlippageBPS: PromiseOrValue, - newSlippageInterval: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise upperTick(overrides?: CallOverrides): Promise version(overrides?: CallOverrides): Promise - withdrawArrakisBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - withdrawManagerBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise } } diff --git a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts index 813fba93d1..743af98c61 100644 --- a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts +++ b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts @@ -2,944 +2,1139 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface KwentaStakingRewardsInterface extends utils.Interface { - functions: { - '_totalSupply()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'earned(address)': FunctionFragment - 'escrowedBalanceOf(address)': FunctionFragment - 'exit()': FunctionFragment - 'getReward()': FunctionFragment - 'getRewardForDuration()': FunctionFragment - 'lastTimeRewardApplicable()': FunctionFragment - 'lastUpdateTime()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'nonEscrowedBalanceOf(address)': FunctionFragment - 'notifyRewardAmount(uint256)': FunctionFragment - 'owner()': FunctionFragment - 'pauseStakingRewards()': FunctionFragment - 'paused()': FunctionFragment - 'periodFinish()': FunctionFragment - 'recoverERC20(address,uint256)': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'rewardPerToken()': FunctionFragment - 'rewardPerTokenStored()': FunctionFragment - 'rewardRate()': FunctionFragment - 'rewards(address)': FunctionFragment - 'rewardsDuration()': FunctionFragment - 'setRewardsDuration(uint256)': FunctionFragment - 'stake(uint256)': FunctionFragment - 'stakeEscrow(address,uint256)': FunctionFragment - 'supplySchedule()': FunctionFragment - 'token()': FunctionFragment - 'totalSupply()': FunctionFragment - 'unpauseStakingRewards()': FunctionFragment - 'unstake(uint256)': FunctionFragment - 'unstakeEscrow(address,uint256)': FunctionFragment - 'userRewardPerTokenPaid(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | '_totalSupply' - | 'acceptOwnership' - | 'balanceOf' - | 'earned' - | 'escrowedBalanceOf' - | 'exit' - | 'getReward' - | 'getRewardForDuration' - | 'lastTimeRewardApplicable' - | 'lastUpdateTime' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'nonEscrowedBalanceOf' - | 'notifyRewardAmount' - | 'owner' - | 'pauseStakingRewards' - | 'paused' - | 'periodFinish' - | 'recoverERC20' - | 'rewardEscrow' - | 'rewardPerToken' - | 'rewardPerTokenStored' - | 'rewardRate' - | 'rewards' - | 'rewardsDuration' - | 'setRewardsDuration' - | 'stake' - | 'stakeEscrow' - | 'supplySchedule' - | 'token' - | 'totalSupply' - | 'unpauseStakingRewards' - | 'unstake' - | 'unstakeEscrow' - | 'userRewardPerTokenPaid' - ): FunctionFragment - - encodeFunctionData(functionFragment: '_totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'earned', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'escrowedBalanceOf', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'exit', values?: undefined): string - encodeFunctionData(functionFragment: 'getReward', values?: undefined): string - encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string - encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData( - functionFragment: 'nonEscrowedBalanceOf', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'notifyRewardAmount', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'pauseStakingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'paused', values?: undefined): string - encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string - encodeFunctionData( - functionFragment: 'recoverERC20', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string - encodeFunctionData(functionFragment: 'rewards', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string - encodeFunctionData( - functionFragment: 'setRewardsDuration', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'stake', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'stakeEscrow', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'supplySchedule', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'unpauseStakingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'unstake', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'unstakeEscrow', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'userRewardPerTokenPaid', - values: [PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: '_totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'escrowedBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nonEscrowedBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'pauseStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supplySchedule', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unpauseStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result - - events: { - 'EscrowStaked(address,uint256)': EventFragment - 'EscrowUnstaked(address,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'Paused(address)': EventFragment - 'Recovered(address,uint256)': EventFragment - 'RewardAdded(uint256)': EventFragment - 'RewardPaid(address,uint256)': EventFragment - 'RewardsDurationUpdated(uint256)': EventFragment - 'Staked(address,uint256)': EventFragment - 'Unpaused(address)': EventFragment - 'Unstaked(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'EscrowStaked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EscrowUnstaked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Paused'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Unpaused'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Unstaked'): EventFragment + functions: { + "_totalSupply()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "earned(address)": FunctionFragment; + "escrowedBalanceOf(address)": FunctionFragment; + "exit()": FunctionFragment; + "getReward()": FunctionFragment; + "getRewardForDuration()": FunctionFragment; + "lastTimeRewardApplicable()": FunctionFragment; + "lastUpdateTime()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "nonEscrowedBalanceOf(address)": FunctionFragment; + "notifyRewardAmount(uint256)": FunctionFragment; + "owner()": FunctionFragment; + "pauseStakingRewards()": FunctionFragment; + "paused()": FunctionFragment; + "periodFinish()": FunctionFragment; + "recoverERC20(address,uint256)": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "rewardPerToken()": FunctionFragment; + "rewardPerTokenStored()": FunctionFragment; + "rewardRate()": FunctionFragment; + "rewards(address)": FunctionFragment; + "rewardsDuration()": FunctionFragment; + "setRewardsDuration(uint256)": FunctionFragment; + "stake(uint256)": FunctionFragment; + "stakeEscrow(address,uint256)": FunctionFragment; + "supplySchedule()": FunctionFragment; + "token()": FunctionFragment; + "totalSupply()": FunctionFragment; + "unpauseStakingRewards()": FunctionFragment; + "unstake(uint256)": FunctionFragment; + "unstakeEscrow(address,uint256)": FunctionFragment; + "userRewardPerTokenPaid(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "_totalSupply" + | "acceptOwnership" + | "balanceOf" + | "earned" + | "escrowedBalanceOf" + | "exit" + | "getReward" + | "getRewardForDuration" + | "lastTimeRewardApplicable" + | "lastUpdateTime" + | "nominateNewOwner" + | "nominatedOwner" + | "nonEscrowedBalanceOf" + | "notifyRewardAmount" + | "owner" + | "pauseStakingRewards" + | "paused" + | "periodFinish" + | "recoverERC20" + | "rewardEscrow" + | "rewardPerToken" + | "rewardPerTokenStored" + | "rewardRate" + | "rewards" + | "rewardsDuration" + | "setRewardsDuration" + | "stake" + | "stakeEscrow" + | "supplySchedule" + | "token" + | "totalSupply" + | "unpauseStakingRewards" + | "unstake" + | "unstakeEscrow" + | "userRewardPerTokenPaid" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "_totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "earned", values: [string]): string; + encodeFunctionData( + functionFragment: "escrowedBalanceOf", + values: [string] + ): string; + encodeFunctionData(functionFragment: "exit", values?: undefined): string; + encodeFunctionData(functionFragment: "getReward", values?: undefined): string; + encodeFunctionData( + functionFragment: "getRewardForDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastTimeRewardApplicable", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastUpdateTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nonEscrowedBalanceOf", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "notifyRewardAmount", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "pauseStakingRewards", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData( + functionFragment: "periodFinish", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recoverERC20", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerTokenStored", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardRate", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "rewards", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardsDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setRewardsDuration", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "stakeEscrow", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "supplySchedule", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unpauseStakingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unstake", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unstakeEscrow", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "userRewardPerTokenPaid", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "_totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "escrowedBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getRewardForDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastTimeRewardApplicable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastUpdateTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nonEscrowedBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyRewardAmount", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "pauseStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "periodFinish", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recoverERC20", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerTokenStored", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setRewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "stakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supplySchedule", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unpauseStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "unstake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "unstakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "userRewardPerTokenPaid", + data: BytesLike + ): Result; + + events: { + "EscrowStaked(address,uint256)": EventFragment; + "EscrowUnstaked(address,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Paused(address)": EventFragment; + "Recovered(address,uint256)": EventFragment; + "RewardAdded(uint256)": EventFragment; + "RewardPaid(address,uint256)": EventFragment; + "RewardsDurationUpdated(uint256)": EventFragment; + "Staked(address,uint256)": EventFragment; + "Unpaused(address)": EventFragment; + "Unstaked(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "EscrowStaked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "EscrowUnstaked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Unstaked"): EventFragment; } export interface EscrowStakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type EscrowStakedEvent = TypedEvent<[string, BigNumber], EscrowStakedEventObject> +export type EscrowStakedEvent = TypedEvent< + [string, BigNumber], + EscrowStakedEventObject +>; -export type EscrowStakedEventFilter = TypedEventFilter +export type EscrowStakedEventFilter = TypedEventFilter; export interface EscrowUnstakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type EscrowUnstakedEvent = TypedEvent<[string, BigNumber], EscrowUnstakedEventObject> +export type EscrowUnstakedEvent = TypedEvent< + [string, BigNumber], + EscrowUnstakedEventObject +>; -export type EscrowUnstakedEventFilter = TypedEventFilter +export type EscrowUnstakedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PausedEventObject { - account: string + account: string; } -export type PausedEvent = TypedEvent<[string], PausedEventObject> +export type PausedEvent = TypedEvent<[string], PausedEventObject>; -export type PausedEventFilter = TypedEventFilter +export type PausedEventFilter = TypedEventFilter; export interface RecoveredEventObject { - token: string - amount: BigNumber + token: string; + amount: BigNumber; } -export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> +export type RecoveredEvent = TypedEvent< + [string, BigNumber], + RecoveredEventObject +>; -export type RecoveredEventFilter = TypedEventFilter +export type RecoveredEventFilter = TypedEventFilter; export interface RewardAddedEventObject { - reward: BigNumber + reward: BigNumber; } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; -export type RewardAddedEventFilter = TypedEventFilter +export type RewardAddedEventFilter = TypedEventFilter; export interface RewardPaidEventObject { - user: string - reward: BigNumber + user: string; + reward: BigNumber; } -export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> +export type RewardPaidEvent = TypedEvent< + [string, BigNumber], + RewardPaidEventObject +>; -export type RewardPaidEventFilter = TypedEventFilter +export type RewardPaidEventFilter = TypedEventFilter; export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber + newDuration: BigNumber; } -export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> +export type RewardsDurationUpdatedEvent = TypedEvent< + [BigNumber], + RewardsDurationUpdatedEventObject +>; -export type RewardsDurationUpdatedEventFilter = TypedEventFilter +export type RewardsDurationUpdatedEventFilter = + TypedEventFilter; export interface StakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; -export type StakedEventFilter = TypedEventFilter +export type StakedEventFilter = TypedEventFilter; export interface UnpausedEventObject { - account: string + account: string; } -export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject> +export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject>; -export type UnpausedEventFilter = TypedEventFilter +export type UnpausedEventFilter = TypedEventFilter; export interface UnstakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type UnstakedEvent = TypedEvent<[string, BigNumber], UnstakedEventObject> +export type UnstakedEvent = TypedEvent< + [string, BigNumber], + UnstakedEventObject +>; -export type UnstakedEventFilter = TypedEventFilter +export type UnstakedEventFilter = TypedEventFilter; export interface KwentaStakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: KwentaStakingRewardsInterface + interface: KwentaStakingRewardsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + functions: { + _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - escrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - nonEscrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - pauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise<[boolean]> + paused(overrides?: CallOverrides): Promise<[boolean]>; - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise<[string]> + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise<[string]> + supplySchedule(overrides?: CallOverrides): Promise<[string]>; - token(overrides?: CallOverrides): Promise<[string]> + token(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - unpauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; - _totalSupply(overrides?: CallOverrides): Promise + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: PromiseOrValue }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - callStatic: { - _totalSupply(overrides?: CallOverrides): Promise + callStatic: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: CallOverrides): Promise + acceptOwnership(overrides?: CallOverrides): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: CallOverrides): Promise + exit(overrides?: CallOverrides): Promise; - getReward(overrides?: CallOverrides): Promise + getReward(overrides?: CallOverrides): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: CallOverrides - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards(overrides?: CallOverrides): Promise + pauseStakingRewards(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: CallOverrides + ): Promise; - stake(amount: PromiseOrValue, overrides?: CallOverrides): Promise + stake(amount: BigNumberish, overrides?: CallOverrides): Promise; - stakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards(overrides?: CallOverrides): Promise + unpauseStakingRewards(overrides?: CallOverrides): Promise; - unstake(amount: PromiseOrValue, overrides?: CallOverrides): Promise + unstake(amount: BigNumberish, overrides?: CallOverrides): Promise; - unstakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; - filters: { - 'EscrowStaked(address,uint256)'( - user?: PromiseOrValue | null, - amount?: null - ): EscrowStakedEventFilter - EscrowStaked(user?: PromiseOrValue | null, amount?: null): EscrowStakedEventFilter + filters: { + "EscrowStaked(address,uint256)"( + user?: string | null, + amount?: null + ): EscrowStakedEventFilter; + EscrowStaked(user?: string | null, amount?: null): EscrowStakedEventFilter; - 'EscrowUnstaked(address,uint256)'(user?: null, amount?: null): EscrowUnstakedEventFilter - EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter + "EscrowUnstaked(address,uint256)"( + user?: null, + amount?: null + ): EscrowUnstakedEventFilter; + EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'Paused(address)'(account?: null): PausedEventFilter - Paused(account?: null): PausedEventFilter + "Paused(address)"(account?: null): PausedEventFilter; + Paused(account?: null): PausedEventFilter; - 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter - Recovered(token?: null, amount?: null): RecoveredEventFilter + "Recovered(address,uint256)"( + token?: null, + amount?: null + ): RecoveredEventFilter; + Recovered(token?: null, amount?: null): RecoveredEventFilter; - 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter - RewardAdded(reward?: null): RewardAddedEventFilter + "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; + RewardAdded(reward?: null): RewardAddedEventFilter; - 'RewardPaid(address,uint256)'( - user?: PromiseOrValue | null, - reward?: null - ): RewardPaidEventFilter - RewardPaid(user?: PromiseOrValue | null, reward?: null): RewardPaidEventFilter + "RewardPaid(address,uint256)"( + user?: string | null, + reward?: null + ): RewardPaidEventFilter; + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; - 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter - RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter + "RewardsDurationUpdated(uint256)"( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; + RewardsDurationUpdated( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; - 'Staked(address,uint256)'( - user?: PromiseOrValue | null, - amount?: null - ): StakedEventFilter - Staked(user?: PromiseOrValue | null, amount?: null): StakedEventFilter + "Staked(address,uint256)"( + user?: string | null, + amount?: null + ): StakedEventFilter; + Staked(user?: string | null, amount?: null): StakedEventFilter; - 'Unpaused(address)'(account?: null): UnpausedEventFilter - Unpaused(account?: null): UnpausedEventFilter + "Unpaused(address)"(account?: null): UnpausedEventFilter; + Unpaused(account?: null): UnpausedEventFilter; - 'Unstaked(address,uint256)'( - user?: PromiseOrValue | null, - amount?: null - ): UnstakedEventFilter - Unstaked(user?: PromiseOrValue | null, amount?: null): UnstakedEventFilter - } + "Unstaked(address,uint256)"( + user?: string | null, + amount?: null + ): UnstakedEventFilter; + Unstaked(user?: string | null, amount?: null): UnstakedEventFilter; + }; - estimateGas: { - _totalSupply(overrides?: CallOverrides): Promise + estimateGas: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: PromiseOrValue }): Promise + getReward(overrides?: Overrides & { from?: string }): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; - populateTransaction: { - _totalSupply(overrides?: CallOverrides): Promise + populateTransaction: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - earned( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + earned( + account: string, + overrides?: CallOverrides + ): Promise; - escrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration( + overrides?: CallOverrides + ): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable( + overrides?: CallOverrides + ): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored( + overrides?: CallOverrides + ): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards( + arg0: string, + overrides?: CallOverrides + ): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts index 87994a5481..4996cd20f4 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts @@ -2,431 +2,515 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: PromiseOrValue - account: PromiseOrValue - amount: PromiseOrValue - merkleProof: PromiseOrValue[] - epoch: PromiseOrValue - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface MultipleMerkleDistributorInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'distributionEpoch()': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'newMerkleRoot(bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'distributionEpoch' - | 'isClaimed' - | 'merkleRoots' - | 'newMerkleRoot' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rewardEscrow' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData(functionFragment: 'distributionEpoch', values?: undefined): string - encodeFunctionData( - functionFragment: 'isClaimed', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'merkleRoots', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'newMerkleRoot', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'distributionEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'newMerkleRoot', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootAdded(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "distributionEpoch()": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "newMerkleRoot(bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "distributionEpoch" + | "isClaimed" + | "merkleRoots" + | "newMerkleRoot" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rewardEscrow" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "distributionEpoch", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "newMerkleRoot", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "distributionEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "newMerkleRoot", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootAdded(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootAddedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootAddedEvent = TypedEvent<[BigNumber], MerkleRootAddedEventObject> +export type MerkleRootAddedEvent = TypedEvent< + [BigNumber], + MerkleRootAddedEventObject +>; -export type MerkleRootAddedEventFilter = TypedEventFilter +export type MerkleRootAddedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributor extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]> - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - newMerkleRoot( - _merkleRoot: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rewardEscrow(overrides?: CallOverrides): Promise<[string]> - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - newMerkleRoot( - _merkleRoot: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - newMerkleRoot(_merkleRoot: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootAdded(uint256)'(epoch?: null): MerkleRootAddedEventFilter - MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - newMerkleRoot( - _merkleRoot: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - newMerkleRoot( - _merkleRoot: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]>; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootAdded(uint256)"(epoch?: null): MerkleRootAddedEventFilter; + MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts index 702b3310c7..87616c572c 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts @@ -2,414 +2,481 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: PromiseOrValue - account: PromiseOrValue - amount: PromiseOrValue - merkleProof: PromiseOrValue[] - epoch: PromiseOrValue - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface MultipleMerkleDistributorOpInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'isClaimed' - | 'merkleRoots' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'setMerkleRootForEpoch' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData( - functionFragment: 'isClaimed', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'merkleRoots', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'setMerkleRootForEpoch', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootModified(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "isClaimed" + | "merkleRoots" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "setMerkleRootForEpoch" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMerkleRootForEpoch", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMerkleRootForEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootModified(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootModifiedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> +export type MerkleRootModifiedEvent = TypedEvent< + [BigNumber], + MerkleRootModifiedEventObject +>; -export type MerkleRootModifiedEventFilter = TypedEventFilter +export type MerkleRootModifiedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributorOp extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorOpInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorOpInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts index 44920d4c41..ba84317629 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts @@ -2,428 +2,502 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: PromiseOrValue - account: PromiseOrValue - amount: PromiseOrValue - merkleProof: PromiseOrValue[] - epoch: PromiseOrValue - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } -export interface MultipleMerkleDistributorPerpsV2Interface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'isClaimed' - | 'merkleRoots' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rewardEscrow' - | 'setMerkleRootForEpoch' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue[], - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData( - functionFragment: 'isClaimed', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'merkleRoots', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData( - functionFragment: 'setMerkleRootForEpoch', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootModified(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment +export interface MultipleMerkleDistributorPerpsV2Interface + extends utils.Interface { + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "isClaimed" + | "merkleRoots" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rewardEscrow" + | "setMerkleRootForEpoch" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setMerkleRootForEpoch", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMerkleRootForEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootModified(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootModifiedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> +export type MerkleRootModifiedEvent = TypedEvent< + [BigNumber], + MerkleRootModifiedEventObject +>; -export type MerkleRootModifiedEventFilter = TypedEventFilter +export type MerkleRootModifiedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributorPerpsV2 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorPerpsV2Interface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rewardEscrow(overrides?: CallOverrides): Promise<[string]> - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claim( - index: PromiseOrValue, - account: PromiseOrValue, - amount: PromiseOrValue, - merkleProof: PromiseOrValue[], - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isClaimed( - index: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - merkleRoots( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: PromiseOrValue, - epoch: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorPerpsV2Interface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2Market.ts b/packages/sdk/src/contracts/types/PerpsV2Market.ts index fe553d5ec3..2d7ed6c78f 100644 --- a/packages/sdk/src/contracts/types/PerpsV2Market.ts +++ b/packages/sdk/src/contracts/types/PerpsV2Market.ts @@ -2,1737 +2,2039 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: PromiseOrValue - sizeDelta: PromiseOrValue - desiredFillPrice: PromiseOrValue - targetRoundId: PromiseOrValue - commitDeposit: PromiseOrValue - keeperDeposit: PromiseOrValue - executableAtTime: PromiseOrValue - intentionTime: PromiseOrValue - trackingCode: PromiseOrValue - } - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean - sizeDelta: BigNumber - desiredFillPrice: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - executableAtTime: BigNumber - intentionTime: BigNumber - trackingCode: string - } - - export type PositionStruct = { - id: PromiseOrValue - lastFundingIndex: PromiseOrValue - margin: PromiseOrValue - lastPrice: PromiseOrValue - size: PromiseOrValue - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type DelayedOrderStruct = { + isOffchain: boolean; + sizeDelta: BigNumberish; + desiredFillPrice: BigNumberish; + targetRoundId: BigNumberish; + commitDeposit: BigNumberish; + keeperDeposit: BigNumberish; + executableAtTime: BigNumberish; + intentionTime: BigNumberish; + trackingCode: BytesLike; + }; + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean; + sizeDelta: BigNumber; + desiredFillPrice: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + executableAtTime: BigNumber; + intentionTime: BigNumber; + trackingCode: string; + }; + + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketInterface extends utils.Interface { - functions: { - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'cancelDelayedOrder(address)': FunctionFragment - 'cancelOffchainDelayedOrder(address)': FunctionFragment - 'closePosition(uint256)': FunctionFragment - 'closePositionWithTracking(uint256,bytes32)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'currentFundingVelocity()': FunctionFragment - 'delayedOrders(address)': FunctionFragment - 'executeDelayedOrder(address)': FunctionFragment - 'executeOffchainDelayedOrder(address,bytes[])': FunctionFragment - 'fillPrice(int256)': FunctionFragment - 'flagPosition(address)': FunctionFragment - 'forceLiquidatePosition(address)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingRateLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isFlagged(address)': FunctionFragment - 'liquidatePosition(address)': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'modifyPosition(int256,uint256)': FunctionFragment - 'modifyPositionWithTracking(int256,uint256,bytes32)': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256,uint8)': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'recomputeFunding()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)': FunctionFragment - 'submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)': FunctionFragment - 'submitDelayedOrder(int256,uint256,uint256)': FunctionFragment - 'submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)': FunctionFragment - 'submitOffchainDelayedOrder(int256,uint256)': FunctionFragment - 'submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)': FunctionFragment - 'transferMargin(int256)': FunctionFragment - 'unrecordedFunding()': FunctionFragment - 'withdrawAllMargin()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'cancelDelayedOrder' - | 'cancelOffchainDelayedOrder' - | 'closePosition' - | 'closePositionWithTracking' - | 'currentFundingRate' - | 'currentFundingVelocity' - | 'delayedOrders' - | 'executeDelayedOrder' - | 'executeOffchainDelayedOrder' - | 'fillPrice' - | 'flagPosition' - | 'forceLiquidatePosition' - | 'fundingLastRecomputed' - | 'fundingRateLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isFlagged' - | 'liquidatePosition' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'modifyPosition' - | 'modifyPositionWithTracking' - | 'notionalValue' - | 'orderFee' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'recomputeFunding' - | 'remainingMargin' - | 'submitCloseDelayedOrderWithTracking' - | 'submitCloseOffchainDelayedOrderWithTracking' - | 'submitDelayedOrder' - | 'submitDelayedOrderWithTracking' - | 'submitOffchainDelayedOrder' - | 'submitOffchainDelayedOrderWithTracking' - | 'transferMargin' - | 'unrecordedFunding' - | 'withdrawAllMargin' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accessibleMargin', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'cancelDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'cancelOffchainDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'closePosition', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'closePositionWithTracking', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string - encodeFunctionData(functionFragment: 'delayedOrders', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'executeDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'executeOffchainDelayedOrder', - values: [PromiseOrValue, PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'fillPrice', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'flagPosition', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'forceLiquidatePosition', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData(functionFragment: 'fundingRateLastRecomputed', values?: undefined): string - encodeFunctionData( - functionFragment: 'fundingSequence', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isFlagged', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'liquidatePosition', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData( - functionFragment: 'modifyPosition', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'modifyPositionWithTracking', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'notionalValue', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'orderFee', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'positions', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'postTradeDetails', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData(functionFragment: 'profitLoss', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'submitCloseDelayedOrderWithTracking', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'submitDelayedOrder', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'submitDelayedOrderWithTracking', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'submitOffchainDelayedOrder', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'submitOffchainDelayedOrderWithTracking', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferMargin', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string - - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'delayedOrders', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'flagPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'forceLiquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingRateLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isFlagged', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitCloseDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'submitDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitDelayedOrderWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitOffchainDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result - - events: { - 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)': EventFragment - 'FundingRecomputed(int256,int256,uint256,uint256)': EventFragment - 'MarginTransferred(address,int256)': EventFragment - 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment - 'PositionFlagged(uint256,address,address,uint256)': EventFragment - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)': EventFragment - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'DelayedOrderRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DelayedOrderSubmitted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PerpsTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionFlagged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment + functions: { + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "cancelDelayedOrder(address)": FunctionFragment; + "cancelOffchainDelayedOrder(address)": FunctionFragment; + "closePosition(uint256)": FunctionFragment; + "closePositionWithTracking(uint256,bytes32)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "currentFundingVelocity()": FunctionFragment; + "delayedOrders(address)": FunctionFragment; + "executeDelayedOrder(address)": FunctionFragment; + "executeOffchainDelayedOrder(address,bytes[])": FunctionFragment; + "fillPrice(int256)": FunctionFragment; + "flagPosition(address)": FunctionFragment; + "forceLiquidatePosition(address)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingRateLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isFlagged(address)": FunctionFragment; + "liquidatePosition(address)": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "modifyPosition(int256,uint256)": FunctionFragment; + "modifyPositionWithTracking(int256,uint256,bytes32)": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256,uint8)": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "recomputeFunding()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)": FunctionFragment; + "submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)": FunctionFragment; + "submitDelayedOrder(int256,uint256,uint256)": FunctionFragment; + "submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)": FunctionFragment; + "submitOffchainDelayedOrder(int256,uint256)": FunctionFragment; + "submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)": FunctionFragment; + "transferMargin(int256)": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + "withdrawAllMargin()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "cancelDelayedOrder" + | "cancelOffchainDelayedOrder" + | "closePosition" + | "closePositionWithTracking" + | "currentFundingRate" + | "currentFundingVelocity" + | "delayedOrders" + | "executeDelayedOrder" + | "executeOffchainDelayedOrder" + | "fillPrice" + | "flagPosition" + | "forceLiquidatePosition" + | "fundingLastRecomputed" + | "fundingRateLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isFlagged" + | "liquidatePosition" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "modifyPosition" + | "modifyPositionWithTracking" + | "notionalValue" + | "orderFee" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "recomputeFunding" + | "remainingMargin" + | "submitCloseDelayedOrderWithTracking" + | "submitCloseOffchainDelayedOrderWithTracking" + | "submitDelayedOrder" + | "submitDelayedOrderWithTracking" + | "submitOffchainDelayedOrder" + | "submitOffchainDelayedOrderWithTracking" + | "transferMargin" + | "unrecordedFunding" + | "withdrawAllMargin" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelOffchainDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "closePosition", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "closePositionWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "delayedOrders", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "executeDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "executeOffchainDelayedOrder", + values: [string, BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "flagPosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "forceLiquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingRateLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "isFlagged", values: [string]): string; + encodeFunctionData( + functionFragment: "liquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "modifyPosition", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyPositionWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "recomputeFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "submitCloseDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitCloseOffchainDelayedOrderWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitDelayedOrder", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitOffchainDelayedOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitOffchainDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "transferMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "withdrawAllMargin", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "delayedOrders", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "flagPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "forceLiquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingRateLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isFlagged", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "liquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "modifyPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyPositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "recomputeFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitCloseDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitCloseOffchainDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitOffchainDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawAllMargin", + data: BytesLike + ): Result; + + events: { + "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)": EventFragment; + "FundingRecomputed(int256,int256,uint256,uint256)": EventFragment; + "MarginTransferred(address,int256)": EventFragment; + "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; + "PositionFlagged(uint256,address,address,uint256)": EventFragment; + "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)": EventFragment; + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "DelayedOrderRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "DelayedOrderSubmitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PerpsTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionFlagged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; } export interface DelayedOrderRemovedEventObject { - account: string - isOffchain: boolean - currentRoundId: BigNumber - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + isOffchain: boolean; + currentRoundId: BigNumber; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type DelayedOrderRemovedEvent = TypedEvent< - [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - DelayedOrderRemovedEventObject -> - -export type DelayedOrderRemovedEventFilter = TypedEventFilter + [ + string, + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ], + DelayedOrderRemovedEventObject +>; + +export type DelayedOrderRemovedEventFilter = + TypedEventFilter; export interface DelayedOrderSubmittedEventObject { - account: string - isOffchain: boolean - sizeDelta: BigNumber - targetRoundId: BigNumber - intentionTime: BigNumber - executableAtTime: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + isOffchain: boolean; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + intentionTime: BigNumber; + executableAtTime: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type DelayedOrderSubmittedEvent = TypedEvent< - [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - DelayedOrderSubmittedEventObject -> - -export type DelayedOrderSubmittedEventFilter = TypedEventFilter + [ + string, + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ], + DelayedOrderSubmittedEventObject +>; + +export type DelayedOrderSubmittedEventFilter = + TypedEventFilter; export interface FundingRecomputedEventObject { - funding: BigNumber - fundingRate: BigNumber - index: BigNumber - timestamp: BigNumber + funding: BigNumber; + fundingRate: BigNumber; + index: BigNumber; + timestamp: BigNumber; } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject -> + [BigNumber, BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +>; -export type FundingRecomputedEventFilter = TypedEventFilter +export type FundingRecomputedEventFilter = + TypedEventFilter; export interface MarginTransferredEventObject { - account: string - marginDelta: BigNumber + account: string; + marginDelta: BigNumber; } -export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> +export type MarginTransferredEvent = TypedEvent< + [string, BigNumber], + MarginTransferredEventObject +>; -export type MarginTransferredEventFilter = TypedEventFilter +export type MarginTransferredEventFilter = + TypedEventFilter; export interface PerpsTrackingEventObject { - trackingCode: string - baseAsset: string - marketKey: string - sizeDelta: BigNumber - fee: BigNumber + trackingCode: string; + baseAsset: string; + marketKey: string; + sizeDelta: BigNumber; + fee: BigNumber; } export type PerpsTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - PerpsTrackingEventObject -> + [string, string, string, BigNumber, BigNumber], + PerpsTrackingEventObject +>; -export type PerpsTrackingEventFilter = TypedEventFilter +export type PerpsTrackingEventFilter = TypedEventFilter; export interface PositionFlaggedEventObject { - id: BigNumber - account: string - flagger: string - timestamp: BigNumber + id: BigNumber; + account: string; + flagger: string; + timestamp: BigNumber; } export type PositionFlaggedEvent = TypedEvent< - [BigNumber, string, string, BigNumber], - PositionFlaggedEventObject -> + [BigNumber, string, string, BigNumber], + PositionFlaggedEventObject +>; -export type PositionFlaggedEventFilter = TypedEventFilter +export type PositionFlaggedEventFilter = TypedEventFilter; export interface PositionLiquidatedEventObject { - id: BigNumber - account: string - liquidator: string - size: BigNumber - price: BigNumber - flaggerFee: BigNumber - liquidatorFee: BigNumber - stakersFee: BigNumber + id: BigNumber; + account: string; + liquidator: string; + size: BigNumber; + price: BigNumber; + flaggerFee: BigNumber; + liquidatorFee: BigNumber; + stakersFee: BigNumber; } export type PositionLiquidatedEvent = TypedEvent< - [BigNumber, string, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionLiquidatedEventObject -> - -export type PositionLiquidatedEventFilter = TypedEventFilter + [ + BigNumber, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionLiquidatedEventObject +>; + +export type PositionLiquidatedEventFilter = + TypedEventFilter; export interface PositionModifiedEventObject { - id: BigNumber - account: string - margin: BigNumber - size: BigNumber - tradeSize: BigNumber - lastPrice: BigNumber - fundingIndex: BigNumber - fee: BigNumber - skew: BigNumber + id: BigNumber; + account: string; + margin: BigNumber; + size: BigNumber; + tradeSize: BigNumber; + lastPrice: BigNumber; + fundingIndex: BigNumber; + fee: BigNumber; + skew: BigNumber; } export type PositionModifiedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionModifiedEventObject -> - -export type PositionModifiedEventFilter = TypedEventFilter + [ + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionModifiedEventObject +>; + +export type PositionModifiedEventFilter = + TypedEventFilter; export interface PerpsV2Market extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]> - - cancelDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - cancelOffchainDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber] & { fundingRate: BigNumber }> - - currentFundingVelocity( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingVelocity: BigNumber }> - - delayedOrders( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]> - - executeDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - executeOffchainDelayedOrder( - account: PromiseOrValue, - priceUpdateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - forceLiquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number] & { timestamp: number }> - - fundingRateLastRecomputed( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingRate: BigNumber }> - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { netFunding: BigNumber }> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber] & { length: BigNumber }> - - isFlagged(account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]> - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber] & { size: BigNumber }> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber] & { skew: BigNumber }> - - modifyPosition( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]> - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrder( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - cancelOffchainDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - executeDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - executeOffchainDelayedOrder( - account: PromiseOrValue, - priceUpdateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - forceLiquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrder( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelDelayedOrder(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelOffchainDelayedOrder( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - closePosition( - desiredFillPrice: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - closePositionWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - executeDelayedOrder(account: PromiseOrValue, overrides?: CallOverrides): Promise - - executeOffchainDelayedOrder( - account: PromiseOrValue, - priceUpdateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition(account: PromiseOrValue, overrides?: CallOverrides): Promise - - forceLiquidatePosition( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidatePosition(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding(overrides?: CallOverrides): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitDelayedOrder( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: CallOverrides): Promise - } - - filters: { - 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)'( - account?: PromiseOrValue | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter - DelayedOrderRemoved( - account?: PromiseOrValue | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter - - 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)'( - account?: PromiseOrValue | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter - DelayedOrderSubmitted( - account?: PromiseOrValue | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter - - 'FundingRecomputed(int256,int256,uint256,uint256)'( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - FundingRecomputed( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - - 'MarginTransferred(address,int256)'( - account?: PromiseOrValue | null, - marginDelta?: null - ): MarginTransferredEventFilter - MarginTransferred( - account?: PromiseOrValue | null, - marginDelta?: null - ): MarginTransferredEventFilter - - 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)'( - trackingCode?: PromiseOrValue | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter - PerpsTracking( - trackingCode?: PromiseOrValue | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter - - 'PositionFlagged(uint256,address,address,uint256)'( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter - PositionFlagged( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter - - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)'( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter - PositionLiquidated( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter - - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)'( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter - PositionModified( - id?: PromiseOrValue | null, - account?: PromiseOrValue | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter - } - - estimateGas: { - accessibleMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise - - accruedFunding(account: PromiseOrValue, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - cancelDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - cancelOffchainDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders(account: PromiseOrValue, overrides?: CallOverrides): Promise - - executeDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - executeOffchainDelayedOrder( - account: PromiseOrValue, - priceUpdateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - flagPosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - forceLiquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice(account: PromiseOrValue, overrides?: CallOverrides): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - notionalValue(account: PromiseOrValue, overrides?: CallOverrides): Promise - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positions(account: PromiseOrValue, overrides?: CallOverrides): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - profitLoss(account: PromiseOrValue, overrides?: CallOverrides): Promise - - recomputeFunding(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - remainingMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrder( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin(overrides?: Overrides & { from?: PromiseOrValue }): Promise - } - - populateTransaction: { - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - cancelDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - cancelOffchainDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePosition( - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - closePositionWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - executeDelayedOrder( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - executeOffchainDelayedOrder( - account: PromiseOrValue, - priceUpdateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - flagPosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - forceLiquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - liquidatePosition( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidationFee( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - modifyPositionWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - recomputeFunding( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrder( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredTimeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: PromiseOrValue, - desiredFillPrice: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferMargin( - marginDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV2MarketInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingRate: BigNumber }>; + + currentFundingVelocity( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingVelocity: BigNumber }>; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]>; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise<[number] & { timestamp: number }>; + + fundingRateLastRecomputed( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingRate: BigNumber }>; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { netFunding: BigNumber }>; + + fundingSequenceLength( + overrides?: CallOverrides + ): Promise<[BigNumber] & { length: BigNumber }>; + + isFlagged(account: string, overrides?: CallOverrides): Promise<[boolean]>; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + marketSize( + overrides?: CallOverrides + ): Promise<[BigNumber] & { size: BigNumber }>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew( + overrides?: CallOverrides + ): Promise<[BigNumber] & { skew: BigNumber }>; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]>; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition(account: string, overrides?: CallOverrides): Promise; + + forceLiquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding(overrides?: CallOverrides): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin(overrides?: CallOverrides): Promise; + }; + + filters: { + "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter; + DelayedOrderRemoved( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter; + + "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter; + DelayedOrderSubmitted( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter; + + "FundingRecomputed(int256,int256,uint256,uint256)"( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + FundingRecomputed( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + + "MarginTransferred(address,int256)"( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + MarginTransferred( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + + "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)"( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter; + PerpsTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter; + + "PositionFlagged(uint256,address,address,uint256)"( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter; + PositionFlagged( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter; + + "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)"( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter; + PositionLiquidated( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter; + + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)"( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter; + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter; + }; + + estimateGas: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions(account: string, overrides?: CallOverrides): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss(account: string, overrides?: CallOverrides): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + overrides?: CallOverrides + ): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; + + fundingRateLastRecomputed( + overrides?: CallOverrides + ): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; + + isFlagged( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts index e40b6cb401..cc4cc45a4e 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts @@ -2,648 +2,718 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace PerpsV2MarketData { - export type FeeRatesStruct = { - takerFee: PromiseOrValue - makerFee: PromiseOrValue - takerFeeDelayedOrder: PromiseOrValue - makerFeeDelayedOrder: PromiseOrValue - takerFeeOffchainDelayedOrder: PromiseOrValue - makerFeeOffchainDelayedOrder: PromiseOrValue - } - - export type FeeRatesStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeDelayedOrder: BigNumber - makerFeeDelayedOrder: BigNumber - takerFeeOffchainDelayedOrder: BigNumber - makerFeeOffchainDelayedOrder: BigNumber - } - - export type MarketSummaryStruct = { - market: PromiseOrValue - asset: PromiseOrValue - key: PromiseOrValue - maxLeverage: PromiseOrValue - price: PromiseOrValue - marketSize: PromiseOrValue - marketSkew: PromiseOrValue - marketDebt: PromiseOrValue - currentFundingRate: PromiseOrValue - currentFundingVelocity: PromiseOrValue - feeRates: PerpsV2MarketData.FeeRatesStruct - } - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - PerpsV2MarketData.FeeRatesStructOutput - ] & { - market: string - asset: string - key: string - maxLeverage: BigNumber - price: BigNumber - marketSize: BigNumber - marketSkew: BigNumber - marketDebt: BigNumber - currentFundingRate: BigNumber - currentFundingVelocity: BigNumber - feeRates: PerpsV2MarketData.FeeRatesStructOutput - } - - export type FuturesGlobalsStruct = { - minInitialMargin: PromiseOrValue - liquidationFeeRatio: PromiseOrValue - minKeeperFee: PromiseOrValue - maxKeeperFee: PromiseOrValue - } - - export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - minInitialMargin: BigNumber - liquidationFeeRatio: BigNumber - minKeeperFee: BigNumber - maxKeeperFee: BigNumber - } - - export type MarketLimitsStruct = { - maxLeverage: PromiseOrValue - maxMarketValue: PromiseOrValue - } - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber - maxMarketValue: BigNumber - } - - export type FundingParametersStruct = { - maxFundingVelocity: PromiseOrValue - skewScale: PromiseOrValue - } - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingVelocity: BigNumber - skewScale: BigNumber - } - - export type SidesStruct = { - long: PromiseOrValue - short: PromiseOrValue - } - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber - short: BigNumber - } - - export type MarketSizeDetailsStruct = { - marketSize: PromiseOrValue - sides: PerpsV2MarketData.SidesStruct - marketDebt: PromiseOrValue - marketSkew: PromiseOrValue - } - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - PerpsV2MarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber - sides: PerpsV2MarketData.SidesStructOutput - marketDebt: BigNumber - marketSkew: BigNumber - } - - export type PriceDetailsStruct = { - price: PromiseOrValue - invalid: PromiseOrValue - } - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber - invalid: boolean - } - - export type MarketDataStruct = { - market: PromiseOrValue - baseAsset: PromiseOrValue - marketKey: PromiseOrValue - feeRates: PerpsV2MarketData.FeeRatesStruct - limits: PerpsV2MarketData.MarketLimitsStruct - fundingParameters: PerpsV2MarketData.FundingParametersStruct - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct - priceDetails: PerpsV2MarketData.PriceDetailsStruct - } - - export type MarketDataStructOutput = [ - string, - string, - string, - PerpsV2MarketData.FeeRatesStructOutput, - PerpsV2MarketData.MarketLimitsStructOutput, - PerpsV2MarketData.FundingParametersStructOutput, - PerpsV2MarketData.MarketSizeDetailsStructOutput, - PerpsV2MarketData.PriceDetailsStructOutput - ] & { - market: string - baseAsset: string - marketKey: string - feeRates: PerpsV2MarketData.FeeRatesStructOutput - limits: PerpsV2MarketData.MarketLimitsStructOutput - fundingParameters: PerpsV2MarketData.FundingParametersStructOutput - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput - priceDetails: PerpsV2MarketData.PriceDetailsStructOutput - } - - export type PositionDataStruct = { - position: IPerpsV2MarketBaseTypes.PositionStruct - notionalValue: PromiseOrValue - profitLoss: PromiseOrValue - accruedFunding: PromiseOrValue - remainingMargin: PromiseOrValue - accessibleMargin: PromiseOrValue - liquidationPrice: PromiseOrValue - canLiquidatePosition: PromiseOrValue - } - - export type PositionDataStructOutput = [ - IPerpsV2MarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IPerpsV2MarketBaseTypes.PositionStructOutput - notionalValue: BigNumber - profitLoss: BigNumber - accruedFunding: BigNumber - remainingMargin: BigNumber - accessibleMargin: BigNumber - liquidationPrice: BigNumber - canLiquidatePosition: boolean - } + export type FeeRatesStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeDelayedOrder: BigNumberish; + makerFeeDelayedOrder: BigNumberish; + takerFeeOffchainDelayedOrder: BigNumberish; + makerFeeOffchainDelayedOrder: BigNumberish; + }; + + export type FeeRatesStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeDelayedOrder: BigNumber; + makerFeeDelayedOrder: BigNumber; + takerFeeOffchainDelayedOrder: BigNumber; + makerFeeOffchainDelayedOrder: BigNumber; + }; + + export type MarketSummaryStruct = { + market: string; + asset: BytesLike; + key: BytesLike; + maxLeverage: BigNumberish; + price: BigNumberish; + marketSize: BigNumberish; + marketSkew: BigNumberish; + marketDebt: BigNumberish; + currentFundingRate: BigNumberish; + currentFundingVelocity: BigNumberish; + feeRates: PerpsV2MarketData.FeeRatesStruct; + }; + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + PerpsV2MarketData.FeeRatesStructOutput + ] & { + market: string; + asset: string; + key: string; + maxLeverage: BigNumber; + price: BigNumber; + marketSize: BigNumber; + marketSkew: BigNumber; + marketDebt: BigNumber; + currentFundingRate: BigNumber; + currentFundingVelocity: BigNumber; + feeRates: PerpsV2MarketData.FeeRatesStructOutput; + }; + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish; + liquidationFeeRatio: BigNumberish; + minKeeperFee: BigNumberish; + maxKeeperFee: BigNumberish; + }; + + export type FuturesGlobalsStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + minInitialMargin: BigNumber; + liquidationFeeRatio: BigNumber; + minKeeperFee: BigNumber; + maxKeeperFee: BigNumber; + }; + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish; + maxMarketValue: BigNumberish; + }; + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber; + maxMarketValue: BigNumber; + }; + + export type FundingParametersStruct = { + maxFundingVelocity: BigNumberish; + skewScale: BigNumberish; + }; + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingVelocity: BigNumber; + skewScale: BigNumber; + }; + + export type SidesStruct = { long: BigNumberish; short: BigNumberish }; + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber; + short: BigNumber; + }; + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish; + sides: PerpsV2MarketData.SidesStruct; + marketDebt: BigNumberish; + marketSkew: BigNumberish; + }; + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + PerpsV2MarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber; + sides: PerpsV2MarketData.SidesStructOutput; + marketDebt: BigNumber; + marketSkew: BigNumber; + }; + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber; + invalid: boolean; + }; + + export type MarketDataStruct = { + market: string; + baseAsset: BytesLike; + marketKey: BytesLike; + feeRates: PerpsV2MarketData.FeeRatesStruct; + limits: PerpsV2MarketData.MarketLimitsStruct; + fundingParameters: PerpsV2MarketData.FundingParametersStruct; + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct; + priceDetails: PerpsV2MarketData.PriceDetailsStruct; + }; + + export type MarketDataStructOutput = [ + string, + string, + string, + PerpsV2MarketData.FeeRatesStructOutput, + PerpsV2MarketData.MarketLimitsStructOutput, + PerpsV2MarketData.FundingParametersStructOutput, + PerpsV2MarketData.MarketSizeDetailsStructOutput, + PerpsV2MarketData.PriceDetailsStructOutput + ] & { + market: string; + baseAsset: string; + marketKey: string; + feeRates: PerpsV2MarketData.FeeRatesStructOutput; + limits: PerpsV2MarketData.MarketLimitsStructOutput; + fundingParameters: PerpsV2MarketData.FundingParametersStructOutput; + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput; + priceDetails: PerpsV2MarketData.PriceDetailsStructOutput; + }; + + export type PositionDataStruct = { + position: IPerpsV2MarketBaseTypes.PositionStruct; + notionalValue: BigNumberish; + profitLoss: BigNumberish; + accruedFunding: BigNumberish; + remainingMargin: BigNumberish; + accessibleMargin: BigNumberish; + liquidationPrice: BigNumberish; + canLiquidatePosition: boolean; + }; + + export type PositionDataStructOutput = [ + IPerpsV2MarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IPerpsV2MarketBaseTypes.PositionStructOutput; + notionalValue: BigNumber; + profitLoss: BigNumber; + accruedFunding: BigNumber; + remainingMargin: BigNumber; + accessibleMargin: BigNumber; + liquidationPrice: BigNumber; + canLiquidatePosition: boolean; + }; } export declare namespace IPerpsV2MarketSettings { - export type ParametersStruct = { - takerFee: PromiseOrValue - makerFee: PromiseOrValue - takerFeeDelayedOrder: PromiseOrValue - makerFeeDelayedOrder: PromiseOrValue - takerFeeOffchainDelayedOrder: PromiseOrValue - makerFeeOffchainDelayedOrder: PromiseOrValue - maxLeverage: PromiseOrValue - maxMarketValue: PromiseOrValue - maxFundingVelocity: PromiseOrValue - skewScale: PromiseOrValue - nextPriceConfirmWindow: PromiseOrValue - delayedOrderConfirmWindow: PromiseOrValue - minDelayTimeDelta: PromiseOrValue - maxDelayTimeDelta: PromiseOrValue - offchainDelayedOrderMinAge: PromiseOrValue - offchainDelayedOrderMaxAge: PromiseOrValue - offchainMarketKey: PromiseOrValue - offchainPriceDivergence: PromiseOrValue - liquidationPremiumMultiplier: PromiseOrValue - liquidationBufferRatio: PromiseOrValue - maxLiquidationDelta: PromiseOrValue - maxPD: PromiseOrValue - } - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeDelayedOrder: BigNumber - makerFeeDelayedOrder: BigNumber - takerFeeOffchainDelayedOrder: BigNumber - makerFeeOffchainDelayedOrder: BigNumber - maxLeverage: BigNumber - maxMarketValue: BigNumber - maxFundingVelocity: BigNumber - skewScale: BigNumber - nextPriceConfirmWindow: BigNumber - delayedOrderConfirmWindow: BigNumber - minDelayTimeDelta: BigNumber - maxDelayTimeDelta: BigNumber - offchainDelayedOrderMinAge: BigNumber - offchainDelayedOrderMaxAge: BigNumber - offchainMarketKey: string - offchainPriceDivergence: BigNumber - liquidationPremiumMultiplier: BigNumber - liquidationBufferRatio: BigNumber - maxLiquidationDelta: BigNumber - maxPD: BigNumber - } + export type ParametersStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeDelayedOrder: BigNumberish; + makerFeeDelayedOrder: BigNumberish; + takerFeeOffchainDelayedOrder: BigNumberish; + makerFeeOffchainDelayedOrder: BigNumberish; + maxLeverage: BigNumberish; + maxMarketValue: BigNumberish; + maxFundingVelocity: BigNumberish; + skewScale: BigNumberish; + nextPriceConfirmWindow: BigNumberish; + delayedOrderConfirmWindow: BigNumberish; + minDelayTimeDelta: BigNumberish; + maxDelayTimeDelta: BigNumberish; + offchainDelayedOrderMinAge: BigNumberish; + offchainDelayedOrderMaxAge: BigNumberish; + offchainMarketKey: BytesLike; + offchainPriceDivergence: BigNumberish; + liquidationPremiumMultiplier: BigNumberish; + liquidationBufferRatio: BigNumberish; + maxLiquidationDelta: BigNumberish; + maxPD: BigNumberish; + }; + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeDelayedOrder: BigNumber; + makerFeeDelayedOrder: BigNumber; + takerFeeOffchainDelayedOrder: BigNumber; + makerFeeOffchainDelayedOrder: BigNumber; + maxLeverage: BigNumber; + maxMarketValue: BigNumber; + maxFundingVelocity: BigNumber; + skewScale: BigNumber; + nextPriceConfirmWindow: BigNumber; + delayedOrderConfirmWindow: BigNumber; + minDelayTimeDelta: BigNumber; + maxDelayTimeDelta: BigNumber; + offchainDelayedOrderMinAge: BigNumber; + offchainDelayedOrderMaxAge: BigNumber; + offchainMarketKey: string; + offchainPriceDivergence: BigNumber; + liquidationPremiumMultiplier: BigNumber; + liquidationBufferRatio: BigNumber; + maxLiquidationDelta: BigNumber; + maxPD: BigNumber; + }; } export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: PromiseOrValue - lastFundingIndex: PromiseOrValue - margin: PromiseOrValue - lastPrice: PromiseOrValue - size: PromiseOrValue - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketDataInterface extends utils.Interface { - functions: { - 'allMarketSummaries()': FunctionFragment - 'allProxiedMarketSummaries()': FunctionFragment - 'globals()': FunctionFragment - 'marketDetails(address)': FunctionFragment - 'marketDetailsForKey(bytes32)': FunctionFragment - 'marketSummaries(address[])': FunctionFragment - 'marketSummariesForKeys(bytes32[])': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'positionDetails(address,address)': FunctionFragment - 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment - 'resolverProxy()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'allMarketSummaries' - | 'allProxiedMarketSummaries' - | 'globals' - | 'marketDetails' - | 'marketDetailsForKey' - | 'marketSummaries' - | 'marketSummariesForKeys' - | 'parameters' - | 'positionDetails' - | 'positionDetailsForMarketKey' - | 'resolverProxy' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'allProxiedMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'globals', values?: undefined): string - encodeFunctionData(functionFragment: 'marketDetails', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'marketDetailsForKey', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'marketSummaries', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'marketSummariesForKeys', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'parameters', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'positionDetails', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'positionDetailsForMarketKey', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string - - decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allProxiedMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result - - events: {} + functions: { + "allMarketSummaries()": FunctionFragment; + "allProxiedMarketSummaries()": FunctionFragment; + "globals()": FunctionFragment; + "marketDetails(address)": FunctionFragment; + "marketDetailsForKey(bytes32)": FunctionFragment; + "marketSummaries(address[])": FunctionFragment; + "marketSummariesForKeys(bytes32[])": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "positionDetails(address,address)": FunctionFragment; + "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; + "resolverProxy()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "allMarketSummaries" + | "allProxiedMarketSummaries" + | "globals" + | "marketDetails" + | "marketDetailsForKey" + | "marketSummaries" + | "marketSummariesForKeys" + | "parameters" + | "positionDetails" + | "positionDetailsForMarketKey" + | "resolverProxy" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "allMarketSummaries", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allProxiedMarketSummaries", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "globals", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketDetails", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDetailsForKey", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "marketSummaries", + values: [string[]] + ): string; + encodeFunctionData( + functionFragment: "marketSummariesForKeys", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "positionDetails", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "positionDetailsForMarketKey", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "resolverProxy", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "allMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "allProxiedMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketDetailsForKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummariesForKeys", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "positionDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "positionDetailsForMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resolverProxy", + data: BytesLike + ): Result; + + events: {}; } export interface PerpsV2MarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketDataInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - globals(overrides?: CallOverrides): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]> - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]> - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> - - resolverProxy(overrides?: CallOverrides): Promise<[string]> - } - - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - filters: {} - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise - - allProxiedMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: PromiseOrValue, overrides?: CallOverrides): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters(marketKey: PromiseOrValue, overrides?: CallOverrides): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - populateTransaction: { - allMarketSummaries(overrides?: CallOverrides): Promise - - allProxiedMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV2MarketDataInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + globals( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]>; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]>; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; + + resolverProxy(overrides?: CallOverrides): Promise<[string]>; + }; + + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + filters: {}; + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise; + + allProxiedMarketSummaries(overrides?: CallOverrides): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts index 7019f9e45f..a3c032d521 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts @@ -15,32 +15,32 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IPerpsV2MarketSettings { export type ParametersStruct = { - takerFee: PromiseOrValue - makerFee: PromiseOrValue - takerFeeDelayedOrder: PromiseOrValue - makerFeeDelayedOrder: PromiseOrValue - takerFeeOffchainDelayedOrder: PromiseOrValue - makerFeeOffchainDelayedOrder: PromiseOrValue - maxLeverage: PromiseOrValue - maxMarketValue: PromiseOrValue - maxFundingVelocity: PromiseOrValue - skewScale: PromiseOrValue - nextPriceConfirmWindow: PromiseOrValue - delayedOrderConfirmWindow: PromiseOrValue - minDelayTimeDelta: PromiseOrValue - maxDelayTimeDelta: PromiseOrValue - offchainDelayedOrderMinAge: PromiseOrValue - offchainDelayedOrderMaxAge: PromiseOrValue - offchainMarketKey: PromiseOrValue - offchainPriceDivergence: PromiseOrValue - liquidationPremiumMultiplier: PromiseOrValue - liquidationBufferRatio: PromiseOrValue - maxLiquidationDelta: PromiseOrValue - maxPD: PromiseOrValue + takerFee: BigNumberish + makerFee: BigNumberish + takerFeeDelayedOrder: BigNumberish + makerFeeDelayedOrder: BigNumberish + takerFeeOffchainDelayedOrder: BigNumberish + makerFeeOffchainDelayedOrder: BigNumberish + maxLeverage: BigNumberish + maxMarketValue: BigNumberish + maxFundingVelocity: BigNumberish + skewScale: BigNumberish + nextPriceConfirmWindow: BigNumberish + delayedOrderConfirmWindow: BigNumberish + minDelayTimeDelta: BigNumberish + maxDelayTimeDelta: BigNumberish + offchainDelayedOrderMinAge: BigNumberish + offchainDelayedOrderMaxAge: BigNumberish + offchainMarketKey: BytesLike + offchainPriceDivergence: BigNumberish + liquidationPremiumMultiplier: BigNumberish + liquidationBufferRatio: BigNumberish + maxLiquidationDelta: BigNumberish + maxPD: BigNumberish } export type ParametersStructOutput = [ @@ -232,204 +232,123 @@ export interface PerpsV2MarketSettingsInterface extends utils.Interface { encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'delayedOrderConfirmWindow', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'delayedOrderConfirmWindow', values: [BytesLike]): string encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string encodeFunctionData(functionFragment: 'keeperLiquidationFee', values?: undefined): string - encodeFunctionData( - functionFragment: 'liquidationBufferRatio', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'liquidationBufferRatio', values: [BytesLike]): string encodeFunctionData(functionFragment: 'liquidationFeeRatio', values?: undefined): string - encodeFunctionData( - functionFragment: 'liquidationPremiumMultiplier', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'makerFee', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'makerFeeDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'makerFeeOffchainDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'maxDelayTimeDelta', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'maxFundingVelocity', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'liquidationPremiumMultiplier', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'makerFee', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'makerFeeDelayedOrder', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'makerFeeOffchainDelayedOrder', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxDelayTimeDelta', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxFundingVelocity', values: [BytesLike]): string encodeFunctionData(functionFragment: 'maxKeeperFee', values?: undefined): string - encodeFunctionData(functionFragment: 'maxLeverage', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'maxLiquidationDelta', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'maxMarketValue', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'maxPD', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'minDelayTimeDelta', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'maxLeverage', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxLiquidationDelta', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxMarketValue', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'maxPD', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'minDelayTimeDelta', values: [BytesLike]): string encodeFunctionData(functionFragment: 'minInitialMargin', values?: undefined): string encodeFunctionData(functionFragment: 'minKeeperFee', values?: undefined): string - encodeFunctionData( - functionFragment: 'nextPriceConfirmWindow', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'nextPriceConfirmWindow', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData( - functionFragment: 'offchainDelayedOrderMaxAge', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'offchainDelayedOrderMinAge', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'offchainMarketKey', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'offchainPriceDivergence', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'offchainDelayedOrderMaxAge', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'offchainDelayedOrderMinAge', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'offchainMarketKey', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'offchainPriceDivergence', values: [BytesLike]): string encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'parameters', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string encodeFunctionData(functionFragment: 'resolver', values?: undefined): string encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string encodeFunctionData( functionFragment: 'setDelayedOrderConfirmWindow', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setKeeperLiquidationFee', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setKeeperLiquidationFee', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setLiquidationBufferRatio', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationFeeRatio', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setLiquidationFeeRatio', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setLiquidationPremiumMultiplier', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMakerFee', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMakerFee', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setMakerFeeDelayedOrder', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setMakerFeeOffchainDelayedOrder', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setMaxDelayTimeDelta', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setMaxFundingVelocity', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaxKeeperFee', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaxLeverage', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMaxKeeperFee', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setMaxLeverage', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setMaxLiquidationDelta', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setMaxMarketValue', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMaxPD', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMaxPD', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setMinDelayTimeDelta', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMinInitialMargin', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMinKeeperFee', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setMinInitialMargin', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setMinKeeperFee', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setNextPriceConfirmWindow', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setOffchainDelayedOrderMaxAge', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setOffchainDelayedOrderMinAge', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setOffchainMarketKey', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BytesLike] ): string encodeFunctionData( functionFragment: 'setOffchainPriceDivergence', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setParameters', - values: [PromiseOrValue, IPerpsV2MarketSettings.ParametersStruct] - ): string - encodeFunctionData( - functionFragment: 'setSkewScale', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTakerFee', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, IPerpsV2MarketSettings.ParametersStruct] ): string + encodeFunctionData(functionFragment: 'setSkewScale', values: [BytesLike, BigNumberish]): string + encodeFunctionData(functionFragment: 'setTakerFee', values: [BytesLike, BigNumberish]): string encodeFunctionData( functionFragment: 'setTakerFeeDelayedOrder', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setTakerFeeOffchainDelayedOrder', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'skewScale', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'takerFee', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'takerFeeDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'takerFeeOffchainDelayedOrder', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'skewScale', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'takerFee', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'takerFeeDelayedOrder', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'takerFeeOffchainDelayedOrder', values: [BytesLike]): string decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result @@ -540,8 +459,9 @@ export type KeeperLiquidationFeeUpdatedEvent = TypedEvent< KeeperLiquidationFeeUpdatedEventObject > -export type KeeperLiquidationFeeUpdatedEventFilter = - TypedEventFilter +export type KeeperLiquidationFeeUpdatedEventFilter = TypedEventFilter< + KeeperLiquidationFeeUpdatedEvent +> export interface LiquidationBufferRatioUpdatedEventObject { bps: BigNumber @@ -551,8 +471,9 @@ export type LiquidationBufferRatioUpdatedEvent = TypedEvent< LiquidationBufferRatioUpdatedEventObject > -export type LiquidationBufferRatioUpdatedEventFilter = - TypedEventFilter +export type LiquidationBufferRatioUpdatedEventFilter = TypedEventFilter< + LiquidationBufferRatioUpdatedEvent +> export interface LiquidationFeeRatioUpdatedEventObject { bps: BigNumber @@ -562,8 +483,9 @@ export type LiquidationFeeRatioUpdatedEvent = TypedEvent< LiquidationFeeRatioUpdatedEventObject > -export type LiquidationFeeRatioUpdatedEventFilter = - TypedEventFilter +export type LiquidationFeeRatioUpdatedEventFilter = TypedEventFilter< + LiquidationFeeRatioUpdatedEvent +> export interface MaxKeeperFeeUpdatedEventObject { sUSD: BigNumber @@ -655,12 +577,10 @@ export interface PerpsV2MarketSettings extends BaseContract { functions: { CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise delayedOrderConfirmWindow( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> @@ -668,110 +588,75 @@ export interface PerpsV2MarketSettings extends BaseContract { keeperLiquidationFee(overrides?: CallOverrides): Promise<[BigNumber]> - liquidationBufferRatio( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]> liquidationPremiumMultiplier( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - makerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> makerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> - maxDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxFundingVelocity( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> maxKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxLiquidationDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxMarketValue( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - maxPD(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - minDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]> minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise<[string]> offchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> offchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> - offchainMarketKey( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]> + offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[string]> - offchainPriceDivergence( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> owner(overrides?: CallOverrides): Promise<[string]> parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]> - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise<[string]> @@ -780,593 +665,490 @@ export interface PerpsV2MarketSettings extends BaseContract { ): Promise<[string[]] & { addresses: string[] }> setDelayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - _delayedOrderConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setKeeperLiquidationFee( - _keeperFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationBufferRatio( - _marketKey: PromiseOrValue, - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - _liquidationPremiumMultiplier: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxDelayTimeDelta( - _marketKey: PromiseOrValue, - _maxDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingVelocity( - _marketKey: PromiseOrValue, - _maxFundingVelocity: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLiquidationDelta( - _marketKey: PromiseOrValue, - _maxLiquidationDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValue( - _marketKey: PromiseOrValue, - _maxMarketValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxPD( - _marketKey: PromiseOrValue, - _maxPD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinDelayTimeDelta( - _marketKey: PromiseOrValue, - _minDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMaxAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMinAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainMarketKey( - _marketKey: PromiseOrValue, - _offchainMarketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } ): Promise setOffchainPriceDivergence( - _marketKey: PromiseOrValue, - _offchainPriceDivergence: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: PromiseOrValue } + overrides?: Overrides & { from?: string } ): Promise setSkewScale( - _marketKey: PromiseOrValue, - _skewScale: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScale( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - takerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> takerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> } CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - delayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise keeperLiquidationFee(overrides?: CallOverrides): Promise - liquidationBufferRatio( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise liquidationFeeRatio(overrides?: CallOverrides): Promise - liquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationPremiumMultiplier(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeOffchainDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingVelocity( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise maxKeeperFee(overrides?: CallOverrides): Promise - maxLeverage(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLiquidationDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValue( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxPD(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - minDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise - offchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainMarketKey( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainPriceDivergence( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setDelayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - _delayedOrderConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setKeeperLiquidationFee( - _keeperFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationBufferRatio( - _marketKey: PromiseOrValue, - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - _liquidationPremiumMultiplier: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxDelayTimeDelta( - _marketKey: PromiseOrValue, - _maxDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingVelocity( - _marketKey: PromiseOrValue, - _maxFundingVelocity: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLiquidationDelta( - _marketKey: PromiseOrValue, - _maxLiquidationDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValue( - _marketKey: PromiseOrValue, - _maxMarketValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxPD( - _marketKey: PromiseOrValue, - _maxPD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinDelayTimeDelta( - _marketKey: PromiseOrValue, - _minDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMaxAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMinAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainMarketKey( - _marketKey: PromiseOrValue, - _offchainMarketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } ): Promise setOffchainPriceDivergence( - _marketKey: PromiseOrValue, - _offchainPriceDivergence: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: PromiseOrValue } + overrides?: Overrides & { from?: string } ): Promise setSkewScale( - _marketKey: PromiseOrValue, - _skewScale: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScale(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeOffchainDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise callStatic: { CONTRACT_NAME(overrides?: CallOverrides): Promise acceptOwnership(overrides?: CallOverrides): Promise - delayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise keeperLiquidationFee(overrides?: CallOverrides): Promise - liquidationBufferRatio( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise liquidationFeeRatio(overrides?: CallOverrides): Promise liquidationPremiumMultiplier( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise makerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - maxDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingVelocity( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise maxKeeperFee(overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLiquidationDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValue( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxPD(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - minDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise nominatedOwner(overrides?: CallOverrides): Promise - offchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainMarketKey( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainPriceDivergence( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise parameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise @@ -1377,173 +1159,157 @@ export interface PerpsV2MarketSettings extends BaseContract { resolverAddressesRequired(overrides?: CallOverrides): Promise setDelayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - _delayedOrderConfirmWindow: PromiseOrValue, + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, overrides?: CallOverrides ): Promise - setKeeperLiquidationFee( - _keeperFee: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setKeeperLiquidationFee(_keeperFee: BigNumberish, overrides?: CallOverrides): Promise setLiquidationBufferRatio( - _marketKey: PromiseOrValue, - _ratio: PromiseOrValue, + _marketKey: BytesLike, + _ratio: BigNumberish, overrides?: CallOverrides ): Promise - setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationFeeRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise setLiquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - _liquidationPremiumMultiplier: PromiseOrValue, + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, overrides?: CallOverrides ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, + _marketKey: BytesLike, + _makerFee: BigNumberish, overrides?: CallOverrides ): Promise setMakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeDelayedOrder: PromiseOrValue, + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, overrides?: CallOverrides ): Promise setMakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeOffchainDelayedOrder: PromiseOrValue, + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, overrides?: CallOverrides ): Promise setMaxDelayTimeDelta( - _marketKey: PromiseOrValue, - _maxDelayTimeDelta: PromiseOrValue, + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, overrides?: CallOverrides ): Promise setMaxFundingVelocity( - _marketKey: PromiseOrValue, - _maxFundingVelocity: PromiseOrValue, + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, overrides?: CallOverrides ): Promise - setMaxKeeperFee(_sUSD: PromiseOrValue, overrides?: CallOverrides): Promise + setMaxKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, + _marketKey: BytesLike, + _maxLeverage: BigNumberish, overrides?: CallOverrides ): Promise setMaxLiquidationDelta( - _marketKey: PromiseOrValue, - _maxLiquidationDelta: PromiseOrValue, + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, overrides?: CallOverrides ): Promise setMaxMarketValue( - _marketKey: PromiseOrValue, - _maxMarketValue: PromiseOrValue, + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, overrides?: CallOverrides ): Promise - setMaxPD( - _marketKey: PromiseOrValue, - _maxPD: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMaxPD(_marketKey: BytesLike, _maxPD: BigNumberish, overrides?: CallOverrides): Promise setMinDelayTimeDelta( - _marketKey: PromiseOrValue, - _minDelayTimeDelta: PromiseOrValue, + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, overrides?: CallOverrides ): Promise - setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMinInitialMargin(_minMargin: BigNumberish, overrides?: CallOverrides): Promise - setMinKeeperFee(_sUSD: PromiseOrValue, overrides?: CallOverrides): Promise + setMinKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, overrides?: CallOverrides ): Promise setOffchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMaxAge: PromiseOrValue, + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, overrides?: CallOverrides ): Promise setOffchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMinAge: PromiseOrValue, + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, overrides?: CallOverrides ): Promise setOffchainMarketKey( - _marketKey: PromiseOrValue, - _offchainMarketKey: PromiseOrValue, + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, overrides?: CallOverrides ): Promise setOffchainPriceDivergence( - _marketKey: PromiseOrValue, - _offchainPriceDivergence: PromiseOrValue, + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, overrides?: CallOverrides ): Promise setParameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, _parameters: IPerpsV2MarketSettings.ParametersStruct, overrides?: CallOverrides ): Promise setSkewScale( - _marketKey: PromiseOrValue, - _skewScale: PromiseOrValue, + _marketKey: BytesLike, + _skewScale: BigNumberish, overrides?: CallOverrides ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, + _marketKey: BytesLike, + _takerFee: BigNumberish, overrides?: CallOverrides ): Promise setTakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeDelayedOrder: PromiseOrValue, + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, overrides?: CallOverrides ): Promise setTakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeOffchainDelayedOrder: PromiseOrValue, + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, overrides?: CallOverrides ): Promise - skewScale(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise takerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise } @@ -1577,24 +1343,24 @@ export interface PerpsV2MarketSettings extends BaseContract { OwnerNominated(newOwner?: null): OwnerNominatedEventFilter 'ParameterUpdated(bytes32,bytes32,uint256)'( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedEventFilter ParameterUpdated( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedEventFilter 'ParameterUpdatedBytes32(bytes32,bytes32,bytes32)'( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedBytes32EventFilter ParameterUpdatedBytes32( - marketKey?: PromiseOrValue | null, - parameter?: PromiseOrValue | null, + marketKey?: BytesLike | null, + parameter?: BytesLike | null, value?: null ): ParameterUpdatedBytes32EventFilter } @@ -1602,295 +1368,247 @@ export interface PerpsV2MarketSettings extends BaseContract { estimateGas: { CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - delayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise keeperLiquidationFee(overrides?: CallOverrides): Promise - liquidationBufferRatio( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise liquidationFeeRatio(overrides?: CallOverrides): Promise liquidationPremiumMultiplier( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - makerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - makerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise makerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - maxDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxFundingVelocity( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise maxKeeperFee(overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxLiquidationDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxMarketValue( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxPD(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - minDelayTimeDelta( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise minInitialMargin(overrides?: CallOverrides): Promise minKeeperFee(overrides?: CallOverrides): Promise - nextPriceConfirmWindow( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise nominatedOwner(overrides?: CallOverrides): Promise - offchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainMarketKey( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - offchainPriceDivergence( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise - parameters(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setDelayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - _delayedOrderConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setKeeperLiquidationFee( - _keeperFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationBufferRatio( - _marketKey: PromiseOrValue, - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - _liquidationPremiumMultiplier: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxDelayTimeDelta( - _marketKey: PromiseOrValue, - _maxDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingVelocity( - _marketKey: PromiseOrValue, - _maxFundingVelocity: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLiquidationDelta( - _marketKey: PromiseOrValue, - _maxLiquidationDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValue( - _marketKey: PromiseOrValue, - _maxMarketValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxPD( - _marketKey: PromiseOrValue, - _maxPD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinDelayTimeDelta( - _marketKey: PromiseOrValue, - _minDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMaxAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMinAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainMarketKey( - _marketKey: PromiseOrValue, - _offchainMarketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } ): Promise setOffchainPriceDivergence( - _marketKey: PromiseOrValue, - _offchainPriceDivergence: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: PromiseOrValue } + overrides?: Overrides & { from?: string } ): Promise setSkewScale( - _marketKey: PromiseOrValue, - _skewScale: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScale(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee(_marketKey: PromiseOrValue, overrides?: CallOverrides): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFeeDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise takerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise } @@ -1898,12 +1616,10 @@ export interface PerpsV2MarketSettings extends BaseContract { populateTransaction: { CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise delayedOrderConfirmWindow( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise @@ -1912,66 +1628,54 @@ export interface PerpsV2MarketSettings extends BaseContract { keeperLiquidationFee(overrides?: CallOverrides): Promise liquidationBufferRatio( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise liquidationFeeRatio(overrides?: CallOverrides): Promise liquidationPremiumMultiplier( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - makerFee( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise makerFeeDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise makerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise maxDelayTimeDelta( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise maxFundingVelocity( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise maxKeeperFee(overrides?: CallOverrides): Promise - maxLeverage( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise maxLiquidationDelta( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise - maxMarketValue( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - maxPD( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise minDelayTimeDelta( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise @@ -1980,232 +1684,221 @@ export interface PerpsV2MarketSettings extends BaseContract { minKeeperFee(overrides?: CallOverrides): Promise nextPriceConfirmWindow( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise offchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise offchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise offchainMarketKey( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise offchainPriceDivergence( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise owner(overrides?: CallOverrides): Promise - parameters( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise resolverAddressesRequired(overrides?: CallOverrides): Promise setDelayedOrderConfirmWindow( - _marketKey: PromiseOrValue, - _delayedOrderConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setKeeperLiquidationFee( - _keeperFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationBufferRatio( - _marketKey: PromiseOrValue, - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationFeeRatio( - _ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPremiumMultiplier( - _marketKey: PromiseOrValue, - _liquidationPremiumMultiplier: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFee( - _marketKey: PromiseOrValue, - _makerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _makerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxDelayTimeDelta( - _marketKey: PromiseOrValue, - _maxDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxFundingVelocity( - _marketKey: PromiseOrValue, - _maxFundingVelocity: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLeverage( - _marketKey: PromiseOrValue, - _maxLeverage: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxLiquidationDelta( - _marketKey: PromiseOrValue, - _maxLiquidationDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxMarketValue( - _marketKey: PromiseOrValue, - _maxMarketValue: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMaxPD( - _marketKey: PromiseOrValue, - _maxPD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinDelayTimeDelta( - _marketKey: PromiseOrValue, - _minDelayTimeDelta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinInitialMargin( - _minMargin: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinKeeperFee( - _sUSD: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setNextPriceConfirmWindow( - _marketKey: PromiseOrValue, - _nextPriceConfirmWindow: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMaxAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMaxAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainDelayedOrderMinAge( - _marketKey: PromiseOrValue, - _offchainDelayedOrderMinAge: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setOffchainMarketKey( - _marketKey: PromiseOrValue, - _offchainMarketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } ): Promise setOffchainPriceDivergence( - _marketKey: PromiseOrValue, - _offchainPriceDivergence: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setParameters( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: PromiseOrValue } + overrides?: Overrides & { from?: string } ): Promise setSkewScale( - _marketKey: PromiseOrValue, - _skewScale: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFee( - _marketKey: PromiseOrValue, - _takerFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTakerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, - _takerFeeOffchainDelayedOrder: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise - skewScale( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - takerFee( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise takerFeeDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise takerFeeOffchainDelayedOrder( - _marketKey: PromiseOrValue, + _marketKey: BytesLike, overrides?: CallOverrides ): Promise } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts index bd7c3e14ca..0d7af7c19b 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts @@ -2,860 +2,1085 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: PromiseOrValue - lastFundingIndex: PromiseOrValue - margin: PromiseOrValue - lastPrice: PromiseOrValue - size: PromiseOrValue - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketViewsInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'currentFundingVelocity()': FunctionFragment - 'fillPrice(int256)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'marketState()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256,uint8)': FunctionFragment - 'owner()': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'unrecordedFunding()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'currentFundingRate' - | 'currentFundingVelocity' - | 'fillPrice' - | 'fundingLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isResolverCached' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'marketState' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'notionalValue' - | 'orderFee' - | 'owner' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'rebuildCache' - | 'remainingMargin' - | 'resolver' - | 'resolverAddressesRequired' - | 'unrecordedFunding' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'accessibleMargin', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string - encodeFunctionData(functionFragment: 'fillPrice', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData( - functionFragment: 'fundingSequence', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData(functionFragment: 'marketState', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'notionalValue', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'orderFee', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'positions', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'postTradeDetails', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData(functionFragment: 'profitLoss', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "currentFundingVelocity()": FunctionFragment; + "fillPrice(int256)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "marketState()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256,uint8)": FunctionFragment; + "owner()": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "currentFundingRate" + | "currentFundingVelocity" + | "fillPrice" + | "fundingLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isResolverCached" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "marketState" + | "nominateNewOwner" + | "nominatedOwner" + | "notionalValue" + | "orderFee" + | "owner" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "rebuildCache" + | "remainingMargin" + | "resolver" + | "resolverAddressesRequired" + | "unrecordedFunding" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketState", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PerpsV2MarketViews extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketViewsInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]> - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> - - currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]> - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> - - marketState(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - owner(overrides?: CallOverrides): Promise<[string]> - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]> - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - } - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise - - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - marketState(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - owner(overrides?: CallOverrides): Promise - - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + interface: PerpsV2MarketViewsInterface; - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - resolver(overrides?: CallOverrides): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; + + currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]>; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketState(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]>; - resolverAddressesRequired(overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + resolver(overrides?: CallOverrides): Promise<[string]>; - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; - baseAsset(overrides?: CallOverrides): Promise + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + }; - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + nominatedOwner(overrides?: CallOverrides): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - fundingSequenceLength(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - marketKey(overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - marketSize(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + resolverAddressesRequired(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - marketState(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - nominatedOwner(overrides?: CallOverrides): Promise + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + marketState(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - rebuildCache(overrides?: CallOverrides): Promise + rebuildCache(overrides?: CallOverrides): Promise; - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - } + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + }; - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - accruedFunding(account: PromiseOrValue, overrides?: CallOverrides): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - assetPrice(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - baseAsset(overrides?: CallOverrides): Promise + baseAsset(overrides?: CallOverrides): Promise; - canLiquidate(account: PromiseOrValue, overrides?: CallOverrides): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + currentFundingRate(overrides?: CallOverrides): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + currentFundingVelocity(overrides?: CallOverrides): Promise; - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + fundingLastRecomputed(overrides?: CallOverrides): Promise; - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingSequenceLength(overrides?: CallOverrides): Promise + fundingSequenceLength(overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - liquidationFee(account: PromiseOrValue, overrides?: CallOverrides): Promise + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationPrice(account: PromiseOrValue, overrides?: CallOverrides): Promise + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + marketDebt(overrides?: CallOverrides): Promise; - marketKey(overrides?: CallOverrides): Promise + marketKey(overrides?: CallOverrides): Promise; - marketSize(overrides?: CallOverrides): Promise + marketSize(overrides?: CallOverrides): Promise; - marketSizes(overrides?: CallOverrides): Promise + marketSizes(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + marketSkew(overrides?: CallOverrides): Promise; - marketState(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue(account: PromiseOrValue, overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions(account: PromiseOrValue, overrides?: CallOverrides): Promise + positions(account: string, overrides?: CallOverrides): Promise; - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - profitLoss(account: PromiseOrValue, overrides?: CallOverrides): Promise + profitLoss(account: string, overrides?: CallOverrides): Promise; - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - remainingMargin(account: PromiseOrValue, overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise - } + unrecordedFunding(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - accruedFunding( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - assetPrice(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - baseAsset(overrides?: CallOverrides): Promise + baseAsset(overrides?: CallOverrides): Promise; - canLiquidate( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + currentFundingRate( + overrides?: CallOverrides + ): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + currentFundingVelocity( + overrides?: CallOverrides + ): Promise; - fillPrice( - sizeDelta: PromiseOrValue, - overrides?: CallOverrides - ): Promise + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; - fundingSequence( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingSequenceLength(overrides?: CallOverrides): Promise + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - liquidationFee( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationPrice( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + marketDebt(overrides?: CallOverrides): Promise; - marketKey(overrides?: CallOverrides): Promise + marketKey(overrides?: CallOverrides): Promise; - marketSize(overrides?: CallOverrides): Promise + marketSize(overrides?: CallOverrides): Promise; - marketSizes(overrides?: CallOverrides): Promise + marketSizes(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + marketSkew(overrides?: CallOverrides): Promise; - marketState(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - orderFee( - sizeDelta: PromiseOrValue, - orderType: PromiseOrValue, - overrides?: CallOverrides - ): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - postTradeDetails( - sizeDelta: PromiseOrValue, - tradePrice: PromiseOrValue, - orderType: PromiseOrValue, - sender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - profitLoss( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - remainingMargin( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise - } + unrecordedFunding(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts new file mode 100644 index 0000000000..90eb398cb4 --- /dev/null +++ b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts @@ -0,0 +1,4203 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +import type { + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; + +export declare namespace IAccountModule { + export type AccountPermissionsStruct = { + user: string; + permissions: BytesLike[]; + }; + + export type AccountPermissionsStructOutput = [string, string[]] & { + user: string; + permissions: string[]; + }; +} + +export declare namespace AsyncOrder { + export type DataStruct = { + accountId: BigNumberish; + marketId: BigNumberish; + sizeDelta: BigNumberish; + settlementStrategyId: BigNumberish; + settlementTime: BigNumberish; + acceptablePrice: BigNumberish; + trackingCode: BytesLike; + }; + + export type DataStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + accountId: BigNumber; + marketId: BigNumber; + sizeDelta: BigNumber; + settlementStrategyId: BigNumber; + settlementTime: BigNumber; + acceptablePrice: BigNumber; + trackingCode: string; + }; + + export type OrderCommitmentRequestStruct = { + marketId: BigNumberish; + accountId: BigNumberish; + sizeDelta: BigNumberish; + settlementStrategyId: BigNumberish; + acceptablePrice: BigNumberish; + trackingCode: BytesLike; + }; + + export type OrderCommitmentRequestStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + marketId: BigNumber; + accountId: BigNumber; + sizeDelta: BigNumber; + settlementStrategyId: BigNumber; + acceptablePrice: BigNumber; + trackingCode: string; + }; +} + +export declare namespace IPerpsMarketModule { + export type MarketSummaryStruct = { + skew: BigNumberish; + size: BigNumberish; + maxOpenInterest: BigNumberish; + currentFundingRate: BigNumberish; + currentFundingVelocity: BigNumberish; + indexPrice: BigNumberish; + }; + + export type MarketSummaryStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + skew: BigNumber; + size: BigNumber; + maxOpenInterest: BigNumber; + currentFundingRate: BigNumber; + currentFundingVelocity: BigNumber; + indexPrice: BigNumber; + }; +} + +export declare namespace SettlementStrategy { + export type DataStruct = { + strategyType: BigNumberish; + settlementDelay: BigNumberish; + settlementWindowDuration: BigNumberish; + priceWindowDuration: BigNumberish; + priceVerificationContract: string; + feedId: BytesLike; + url: string; + settlementReward: BigNumberish; + priceDeviationTolerance: BigNumberish; + disabled: boolean; + }; + + export type DataStructOutput = [ + number, + BigNumber, + BigNumber, + BigNumber, + string, + string, + string, + BigNumber, + BigNumber, + boolean + ] & { + strategyType: number; + settlementDelay: BigNumber; + settlementWindowDuration: BigNumber; + priceWindowDuration: BigNumber; + priceVerificationContract: string; + feedId: string; + url: string; + settlementReward: BigNumber; + priceDeviationTolerance: BigNumber; + disabled: boolean; + }; +} + +export interface PerpsV3MarketProxyInterface extends utils.Interface { + functions: { + "createAccount()": FunctionFragment; + "createAccount(uint128)": FunctionFragment; + "getAccountLastInteraction(uint128)": FunctionFragment; + "getAccountOwner(uint128)": FunctionFragment; + "getAccountPermissions(uint128)": FunctionFragment; + "getAccountTokenAddress()": FunctionFragment; + "grantPermission(uint128,bytes32,address)": FunctionFragment; + "hasPermission(uint128,bytes32,address)": FunctionFragment; + "isAuthorized(uint128,bytes32,address)": FunctionFragment; + "notifyAccountTransfer(address,uint128)": FunctionFragment; + "renouncePermission(uint128,bytes32)": FunctionFragment; + "revokePermission(uint128,bytes32,address)": FunctionFragment; + "getAssociatedSystem(bytes32)": FunctionFragment; + "initOrUpgradeNft(bytes32,string,string,string,address)": FunctionFragment; + "initOrUpgradeToken(bytes32,string,string,uint8,address)": FunctionFragment; + "registerUnmanagedSystem(bytes32,address)": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "getImplementation()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "renounceNomination()": FunctionFragment; + "simulateUpgradeTo(address)": FunctionFragment; + "upgradeTo(address)": FunctionFragment; + "acceptMarketOwnership(uint128)": FunctionFragment; + "createMarket(string,string,address)": FunctionFragment; + "getMarketOwner(uint128)": FunctionFragment; + "minimumCredit(uint128)": FunctionFragment; + "name(uint128)": FunctionFragment; + "nominateMarketOwner(uint128,address)": FunctionFragment; + "reportedDebt(uint128)": FunctionFragment; + "setSpotMarket(address)": FunctionFragment; + "setSynthetix(address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "symbol(uint128)": FunctionFragment; + "updatePriceData(uint128,bytes32)": FunctionFragment; + "getAsyncOrderClaim(uint128,uint128)": FunctionFragment; + "getAvailableMargin(uint128)": FunctionFragment; + "getOpenPosition(uint128,uint128)": FunctionFragment; + "modifyCollateral(uint128,uint128,int256)": FunctionFragment; + "totalAccountOpenInterest(uint128)": FunctionFragment; + "totalCollateralValue(uint128)": FunctionFragment; + "currentFundingRate(uint128)": FunctionFragment; + "currentFundingVelocity(uint128)": FunctionFragment; + "fillPrice(uint128,int256,uint256)": FunctionFragment; + "getMarketSummary(uint128)": FunctionFragment; + "indexPrice(uint128)": FunctionFragment; + "maxOpenInterest(uint128)": FunctionFragment; + "size(uint128)": FunctionFragment; + "skew(uint128)": FunctionFragment; + "PRECISION()": FunctionFragment; + "cancelOrder(uint128,uint128)": FunctionFragment; + "commitOrder((uint128,uint128,int128,uint128,uint256,bytes32))": FunctionFragment; + "getOrder(uint128,uint128)": FunctionFragment; + "settle(uint128,uint128)": FunctionFragment; + "settlePythOrder(bytes,bytes)": FunctionFragment; + "addToFeatureFlagAllowlist(bytes32,address)": FunctionFragment; + "getDeniers(bytes32)": FunctionFragment; + "getFeatureFlagAllowAll(bytes32)": FunctionFragment; + "getFeatureFlagAllowlist(bytes32)": FunctionFragment; + "getFeatureFlagDenyAll(bytes32)": FunctionFragment; + "isFeatureAllowed(bytes32,address)": FunctionFragment; + "removeFromFeatureFlagAllowlist(bytes32,address)": FunctionFragment; + "setDeniers(bytes32,address[])": FunctionFragment; + "setFeatureFlagAllowAll(bytes32,bool)": FunctionFragment; + "setFeatureFlagDenyAll(bytes32,bool)": FunctionFragment; + "liquidate(uint128)": FunctionFragment; + "liquidateFlagged()": FunctionFragment; + "addSettlementStrategy(uint128,(uint8,uint256,uint256,uint256,address,bytes32,string,uint256,uint256,bool))": FunctionFragment; + "getFundingParameters(uint128)": FunctionFragment; + "getLiquidationParameters(uint128)": FunctionFragment; + "getLockedOiPercent(uint128)": FunctionFragment; + "getMaxMarketValue(uint128)": FunctionFragment; + "getOrderFees(uint128)": FunctionFragment; + "getSettlementStrategy(uint128,uint256)": FunctionFragment; + "setFundingParameters(uint128,uint256,uint256)": FunctionFragment; + "setLiquidationParameters(uint128,uint256,uint256,uint256,uint256,uint256)": FunctionFragment; + "setLockedOiPercent(uint128,uint256)": FunctionFragment; + "setMaxMarketValue(uint128,uint256)": FunctionFragment; + "setOrderFees(uint128,uint256,uint256)": FunctionFragment; + "setSettlementStrategyEnabled(uint128,uint256,bool)": FunctionFragment; + "getLiquidationRewardGuards()": FunctionFragment; + "getMaxCollateralAmount(uint128)": FunctionFragment; + "getSynthDeductionPriority()": FunctionFragment; + "setLiquidationRewardGuards(uint256,uint256)": FunctionFragment; + "setMaxCollateralAmount(uint128,uint256)": FunctionFragment; + "setSynthDeductionPriority(uint128[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "createAccount()" + | "createAccount(uint128)" + | "getAccountLastInteraction" + | "getAccountOwner" + | "getAccountPermissions" + | "getAccountTokenAddress" + | "grantPermission" + | "hasPermission" + | "isAuthorized" + | "notifyAccountTransfer" + | "renouncePermission" + | "revokePermission" + | "getAssociatedSystem" + | "initOrUpgradeNft" + | "initOrUpgradeToken" + | "registerUnmanagedSystem" + | "acceptOwnership" + | "getImplementation" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "renounceNomination" + | "simulateUpgradeTo" + | "upgradeTo" + | "acceptMarketOwnership" + | "createMarket" + | "getMarketOwner" + | "minimumCredit" + | "name" + | "nominateMarketOwner" + | "reportedDebt" + | "setSpotMarket" + | "setSynthetix" + | "supportsInterface" + | "symbol" + | "updatePriceData" + | "getAsyncOrderClaim" + | "getAvailableMargin" + | "getOpenPosition" + | "modifyCollateral" + | "totalAccountOpenInterest" + | "totalCollateralValue" + | "currentFundingRate" + | "currentFundingVelocity" + | "fillPrice" + | "getMarketSummary" + | "indexPrice" + | "maxOpenInterest" + | "size" + | "skew" + | "PRECISION" + | "cancelOrder" + | "commitOrder" + | "getOrder" + | "settle" + | "settlePythOrder" + | "addToFeatureFlagAllowlist" + | "getDeniers" + | "getFeatureFlagAllowAll" + | "getFeatureFlagAllowlist" + | "getFeatureFlagDenyAll" + | "isFeatureAllowed" + | "removeFromFeatureFlagAllowlist" + | "setDeniers" + | "setFeatureFlagAllowAll" + | "setFeatureFlagDenyAll" + | "liquidate" + | "liquidateFlagged" + | "addSettlementStrategy" + | "getFundingParameters" + | "getLiquidationParameters" + | "getLockedOiPercent" + | "getMaxMarketValue" + | "getOrderFees" + | "getSettlementStrategy" + | "setFundingParameters" + | "setLiquidationParameters" + | "setLockedOiPercent" + | "setMaxMarketValue" + | "setOrderFees" + | "setSettlementStrategyEnabled" + | "getLiquidationRewardGuards" + | "getMaxCollateralAmount" + | "getSynthDeductionPriority" + | "setLiquidationRewardGuards" + | "setMaxCollateralAmount" + | "setSynthDeductionPriority" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "createAccount()", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "createAccount(uint128)", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountLastInteraction", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountOwner", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountPermissions", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountTokenAddress", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "grantPermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "hasPermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "isAuthorized", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "notifyAccountTransfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "renouncePermission", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "revokePermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "getAssociatedSystem", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "initOrUpgradeNft", + values: [BytesLike, string, string, string, string] + ): string; + encodeFunctionData( + functionFragment: "initOrUpgradeToken", + values: [BytesLike, string, string, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "registerUnmanagedSystem", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getImplementation", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "renounceNomination", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "simulateUpgradeTo", + values: [string] + ): string; + encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; + encodeFunctionData( + functionFragment: "acceptMarketOwnership", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "createMarket", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "getMarketOwner", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "minimumCredit", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "name", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "nominateMarketOwner", + values: [BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "reportedDebt", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSpotMarket", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setSynthetix", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "symbol", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "updatePriceData", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getAsyncOrderClaim", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAvailableMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getOpenPosition", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyCollateral", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "totalAccountOpenInterest", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "totalCollateralValue", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getMarketSummary", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "indexPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "maxOpenInterest", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "size", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "skew", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "PRECISION", values?: undefined): string; + encodeFunctionData( + functionFragment: "cancelOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "commitOrder", + values: [AsyncOrder.OrderCommitmentRequestStruct] + ): string; + encodeFunctionData( + functionFragment: "getOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "settle", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "settlePythOrder", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "addToFeatureFlagAllowlist", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "getDeniers", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagAllowAll", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagAllowlist", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagDenyAll", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "isFeatureAllowed", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "removeFromFeatureFlagAllowlist", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "setDeniers", + values: [BytesLike, string[]] + ): string; + encodeFunctionData( + functionFragment: "setFeatureFlagAllowAll", + values: [BytesLike, boolean] + ): string; + encodeFunctionData( + functionFragment: "setFeatureFlagDenyAll", + values: [BytesLike, boolean] + ): string; + encodeFunctionData( + functionFragment: "liquidate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateFlagged", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "addSettlementStrategy", + values: [BigNumberish, SettlementStrategy.DataStruct] + ): string; + encodeFunctionData( + functionFragment: "getFundingParameters", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getLiquidationParameters", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getLockedOiPercent", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getMaxMarketValue", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getOrderFees", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getSettlementStrategy", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setFundingParameters", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationParameters", + values: [ + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish + ] + ): string; + encodeFunctionData( + functionFragment: "setLockedOiPercent", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxMarketValue", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setOrderFees", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSettlementStrategyEnabled", + values: [BigNumberish, BigNumberish, boolean] + ): string; + encodeFunctionData( + functionFragment: "getLiquidationRewardGuards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getMaxCollateralAmount", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getSynthDeductionPriority", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setLiquidationRewardGuards", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxCollateralAmount", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSynthDeductionPriority", + values: [BigNumberish[]] + ): string; + + decodeFunctionResult( + functionFragment: "createAccount()", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "createAccount(uint128)", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountLastInteraction", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountPermissions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountTokenAddress", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "grantPermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "hasPermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isAuthorized", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyAccountTransfer", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "renouncePermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "revokePermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAssociatedSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "initOrUpgradeNft", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "initOrUpgradeToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "registerUnmanagedSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getImplementation", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "renounceNomination", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "simulateUpgradeTo", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "acceptMarketOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "createMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMarketOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minimumCredit", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateMarketOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "reportedDebt", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSpotMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSynthetix", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "updatePriceData", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAsyncOrderClaim", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAvailableMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getOpenPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyCollateral", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalAccountOpenInterest", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalCollateralValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getMarketSummary", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "indexPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "maxOpenInterest", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "size", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "skew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "PRECISION", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "cancelOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "commitOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "settlePythOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addToFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getDeniers", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagAllowAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagDenyAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isFeatureAllowed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "removeFromFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setDeniers", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setFeatureFlagAllowAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFeatureFlagDenyAll", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "liquidate", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "liquidateFlagged", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addSettlementStrategy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFundingParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLiquidationParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLockedOiPercent", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMaxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getOrderFees", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSettlementStrategy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFundingParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLockedOiPercent", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOrderFees", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSettlementStrategyEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLiquidationRewardGuards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMaxCollateralAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthDeductionPriority", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationRewardGuards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxCollateralAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSynthDeductionPriority", + data: BytesLike + ): Result; + + events: { + "AccountCreated(uint128,address)": EventFragment; + "PermissionGranted(uint128,bytes32,address,address)": EventFragment; + "PermissionRevoked(uint128,bytes32,address,address)": EventFragment; + "AssociatedSystemSet(bytes32,bytes32,address,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Upgraded(address,address)": EventFragment; + "MarketOwnerChanged(uint128,address,address)": EventFragment; + "MarketOwnerNominated(uint128,address)": EventFragment; + "MarketPriceDataUpdated(uint128,bytes32)": EventFragment; + "MarketRegistered(uint128,address,string,string)": EventFragment; + "CollateralModified(uint128,uint128,int256,address)": EventFragment; + "OrderCanceled(uint128,uint128,uint256,uint256)": EventFragment; + "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)": EventFragment; + "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)": EventFragment; + "FeatureFlagAllowAllSet(bytes32,bool)": EventFragment; + "FeatureFlagAllowlistAdded(bytes32,address)": EventFragment; + "FeatureFlagAllowlistRemoved(bytes32,address)": EventFragment; + "FeatureFlagDeniersReset(bytes32,address[])": EventFragment; + "FeatureFlagDenyAllSet(bytes32,bool)": EventFragment; + "FundingParametersSet(uint128,uint256,uint256)": EventFragment; + "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)": EventFragment; + "LockedOiPercentSet(uint128,uint256)": EventFragment; + "MaxMarketValueSet(uint128,uint256)": EventFragment; + "OrderFeesSet(uint128,uint256,uint256)": EventFragment; + "SettlementStrategyAdded(uint128,tuple,uint256)": EventFragment; + "SettlementStrategyEnabled(uint128,uint256,bool)": EventFragment; + "LiquidationRewardGuardsSet(uint256,uint256)": EventFragment; + "MaxCollateralAmountSet(uint128,uint256)": EventFragment; + "SynthDeductionPrioritySet(uint128[])": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccountCreated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PermissionGranted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PermissionRevoked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AssociatedSystemSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketOwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketOwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketPriceDataUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketRegistered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CollateralModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderCanceled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderCommitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderSettled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowAllSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowlistAdded"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "FeatureFlagAllowlistRemoved" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagDeniersReset"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagDenyAllSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingParametersSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationParametersSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LockedOiPercentSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MaxMarketValueSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderFeesSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SettlementStrategyAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SettlementStrategyEnabled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationRewardGuardsSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MaxCollateralAmountSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthDeductionPrioritySet"): EventFragment; +} + +export interface AccountCreatedEventObject { + accountId: BigNumber; + owner: string; +} +export type AccountCreatedEvent = TypedEvent< + [BigNumber, string], + AccountCreatedEventObject +>; + +export type AccountCreatedEventFilter = TypedEventFilter; + +export interface PermissionGrantedEventObject { + accountId: BigNumber; + permission: string; + user: string; + sender: string; +} +export type PermissionGrantedEvent = TypedEvent< + [BigNumber, string, string, string], + PermissionGrantedEventObject +>; + +export type PermissionGrantedEventFilter = + TypedEventFilter; + +export interface PermissionRevokedEventObject { + accountId: BigNumber; + permission: string; + user: string; + sender: string; +} +export type PermissionRevokedEvent = TypedEvent< + [BigNumber, string, string, string], + PermissionRevokedEventObject +>; + +export type PermissionRevokedEventFilter = + TypedEventFilter; + +export interface AssociatedSystemSetEventObject { + kind: string; + id: string; + proxy: string; + impl: string; +} +export type AssociatedSystemSetEvent = TypedEvent< + [string, string, string, string], + AssociatedSystemSetEventObject +>; + +export type AssociatedSystemSetEventFilter = + TypedEventFilter; + +export interface OwnerChangedEventObject { + oldOwner: string; + newOwner: string; +} +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; + +export type OwnerChangedEventFilter = TypedEventFilter; + +export interface OwnerNominatedEventObject { + newOwner: string; +} +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; + +export type OwnerNominatedEventFilter = TypedEventFilter; + +export interface UpgradedEventObject { + self: string; + implementation: string; +} +export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject>; + +export type UpgradedEventFilter = TypedEventFilter; + +export interface MarketOwnerChangedEventObject { + perpsMarketId: BigNumber; + oldOwner: string; + newOwner: string; +} +export type MarketOwnerChangedEvent = TypedEvent< + [BigNumber, string, string], + MarketOwnerChangedEventObject +>; + +export type MarketOwnerChangedEventFilter = + TypedEventFilter; + +export interface MarketOwnerNominatedEventObject { + perpsMarketId: BigNumber; + newNominatedOwner: string; +} +export type MarketOwnerNominatedEvent = TypedEvent< + [BigNumber, string], + MarketOwnerNominatedEventObject +>; + +export type MarketOwnerNominatedEventFilter = + TypedEventFilter; + +export interface MarketPriceDataUpdatedEventObject { + perpsMarketId: BigNumber; + feedId: string; +} +export type MarketPriceDataUpdatedEvent = TypedEvent< + [BigNumber, string], + MarketPriceDataUpdatedEventObject +>; + +export type MarketPriceDataUpdatedEventFilter = + TypedEventFilter; + +export interface MarketRegisteredEventObject { + perpsMarketId: BigNumber; + marketOwner: string; + marketName: string; + marketSymbol: string; +} +export type MarketRegisteredEvent = TypedEvent< + [BigNumber, string, string, string], + MarketRegisteredEventObject +>; + +export type MarketRegisteredEventFilter = + TypedEventFilter; + +export interface CollateralModifiedEventObject { + accountId: BigNumber; + synthMarketId: BigNumber; + amountDelta: BigNumber; + sender: string; +} +export type CollateralModifiedEvent = TypedEvent< + [BigNumber, BigNumber, BigNumber, string], + CollateralModifiedEventObject +>; + +export type CollateralModifiedEventFilter = + TypedEventFilter; + +export interface OrderCanceledEventObject { + marketId: BigNumber; + accountId: BigNumber; + settlementTime: BigNumber; + acceptablePrice: BigNumber; +} +export type OrderCanceledEvent = TypedEvent< + [BigNumber, BigNumber, BigNumber, BigNumber], + OrderCanceledEventObject +>; + +export type OrderCanceledEventFilter = TypedEventFilter; + +export interface OrderCommittedEventObject { + marketId: BigNumber; + accountId: BigNumber; + orderType: number; + sizeDelta: BigNumber; + acceptablePrice: BigNumber; + settlementTime: BigNumber; + expirationTime: BigNumber; + trackingCode: string; + sender: string; +} +export type OrderCommittedEvent = TypedEvent< + [ + BigNumber, + BigNumber, + number, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + string + ], + OrderCommittedEventObject +>; + +export type OrderCommittedEventFilter = TypedEventFilter; + +export interface OrderSettledEventObject { + marketId: BigNumber; + accountId: BigNumber; + fillPrice: BigNumber; + accountPnlRealized: BigNumber; + newSize: BigNumber; + collectedFees: BigNumber; + settelementReward: BigNumber; + trackingCode: string; + settler: string; +} +export type OrderSettledEvent = TypedEvent< + [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + string + ], + OrderSettledEventObject +>; + +export type OrderSettledEventFilter = TypedEventFilter; + +export interface FeatureFlagAllowAllSetEventObject { + feature: string; + allowAll: boolean; +} +export type FeatureFlagAllowAllSetEvent = TypedEvent< + [string, boolean], + FeatureFlagAllowAllSetEventObject +>; + +export type FeatureFlagAllowAllSetEventFilter = + TypedEventFilter; + +export interface FeatureFlagAllowlistAddedEventObject { + feature: string; + account: string; +} +export type FeatureFlagAllowlistAddedEvent = TypedEvent< + [string, string], + FeatureFlagAllowlistAddedEventObject +>; + +export type FeatureFlagAllowlistAddedEventFilter = + TypedEventFilter; + +export interface FeatureFlagAllowlistRemovedEventObject { + feature: string; + account: string; +} +export type FeatureFlagAllowlistRemovedEvent = TypedEvent< + [string, string], + FeatureFlagAllowlistRemovedEventObject +>; + +export type FeatureFlagAllowlistRemovedEventFilter = + TypedEventFilter; + +export interface FeatureFlagDeniersResetEventObject { + feature: string; + deniers: string[]; +} +export type FeatureFlagDeniersResetEvent = TypedEvent< + [string, string[]], + FeatureFlagDeniersResetEventObject +>; + +export type FeatureFlagDeniersResetEventFilter = + TypedEventFilter; + +export interface FeatureFlagDenyAllSetEventObject { + feature: string; + denyAll: boolean; +} +export type FeatureFlagDenyAllSetEvent = TypedEvent< + [string, boolean], + FeatureFlagDenyAllSetEventObject +>; + +export type FeatureFlagDenyAllSetEventFilter = + TypedEventFilter; + +export interface FundingParametersSetEventObject { + marketId: BigNumber; + skewScale: BigNumber; + maxFundingVelocity: BigNumber; +} +export type FundingParametersSetEvent = TypedEvent< + [BigNumber, BigNumber, BigNumber], + FundingParametersSetEventObject +>; + +export type FundingParametersSetEventFilter = + TypedEventFilter; + +export interface LiquidationParametersSetEventObject { + marketId: BigNumber; + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; +} +export type LiquidationParametersSetEvent = TypedEvent< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + LiquidationParametersSetEventObject +>; + +export type LiquidationParametersSetEventFilter = + TypedEventFilter; + +export interface LockedOiPercentSetEventObject { + marketId: BigNumber; + lockedOiPercent: BigNumber; +} +export type LockedOiPercentSetEvent = TypedEvent< + [BigNumber, BigNumber], + LockedOiPercentSetEventObject +>; + +export type LockedOiPercentSetEventFilter = + TypedEventFilter; + +export interface MaxMarketValueSetEventObject { + marketId: BigNumber; + maxMarketValue: BigNumber; +} +export type MaxMarketValueSetEvent = TypedEvent< + [BigNumber, BigNumber], + MaxMarketValueSetEventObject +>; + +export type MaxMarketValueSetEventFilter = + TypedEventFilter; + +export interface OrderFeesSetEventObject { + marketId: BigNumber; + makerFeeRatio: BigNumber; + takerFeeRatio: BigNumber; +} +export type OrderFeesSetEvent = TypedEvent< + [BigNumber, BigNumber, BigNumber], + OrderFeesSetEventObject +>; + +export type OrderFeesSetEventFilter = TypedEventFilter; + +export interface SettlementStrategyAddedEventObject { + marketId: BigNumber; + strategy: SettlementStrategy.DataStructOutput; + strategyId: BigNumber; +} +export type SettlementStrategyAddedEvent = TypedEvent< + [BigNumber, SettlementStrategy.DataStructOutput, BigNumber], + SettlementStrategyAddedEventObject +>; + +export type SettlementStrategyAddedEventFilter = + TypedEventFilter; + +export interface SettlementStrategyEnabledEventObject { + marketId: BigNumber; + strategyId: BigNumber; + enabled: boolean; +} +export type SettlementStrategyEnabledEvent = TypedEvent< + [BigNumber, BigNumber, boolean], + SettlementStrategyEnabledEventObject +>; + +export type SettlementStrategyEnabledEventFilter = + TypedEventFilter; + +export interface LiquidationRewardGuardsSetEventObject { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; +} +export type LiquidationRewardGuardsSetEvent = TypedEvent< + [BigNumber, BigNumber], + LiquidationRewardGuardsSetEventObject +>; + +export type LiquidationRewardGuardsSetEventFilter = + TypedEventFilter; + +export interface MaxCollateralAmountSetEventObject { + synthMarketId: BigNumber; + collateralAmount: BigNumber; +} +export type MaxCollateralAmountSetEvent = TypedEvent< + [BigNumber, BigNumber], + MaxCollateralAmountSetEventObject +>; + +export type MaxCollateralAmountSetEventFilter = + TypedEventFilter; + +export interface SynthDeductionPrioritySetEventObject { + newSynthDeductionPriority: BigNumber[]; +} +export type SynthDeductionPrioritySetEvent = TypedEvent< + [BigNumber[]], + SynthDeductionPrioritySetEventObject +>; + +export type SynthDeductionPrioritySetEventFilter = + TypedEventFilter; + +export interface PerpsV3MarketProxy extends BaseContract { + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV3MarketProxyInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + "createAccount()"( + overrides?: Overrides & { from?: string } + ): Promise; + + "createAccount(uint128)"( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IAccountModule.AccountPermissionsStructOutput[]] & { + accountPerms: IAccountModule.AccountPermissionsStructOutput[]; + } + >; + + getAccountTokenAddress(overrides?: CallOverrides): Promise<[string]>; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]>; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IPerpsMarketModule.MarketSummaryStructOutput] & { + summary: IPerpsMarketModule.MarketSummaryStructOutput; + } + >; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + size( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + skew( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + PRECISION(overrides?: CallOverrides): Promise<[BigNumber]>; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]>; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[void]>; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[string[]]>; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[string[]]>; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxMarketValue: BigNumber }>; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [SettlementStrategy.DataStructOutput] & { + settlementStrategy: SettlementStrategy.DataStructOutput; + } + >; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getSynthDeductionPriority( + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + "createAccount()"( + overrides?: Overrides & { from?: string } + ): Promise; + + "createAccount(uint128)"( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + "createAccount()"(overrides?: CallOverrides): Promise; + + "createAccount(uint128)"( + requestedAccountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: CallOverrides + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: CallOverrides + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: CallOverrides + ): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination(overrides?: CallOverrides): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: CallOverrides + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket(spotMarket: string, overrides?: CallOverrides): Promise; + + setSynthetix(synthetix: string, overrides?: CallOverrides): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: CallOverrides + ): Promise< + [AsyncOrder.DataStructOutput, BigNumber] & { + retOrder: AsyncOrder.DataStructOutput; + fees: BigNumber; + } + >; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: CallOverrides + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: CallOverrides + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: CallOverrides + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: CallOverrides + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateFlagged(overrides?: CallOverrides): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: CallOverrides + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: CallOverrides + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccountCreated(uint128,address)"( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter; + AccountCreated( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter; + + "PermissionGranted(uint128,bytes32,address,address)"( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter; + PermissionGranted( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter; + + "PermissionRevoked(uint128,bytes32,address,address)"( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter; + PermissionRevoked( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter; + + "AssociatedSystemSet(bytes32,bytes32,address,address)"( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter; + AssociatedSystemSet( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "Upgraded(address,address)"( + self?: string | null, + implementation?: null + ): UpgradedEventFilter; + Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter; + + "MarketOwnerChanged(uint128,address,address)"( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter; + MarketOwnerChanged( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter; + + "MarketOwnerNominated(uint128,address)"( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter; + MarketOwnerNominated( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter; + + "MarketPriceDataUpdated(uint128,bytes32)"( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter; + MarketPriceDataUpdated( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter; + + "MarketRegistered(uint128,address,string,string)"( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter; + MarketRegistered( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter; + + "CollateralModified(uint128,uint128,int256,address)"( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter; + CollateralModified( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter; + + "OrderCanceled(uint128,uint128,uint256,uint256)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter; + OrderCanceled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter; + + "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter; + OrderCommitted( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter; + + "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter; + OrderSettled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter; + + "FeatureFlagAllowAllSet(bytes32,bool)"( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter; + FeatureFlagAllowAllSet( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter; + + "FeatureFlagAllowlistAdded(bytes32,address)"( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter; + FeatureFlagAllowlistAdded( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter; + + "FeatureFlagAllowlistRemoved(bytes32,address)"( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter; + FeatureFlagAllowlistRemoved( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter; + + "FeatureFlagDeniersReset(bytes32,address[])"( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter; + FeatureFlagDeniersReset( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter; + + "FeatureFlagDenyAllSet(bytes32,bool)"( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter; + FeatureFlagDenyAllSet( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter; + + "FundingParametersSet(uint128,uint256,uint256)"( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter; + FundingParametersSet( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter; + + "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)"( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter; + LiquidationParametersSet( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter; + + "LockedOiPercentSet(uint128,uint256)"( + marketId?: null, + lockedOiPercent?: null + ): LockedOiPercentSetEventFilter; + LockedOiPercentSet( + marketId?: null, + lockedOiPercent?: null + ): LockedOiPercentSetEventFilter; + + "MaxMarketValueSet(uint128,uint256)"( + marketId?: null, + maxMarketValue?: null + ): MaxMarketValueSetEventFilter; + MaxMarketValueSet( + marketId?: null, + maxMarketValue?: null + ): MaxMarketValueSetEventFilter; + + "OrderFeesSet(uint128,uint256,uint256)"( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter; + OrderFeesSet( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter; + + "SettlementStrategyAdded(uint128,tuple,uint256)"( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter; + SettlementStrategyAdded( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter; + + "SettlementStrategyEnabled(uint128,uint256,bool)"( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter; + SettlementStrategyEnabled( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter; + + "LiquidationRewardGuardsSet(uint256,uint256)"( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter; + LiquidationRewardGuardsSet( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter; + + "MaxCollateralAmountSet(uint128,uint256)"( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter; + MaxCollateralAmountSet( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter; + + "SynthDeductionPrioritySet(uint128[])"( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter; + SynthDeductionPrioritySet( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter; + }; + + estimateGas: { + "createAccount()"( + overrides?: Overrides & { from?: string } + ): Promise; + + "createAccount(uint128)"( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + "createAccount()"( + overrides?: Overrides & { from?: string } + ): Promise; + + "createAccount(uint128)"( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress( + overrides?: CallOverrides + ): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + skew( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority( + overrides?: CallOverrides + ): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; +} diff --git a/packages/sdk/src/contracts/types/Pyth.ts b/packages/sdk/src/contracts/types/Pyth.ts index d08e934d97..256953e7f9 100644 --- a/packages/sdk/src/contracts/types/Pyth.ts +++ b/packages/sdk/src/contracts/types/Pyth.ts @@ -2,508 +2,570 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace PythStructs { - export type PriceStruct = { - price: PromiseOrValue - conf: PromiseOrValue - expo: PromiseOrValue - publishTime: PromiseOrValue - } - - export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { - price: BigNumber - conf: BigNumber - expo: number - publishTime: BigNumber - } - - export type PriceFeedStruct = { - id: PromiseOrValue - price: PythStructs.PriceStruct - emaPrice: PythStructs.PriceStruct - } - - export type PriceFeedStructOutput = [ - string, - PythStructs.PriceStructOutput, - PythStructs.PriceStructOutput - ] & { - id: string - price: PythStructs.PriceStructOutput - emaPrice: PythStructs.PriceStructOutput - } + export type PriceStruct = { + price: BigNumberish; + conf: BigNumberish; + expo: BigNumberish; + publishTime: BigNumberish; + }; + + export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { + price: BigNumber; + conf: BigNumber; + expo: number; + publishTime: BigNumber; + }; + + export type PriceFeedStruct = { + id: BytesLike; + price: PythStructs.PriceStruct; + emaPrice: PythStructs.PriceStruct; + }; + + export type PriceFeedStructOutput = [ + string, + PythStructs.PriceStructOutput, + PythStructs.PriceStructOutput + ] & { + id: string; + price: PythStructs.PriceStructOutput; + emaPrice: PythStructs.PriceStructOutput; + }; } export interface PythInterface extends utils.Interface { - functions: { - 'getEmaPrice(bytes32)': FunctionFragment - 'getEmaPriceNoOlderThan(bytes32,uint256)': FunctionFragment - 'getEmaPriceUnsafe(bytes32)': FunctionFragment - 'getPrice(bytes32)': FunctionFragment - 'getPriceNoOlderThan(bytes32,uint256)': FunctionFragment - 'getPriceUnsafe(bytes32)': FunctionFragment - 'getUpdateFee(bytes[])': FunctionFragment - 'getValidTimePeriod()': FunctionFragment - 'parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)': FunctionFragment - 'updatePriceFeeds(bytes[])': FunctionFragment - 'updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'getEmaPrice' - | 'getEmaPriceNoOlderThan' - | 'getEmaPriceUnsafe' - | 'getPrice' - | 'getPriceNoOlderThan' - | 'getPriceUnsafe' - | 'getUpdateFee' - | 'getValidTimePeriod' - | 'parsePriceFeedUpdates' - | 'updatePriceFeeds' - | 'updatePriceFeedsIfNecessary' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'getEmaPrice', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'getEmaPriceNoOlderThan', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getEmaPriceUnsafe', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'getPrice', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'getPriceNoOlderThan', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getPriceUnsafe', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getUpdateFee', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'getValidTimePeriod', values?: undefined): string - encodeFunctionData( - functionFragment: 'parsePriceFeedUpdates', - values: [ - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'updatePriceFeeds', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'updatePriceFeedsIfNecessary', - values: [ - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue[] - ] - ): string - - decodeFunctionResult(functionFragment: 'getEmaPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getEmaPriceNoOlderThan', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getEmaPriceUnsafe', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPriceNoOlderThan', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPriceUnsafe', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getUpdateFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getValidTimePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parsePriceFeedUpdates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updatePriceFeeds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updatePriceFeedsIfNecessary', data: BytesLike): Result - - events: { - 'BatchPriceFeedUpdate(uint16,uint64)': EventFragment - 'PriceFeedUpdate(bytes32,uint64,int64,uint64)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'BatchPriceFeedUpdate'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PriceFeedUpdate'): EventFragment + functions: { + "getEmaPrice(bytes32)": FunctionFragment; + "getEmaPriceNoOlderThan(bytes32,uint256)": FunctionFragment; + "getEmaPriceUnsafe(bytes32)": FunctionFragment; + "getPrice(bytes32)": FunctionFragment; + "getPriceNoOlderThan(bytes32,uint256)": FunctionFragment; + "getPriceUnsafe(bytes32)": FunctionFragment; + "getUpdateFee(bytes[])": FunctionFragment; + "getValidTimePeriod()": FunctionFragment; + "parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)": FunctionFragment; + "updatePriceFeeds(bytes[])": FunctionFragment; + "updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "getEmaPrice" + | "getEmaPriceNoOlderThan" + | "getEmaPriceUnsafe" + | "getPrice" + | "getPriceNoOlderThan" + | "getPriceUnsafe" + | "getUpdateFee" + | "getValidTimePeriod" + | "parsePriceFeedUpdates" + | "updatePriceFeeds" + | "updatePriceFeedsIfNecessary" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "getEmaPrice", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getEmaPriceNoOlderThan", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getEmaPriceUnsafe", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "getPrice", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "getPriceNoOlderThan", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getPriceUnsafe", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getUpdateFee", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getValidTimePeriod", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "parsePriceFeedUpdates", + values: [BytesLike[], BytesLike[], BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "updatePriceFeeds", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "updatePriceFeedsIfNecessary", + values: [BytesLike[], BytesLike[], BigNumberish[]] + ): string; + + decodeFunctionResult( + functionFragment: "getEmaPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getEmaPriceNoOlderThan", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getEmaPriceUnsafe", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getPriceNoOlderThan", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getPriceUnsafe", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getUpdateFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getValidTimePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "parsePriceFeedUpdates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updatePriceFeeds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updatePriceFeedsIfNecessary", + data: BytesLike + ): Result; + + events: { + "BatchPriceFeedUpdate(uint16,uint64)": EventFragment; + "PriceFeedUpdate(bytes32,uint64,int64,uint64)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "BatchPriceFeedUpdate"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PriceFeedUpdate"): EventFragment; } export interface BatchPriceFeedUpdateEventObject { - chainId: number - sequenceNumber: BigNumber + chainId: number; + sequenceNumber: BigNumber; } export type BatchPriceFeedUpdateEvent = TypedEvent< - [number, BigNumber], - BatchPriceFeedUpdateEventObject -> + [number, BigNumber], + BatchPriceFeedUpdateEventObject +>; -export type BatchPriceFeedUpdateEventFilter = TypedEventFilter +export type BatchPriceFeedUpdateEventFilter = + TypedEventFilter; export interface PriceFeedUpdateEventObject { - id: string - publishTime: BigNumber - price: BigNumber - conf: BigNumber + id: string; + publishTime: BigNumber; + price: BigNumber; + conf: BigNumber; } export type PriceFeedUpdateEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - PriceFeedUpdateEventObject -> + [string, BigNumber, BigNumber, BigNumber], + PriceFeedUpdateEventObject +>; -export type PriceFeedUpdateEventFilter = TypedEventFilter +export type PriceFeedUpdateEventFilter = TypedEventFilter; export interface Pyth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PythInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - getEmaPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getEmaPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getEmaPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getUpdateFee( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber] & { feeAmount: BigNumber }> - - getValidTimePeriod( - overrides?: CallOverrides - ): Promise<[BigNumber] & { validTimePeriod: BigNumber }> - - parsePriceFeedUpdates( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - minPublishTime: PromiseOrValue, - maxPublishTime: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeeds( - updateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - publishTimes: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - } - - getEmaPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getUpdateFee( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - minPublishTime: PromiseOrValue, - maxPublishTime: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeeds( - updateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - publishTimes: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - getEmaPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getUpdateFee( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - minPublishTime: PromiseOrValue, - maxPublishTime: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - updatePriceFeeds( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - updatePriceFeedsIfNecessary( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - publishTimes: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - } - - filters: { - 'BatchPriceFeedUpdate(uint16,uint64)'( - chainId?: null, - sequenceNumber?: null - ): BatchPriceFeedUpdateEventFilter - BatchPriceFeedUpdate(chainId?: null, sequenceNumber?: null): BatchPriceFeedUpdateEventFilter - - 'PriceFeedUpdate(bytes32,uint64,int64,uint64)'( - id?: PromiseOrValue | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter - PriceFeedUpdate( - id?: PromiseOrValue | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter - } - - estimateGas: { - getEmaPrice(id: PromiseOrValue, overrides?: CallOverrides): Promise - - getEmaPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe(id: PromiseOrValue, overrides?: CallOverrides): Promise - - getPrice(id: PromiseOrValue, overrides?: CallOverrides): Promise - - getPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe(id: PromiseOrValue, overrides?: CallOverrides): Promise - - getUpdateFee( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - minPublishTime: PromiseOrValue, - maxPublishTime: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeeds( - updateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - publishTimes: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - } - - populateTransaction: { - getEmaPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPrice( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceNoOlderThan( - id: PromiseOrValue, - age: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe( - id: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getUpdateFee( - updateData: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - minPublishTime: PromiseOrValue, - maxPublishTime: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeeds( - updateData: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: PromiseOrValue[], - priceIds: PromiseOrValue[], - publishTimes: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PythInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber] & { feeAmount: BigNumber }>; + + getValidTimePeriod( + overrides?: CallOverrides + ): Promise<[BigNumber] & { validTimePeriod: BigNumber }>; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + callStatic: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "BatchPriceFeedUpdate(uint16,uint64)"( + chainId?: null, + sequenceNumber?: null + ): BatchPriceFeedUpdateEventFilter; + BatchPriceFeedUpdate( + chainId?: null, + sequenceNumber?: null + ): BatchPriceFeedUpdateEventFilter; + + "PriceFeedUpdate(bytes32,uint64,int64,uint64)"( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter; + PriceFeedUpdate( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter; + }; + + estimateGas: { + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod( + overrides?: CallOverrides + ): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ReverseRecords.ts b/packages/sdk/src/contracts/types/ReverseRecords.ts index 84b9437d03..6706068a9a 100644 --- a/packages/sdk/src/contracts/types/ReverseRecords.ts +++ b/packages/sdk/src/contracts/types/ReverseRecords.ts @@ -2,79 +2,89 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ReverseRecordsInterface extends utils.Interface { - functions: { - 'getNames(address[])': FunctionFragment - } + functions: { + "getNames(address[])": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'getNames'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "getNames"): FunctionFragment; - encodeFunctionData(functionFragment: 'getNames', values: [PromiseOrValue[]]): string + encodeFunctionData(functionFragment: "getNames", values: [string[]]): string; - decodeFunctionResult(functionFragment: 'getNames', data: BytesLike): Result + decodeFunctionResult(functionFragment: "getNames", data: BytesLike): Result; - events: {} + events: {}; } export interface ReverseRecords extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ReverseRecordsInterface + interface: ReverseRecordsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - getNames( - addresses: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[string[]] & { r: string[] }> - } + functions: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise<[string[]] & { r: string[] }>; + }; - getNames(addresses: PromiseOrValue[], overrides?: CallOverrides): Promise + getNames(addresses: string[], overrides?: CallOverrides): Promise; - callStatic: { - getNames(addresses: PromiseOrValue[], overrides?: CallOverrides): Promise - } + callStatic: { + getNames(addresses: string[], overrides?: CallOverrides): Promise; + }; - filters: {} + filters: {}; - estimateGas: { - getNames(addresses: PromiseOrValue[], overrides?: CallOverrides): Promise - } + estimateGas: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise; + }; - populateTransaction: { - getNames( - addresses: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - } + populateTransaction: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/RewardEscrow.ts b/packages/sdk/src/contracts/types/RewardEscrow.ts index 60634b6fc7..c82c6c2944 100644 --- a/packages/sdk/src/contracts/types/RewardEscrow.ts +++ b/packages/sdk/src/contracts/types/RewardEscrow.ts @@ -2,973 +2,1137 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace VestingEntries { - export type VestingEntryWithIDStruct = { - endTime: PromiseOrValue - escrowAmount: PromiseOrValue - entryID: PromiseOrValue - } - - export type VestingEntryWithIDStructOutput = [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - entryID: BigNumber - } + export type VestingEntryWithIDStruct = { + endTime: BigNumberish; + escrowAmount: BigNumberish; + entryID: BigNumberish; + }; + + export type VestingEntryWithIDStructOutput = [ + BigNumber, + BigNumber, + BigNumber + ] & { endTime: BigNumber; escrowAmount: BigNumber; entryID: BigNumber }; } export interface RewardEscrowInterface extends utils.Interface { - functions: { - 'MAX_DURATION()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'accountVestingEntryIDs(address,uint256)': FunctionFragment - 'appendVestingEntry(address,uint256,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'createEscrowEntry(address,uint256,uint256)': FunctionFragment - 'getAccountVestingEntryIDs(address,uint256,uint256)': FunctionFragment - 'getKwentaAddress()': FunctionFragment - 'getVestingEntry(address,uint256)': FunctionFragment - 'getVestingEntryClaimable(address,uint256)': FunctionFragment - 'getVestingQuantity(address,uint256[])': FunctionFragment - 'getVestingSchedules(address,uint256,uint256)': FunctionFragment - 'nextEntryId()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'numVestingEntries(address)': FunctionFragment - 'owner()': FunctionFragment - 'setStakingRewards(address)': FunctionFragment - 'setTreasuryDAO(address)': FunctionFragment - 'stakeEscrow(uint256)': FunctionFragment - 'stakingRewards()': FunctionFragment - 'totalEscrowedAccountBalance(address)': FunctionFragment - 'totalEscrowedBalance()': FunctionFragment - 'totalVestedAccountBalance(address)': FunctionFragment - 'treasuryDAO()': FunctionFragment - 'unstakeEscrow(uint256)': FunctionFragment - 'vest(uint256[])': FunctionFragment - 'vestingSchedules(address,uint256)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'MAX_DURATION' - | 'acceptOwnership' - | 'accountVestingEntryIDs' - | 'appendVestingEntry' - | 'balanceOf' - | 'createEscrowEntry' - | 'getAccountVestingEntryIDs' - | 'getKwentaAddress' - | 'getVestingEntry' - | 'getVestingEntryClaimable' - | 'getVestingQuantity' - | 'getVestingSchedules' - | 'nextEntryId' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'numVestingEntries' - | 'owner' - | 'setStakingRewards' - | 'setTreasuryDAO' - | 'stakeEscrow' - | 'stakingRewards' - | 'totalEscrowedAccountBalance' - | 'totalEscrowedBalance' - | 'totalVestedAccountBalance' - | 'treasuryDAO' - | 'unstakeEscrow' - | 'vest' - | 'vestingSchedules' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'MAX_DURATION', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'accountVestingEntryIDs', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'appendVestingEntry', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'createEscrowEntry', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getAccountVestingEntryIDs', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'getKwentaAddress', values?: undefined): string - encodeFunctionData( - functionFragment: 'getVestingEntry', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getVestingEntryClaimable', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getVestingQuantity', - values: [PromiseOrValue, PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'getVestingSchedules', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'nextEntryId', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData( - functionFragment: 'numVestingEntries', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'setStakingRewards', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'stakeEscrow', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'stakingRewards', values?: undefined): string - encodeFunctionData( - functionFragment: 'totalEscrowedAccountBalance', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'totalEscrowedBalance', values?: undefined): string - encodeFunctionData( - functionFragment: 'totalVestedAccountBalance', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'treasuryDAO', values?: undefined): string - encodeFunctionData( - functionFragment: 'unstakeEscrow', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'vest', values: [PromiseOrValue[]]): string - encodeFunctionData( - functionFragment: 'vestingSchedules', - values: [PromiseOrValue, PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'MAX_DURATION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accountVestingEntryIDs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'appendVestingEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'createEscrowEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountVestingEntryIDs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getKwentaAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingEntryClaimable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingQuantity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingSchedules', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextEntryId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'numVestingEntries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTreasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalEscrowedAccountBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalEscrowedBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalVestedAccountBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'treasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vest', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vestingSchedules', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'StakingRewardsSet(address)': EventFragment - 'TreasuryDAOSet(address)': EventFragment - 'Vested(address,uint256)': EventFragment - 'VestingEntryCreated(address,uint256,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'StakingRewardsSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TreasuryDAOSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Vested'): EventFragment - getEvent(nameOrSignatureOrTopic: 'VestingEntryCreated'): EventFragment + functions: { + "MAX_DURATION()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "accountVestingEntryIDs(address,uint256)": FunctionFragment; + "appendVestingEntry(address,uint256,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "createEscrowEntry(address,uint256,uint256)": FunctionFragment; + "getAccountVestingEntryIDs(address,uint256,uint256)": FunctionFragment; + "getKwentaAddress()": FunctionFragment; + "getVestingEntry(address,uint256)": FunctionFragment; + "getVestingEntryClaimable(address,uint256)": FunctionFragment; + "getVestingQuantity(address,uint256[])": FunctionFragment; + "getVestingSchedules(address,uint256,uint256)": FunctionFragment; + "nextEntryId()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "numVestingEntries(address)": FunctionFragment; + "owner()": FunctionFragment; + "setStakingRewards(address)": FunctionFragment; + "setTreasuryDAO(address)": FunctionFragment; + "stakeEscrow(uint256)": FunctionFragment; + "stakingRewards()": FunctionFragment; + "totalEscrowedAccountBalance(address)": FunctionFragment; + "totalEscrowedBalance()": FunctionFragment; + "totalVestedAccountBalance(address)": FunctionFragment; + "treasuryDAO()": FunctionFragment; + "unstakeEscrow(uint256)": FunctionFragment; + "vest(uint256[])": FunctionFragment; + "vestingSchedules(address,uint256)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "MAX_DURATION" + | "acceptOwnership" + | "accountVestingEntryIDs" + | "appendVestingEntry" + | "balanceOf" + | "createEscrowEntry" + | "getAccountVestingEntryIDs" + | "getKwentaAddress" + | "getVestingEntry" + | "getVestingEntryClaimable" + | "getVestingQuantity" + | "getVestingSchedules" + | "nextEntryId" + | "nominateNewOwner" + | "nominatedOwner" + | "numVestingEntries" + | "owner" + | "setStakingRewards" + | "setTreasuryDAO" + | "stakeEscrow" + | "stakingRewards" + | "totalEscrowedAccountBalance" + | "totalEscrowedBalance" + | "totalVestedAccountBalance" + | "treasuryDAO" + | "unstakeEscrow" + | "vest" + | "vestingSchedules" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "MAX_DURATION", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accountVestingEntryIDs", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "appendVestingEntry", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "createEscrowEntry", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountVestingEntryIDs", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getKwentaAddress", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getVestingEntry", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getVestingEntryClaimable", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getVestingQuantity", + values: [string, BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "getVestingSchedules", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nextEntryId", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "numVestingEntries", + values: [string] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setStakingRewards", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTreasuryDAO", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "stakeEscrow", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "stakingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalEscrowedAccountBalance", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "totalEscrowedBalance", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalVestedAccountBalance", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "treasuryDAO", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unstakeEscrow", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "vest", + values: [BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "vestingSchedules", + values: [string, BigNumberish] + ): string; + + decodeFunctionResult( + functionFragment: "MAX_DURATION", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accountVestingEntryIDs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "appendVestingEntry", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "createEscrowEntry", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountVestingEntryIDs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getKwentaAddress", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingEntry", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingEntryClaimable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingQuantity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingSchedules", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextEntryId", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "numVestingEntries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTreasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "stakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "stakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalEscrowedAccountBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalEscrowedBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalVestedAccountBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "treasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unstakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "vest", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "vestingSchedules", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "StakingRewardsSet(address)": EventFragment; + "TreasuryDAOSet(address)": EventFragment; + "Vested(address,uint256)": EventFragment; + "VestingEntryCreated(address,uint256,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "StakingRewardsSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TreasuryDAOSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Vested"): EventFragment; + getEvent(nameOrSignatureOrTopic: "VestingEntryCreated"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface StakingRewardsSetEventObject { - rewardEscrow: string + rewardEscrow: string; } -export type StakingRewardsSetEvent = TypedEvent<[string], StakingRewardsSetEventObject> +export type StakingRewardsSetEvent = TypedEvent< + [string], + StakingRewardsSetEventObject +>; -export type StakingRewardsSetEventFilter = TypedEventFilter +export type StakingRewardsSetEventFilter = + TypedEventFilter; export interface TreasuryDAOSetEventObject { - treasuryDAO: string + treasuryDAO: string; } -export type TreasuryDAOSetEvent = TypedEvent<[string], TreasuryDAOSetEventObject> +export type TreasuryDAOSetEvent = TypedEvent< + [string], + TreasuryDAOSetEventObject +>; -export type TreasuryDAOSetEventFilter = TypedEventFilter +export type TreasuryDAOSetEventFilter = TypedEventFilter; export interface VestedEventObject { - beneficiary: string - value: BigNumber + beneficiary: string; + value: BigNumber; } -export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject> +export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject>; -export type VestedEventFilter = TypedEventFilter +export type VestedEventFilter = TypedEventFilter; export interface VestingEntryCreatedEventObject { - beneficiary: string - value: BigNumber - duration: BigNumber - entryID: BigNumber + beneficiary: string; + value: BigNumber; + duration: BigNumber; + entryID: BigNumber; } export type VestingEntryCreatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - VestingEntryCreatedEventObject -> + [string, BigNumber, BigNumber, BigNumber], + VestingEntryCreatedEventObject +>; -export type VestingEntryCreatedEventFilter = TypedEventFilter +export type VestingEntryCreatedEventFilter = + TypedEventFilter; export interface RewardEscrow extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: RewardEscrowInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accountVestingEntryIDs( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - appendVestingEntry( - account: PromiseOrValue, - quantity: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - createEscrowEntry( - beneficiary: PromiseOrValue, - deposit: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getAccountVestingEntryIDs( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber[]]> - - getKwentaAddress(overrides?: CallOverrides): Promise<[string]> - - getVestingEntry( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: PromiseOrValue, - entryIDs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]> - - nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - numVestingEntries( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - owner(overrides?: CallOverrides): Promise<[string]> - - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise<[string]> - - totalEscrowedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]> - - totalVestedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - treasuryDAO(overrides?: CallOverrides): Promise<[string]> - - unstakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vest( - entryIDs: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vestingSchedules( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - } - - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accountVestingEntryIDs( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: PromiseOrValue, - quantity: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: PromiseOrValue, - deposit: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getAccountVestingEntryIDs( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: PromiseOrValue, - entryIDs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries(account: PromiseOrValue, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vest( - entryIDs: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vestingSchedules( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - callStatic: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - accountVestingEntryIDs( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: PromiseOrValue, - quantity: PromiseOrValue, - duration: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: PromiseOrValue, - deposit: PromiseOrValue, - duration: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getAccountVestingEntryIDs( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: PromiseOrValue, - entryIDs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - setTreasuryDAO(_treasuryDAO: PromiseOrValue, overrides?: CallOverrides): Promise - - stakeEscrow(_amount: PromiseOrValue, overrides?: CallOverrides): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow(_amount: PromiseOrValue, overrides?: CallOverrides): Promise - - vest(entryIDs: PromiseOrValue[], overrides?: CallOverrides): Promise - - vestingSchedules( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - } - - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'StakingRewardsSet(address)'(rewardEscrow?: null): StakingRewardsSetEventFilter - StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter - - 'TreasuryDAOSet(address)'(treasuryDAO?: null): TreasuryDAOSetEventFilter - TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter - - 'Vested(address,uint256)'( - beneficiary?: PromiseOrValue | null, - value?: null - ): VestedEventFilter - Vested(beneficiary?: PromiseOrValue | null, value?: null): VestedEventFilter - - 'VestingEntryCreated(address,uint256,uint256,uint256)'( - beneficiary?: PromiseOrValue | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter - VestingEntryCreated( - beneficiary?: PromiseOrValue | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter - } - - estimateGas: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - accountVestingEntryIDs( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: PromiseOrValue, - quantity: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: PromiseOrValue, - deposit: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getAccountVestingEntryIDs( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getVestingEntryClaimable( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getVestingQuantity( - account: PromiseOrValue, - entryIDs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getVestingSchedules( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vest( - entryIDs: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vestingSchedules( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accountVestingEntryIDs( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: PromiseOrValue, - quantity: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - createEscrowEntry( - beneficiary: PromiseOrValue, - deposit: PromiseOrValue, - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getAccountVestingEntryIDs( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getVestingEntryClaimable( - account: PromiseOrValue, - entryID: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - getVestingQuantity( - account: PromiseOrValue, - entryIDs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getVestingSchedules( - account: PromiseOrValue, - index: PromiseOrValue, - pageSize: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vest( - entryIDs: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - vestingSchedules( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: RewardEscrowInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + getKwentaAddress(overrides?: CallOverrides): Promise<[string]>; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } + >; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]>; + + nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise<[string]>; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]>; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + treasuryDAO(overrides?: CallOverrides): Promise<[string]>; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + }; + + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }>; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + callStatic: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } + >; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: CallOverrides + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: CallOverrides + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + vest(entryIDs: BigNumberish[], overrides?: CallOverrides): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + }; + + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "StakingRewardsSet(address)"( + rewardEscrow?: null + ): StakingRewardsSetEventFilter; + StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter; + + "TreasuryDAOSet(address)"(treasuryDAO?: null): TreasuryDAOSetEventFilter; + TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter; + + "Vested(address,uint256)"( + beneficiary?: string | null, + value?: null + ): VestedEventFilter; + Vested(beneficiary?: string | null, value?: null): VestedEventFilter; + + "VestingEntryCreated(address,uint256,uint256,uint256)"( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter; + VestingEntryCreated( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter; + }; + + estimateGas: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance( + overrides?: CallOverrides + ): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccount.ts b/packages/sdk/src/contracts/types/SmartMarginAccount.ts index f3d251f70b..75f741ce5f 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccount.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccount.ts @@ -2,685 +2,761 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IAccount { - export type ConditionalOrderStruct = { - marketKey: PromiseOrValue - marginDelta: PromiseOrValue - sizeDelta: PromiseOrValue - targetPrice: PromiseOrValue - gelatoTaskId: PromiseOrValue - conditionalOrderType: PromiseOrValue - desiredFillPrice: PromiseOrValue - reduceOnly: PromiseOrValue - } - - export type ConditionalOrderStructOutput = [ - string, - BigNumber, - BigNumber, - BigNumber, - string, - number, - BigNumber, - boolean - ] & { - marketKey: string - marginDelta: BigNumber - sizeDelta: BigNumber - targetPrice: BigNumber - gelatoTaskId: string - conditionalOrderType: number - desiredFillPrice: BigNumber - reduceOnly: boolean - } + export type ConditionalOrderStruct = { + marketKey: BytesLike; + marginDelta: BigNumberish; + sizeDelta: BigNumberish; + targetPrice: BigNumberish; + gelatoTaskId: BytesLike; + conditionalOrderType: BigNumberish; + desiredFillPrice: BigNumberish; + reduceOnly: boolean; + }; + + export type ConditionalOrderStructOutput = [ + string, + BigNumber, + BigNumber, + BigNumber, + string, + number, + BigNumber, + boolean + ] & { + marketKey: string; + marginDelta: BigNumber; + sizeDelta: BigNumber; + targetPrice: BigNumber; + gelatoTaskId: string; + conditionalOrderType: number; + desiredFillPrice: BigNumber; + reduceOnly: boolean; + }; } export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: PromiseOrValue - sizeDelta: PromiseOrValue - desiredFillPrice: PromiseOrValue - targetRoundId: PromiseOrValue - commitDeposit: PromiseOrValue - keeperDeposit: PromiseOrValue - executableAtTime: PromiseOrValue - intentionTime: PromiseOrValue - trackingCode: PromiseOrValue - } - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean - sizeDelta: BigNumber - desiredFillPrice: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - executableAtTime: BigNumber - intentionTime: BigNumber - trackingCode: string - } - - export type PositionStruct = { - id: PromiseOrValue - lastFundingIndex: PromiseOrValue - margin: PromiseOrValue - lastPrice: PromiseOrValue - size: PromiseOrValue - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type DelayedOrderStruct = { + isOffchain: boolean; + sizeDelta: BigNumberish; + desiredFillPrice: BigNumberish; + targetRoundId: BigNumberish; + commitDeposit: BigNumberish; + keeperDeposit: BigNumberish; + executableAtTime: BigNumberish; + intentionTime: BigNumberish; + trackingCode: BytesLike; + }; + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean; + sizeDelta: BigNumber; + desiredFillPrice: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + executableAtTime: BigNumber; + intentionTime: BigNumber; + trackingCode: string; + }; + + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface SmartMarginAccountInterface extends utils.Interface { - functions: { - 'ETH()': FunctionFragment - 'GELATO()': FunctionFragment - 'OPS()': FunctionFragment - 'VERSION()': FunctionFragment - 'addDelegate(address)': FunctionFragment - 'checker(uint256)': FunctionFragment - 'committedMargin()': FunctionFragment - 'conditionalOrderId()': FunctionFragment - 'delegates(address)': FunctionFragment - 'execute(uint8[],bytes[])': FunctionFragment - 'executeConditionalOrder(uint256)': FunctionFragment - 'freeMargin()': FunctionFragment - 'getConditionalOrder(uint256)': FunctionFragment - 'getDelayedOrder(bytes32)': FunctionFragment - 'getPosition(bytes32)': FunctionFragment - 'isAuth()': FunctionFragment - 'isOwner()': FunctionFragment - 'owner()': FunctionFragment - 'removeDelegate(address)': FunctionFragment - 'setInitialOwnership(address)': FunctionFragment - 'transferOwnership(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'ETH' - | 'GELATO' - | 'OPS' - | 'VERSION' - | 'addDelegate' - | 'checker' - | 'committedMargin' - | 'conditionalOrderId' - | 'delegates' - | 'execute' - | 'executeConditionalOrder' - | 'freeMargin' - | 'getConditionalOrder' - | 'getDelayedOrder' - | 'getPosition' - | 'isAuth' - | 'isOwner' - | 'owner' - | 'removeDelegate' - | 'setInitialOwnership' - | 'transferOwnership' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'ETH', values?: undefined): string - encodeFunctionData(functionFragment: 'GELATO', values?: undefined): string - encodeFunctionData(functionFragment: 'OPS', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'addDelegate', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'checker', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'committedMargin', values?: undefined): string - encodeFunctionData(functionFragment: 'conditionalOrderId', values?: undefined): string - encodeFunctionData(functionFragment: 'delegates', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'execute', - values: [PromiseOrValue[], PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'executeConditionalOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'freeMargin', values?: undefined): string - encodeFunctionData( - functionFragment: 'getConditionalOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'getDelayedOrder', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'getPosition', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'isAuth', values?: undefined): string - encodeFunctionData(functionFragment: 'isOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'removeDelegate', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'setInitialOwnership', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferOwnership', - values: [PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'ETH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'GELATO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'OPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addDelegate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'checker', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'committedMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'conditionalOrderId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'delegates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'execute', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeConditionalOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'freeMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getConditionalOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isAuth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeDelegate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setInitialOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result - - events: { - 'DelegatedAccountAdded(address,address)': EventFragment - 'DelegatedAccountRemoved(address,address)': EventFragment - 'OwnershipTransferred(address,address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'DelegatedAccountAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DelegatedAccountRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment + functions: { + "ETH()": FunctionFragment; + "GELATO()": FunctionFragment; + "OPS()": FunctionFragment; + "VERSION()": FunctionFragment; + "addDelegate(address)": FunctionFragment; + "checker(uint256)": FunctionFragment; + "committedMargin()": FunctionFragment; + "conditionalOrderId()": FunctionFragment; + "delegates(address)": FunctionFragment; + "execute(uint8[],bytes[])": FunctionFragment; + "executeConditionalOrder(uint256)": FunctionFragment; + "freeMargin()": FunctionFragment; + "getConditionalOrder(uint256)": FunctionFragment; + "getDelayedOrder(bytes32)": FunctionFragment; + "getPosition(bytes32)": FunctionFragment; + "isAuth()": FunctionFragment; + "isOwner()": FunctionFragment; + "owner()": FunctionFragment; + "removeDelegate(address)": FunctionFragment; + "setInitialOwnership(address)": FunctionFragment; + "transferOwnership(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "ETH" + | "GELATO" + | "OPS" + | "VERSION" + | "addDelegate" + | "checker" + | "committedMargin" + | "conditionalOrderId" + | "delegates" + | "execute" + | "executeConditionalOrder" + | "freeMargin" + | "getConditionalOrder" + | "getDelayedOrder" + | "getPosition" + | "isAuth" + | "isOwner" + | "owner" + | "removeDelegate" + | "setInitialOwnership" + | "transferOwnership" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "ETH", values?: undefined): string; + encodeFunctionData(functionFragment: "GELATO", values?: undefined): string; + encodeFunctionData(functionFragment: "OPS", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addDelegate", values: [string]): string; + encodeFunctionData( + functionFragment: "checker", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "committedMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "conditionalOrderId", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "delegates", values: [string]): string; + encodeFunctionData( + functionFragment: "execute", + values: [BigNumberish[], BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "executeConditionalOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "freeMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getConditionalOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getDelayedOrder", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getPosition", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "isAuth", values?: undefined): string; + encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "removeDelegate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setInitialOwnership", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "transferOwnership", + values: [string] + ): string; + + decodeFunctionResult(functionFragment: "ETH", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "GELATO", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "OPS", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "addDelegate", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "checker", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "committedMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "conditionalOrderId", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "delegates", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "executeConditionalOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "freeMargin", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getConditionalOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getPosition", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isAuth", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "removeDelegate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setInitialOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferOwnership", + data: BytesLike + ): Result; + + events: { + "DelegatedAccountAdded(address,address)": EventFragment; + "DelegatedAccountRemoved(address,address)": EventFragment; + "OwnershipTransferred(address,address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "DelegatedAccountAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "DelegatedAccountRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export interface DelegatedAccountAddedEventObject { - caller: string - delegate: string + caller: string; + delegate: string; } export type DelegatedAccountAddedEvent = TypedEvent< - [string, string], - DelegatedAccountAddedEventObject -> + [string, string], + DelegatedAccountAddedEventObject +>; -export type DelegatedAccountAddedEventFilter = TypedEventFilter +export type DelegatedAccountAddedEventFilter = + TypedEventFilter; export interface DelegatedAccountRemovedEventObject { - caller: string - delegate: string + caller: string; + delegate: string; } export type DelegatedAccountRemovedEvent = TypedEvent< - [string, string], - DelegatedAccountRemovedEventObject -> + [string, string], + DelegatedAccountRemovedEventObject +>; -export type DelegatedAccountRemovedEventFilter = TypedEventFilter +export type DelegatedAccountRemovedEventFilter = + TypedEventFilter; export interface OwnershipTransferredEventObject { - caller: string - newOwner: string + caller: string; + newOwner: string; } export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject -> + [string, string], + OwnershipTransferredEventObject +>; -export type OwnershipTransferredEventFilter = TypedEventFilter +export type OwnershipTransferredEventFilter = + TypedEventFilter; export interface SmartMarginAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SmartMarginAccountInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - ETH(overrides?: CallOverrides): Promise<[string]> - - GELATO(overrides?: CallOverrides): Promise<[string]> - - OPS(overrides?: CallOverrides): Promise<[string]> - - VERSION(overrides?: CallOverrides): Promise<[string]> - - addDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - checker( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> - - committedMargin(overrides?: CallOverrides): Promise<[BigNumber]> - - conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]> + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SmartMarginAccountInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + ETH(overrides?: CallOverrides): Promise<[string]>; - delegates(delegate: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]> + GELATO(overrides?: CallOverrides): Promise<[string]>; - execute( - _commands: PromiseOrValue[], - _inputs: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise + OPS(overrides?: CallOverrides): Promise<[string]>; - executeConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + VERSION(overrides?: CallOverrides): Promise<[string]>; - freeMargin(overrides?: CallOverrides): Promise<[BigNumber]> + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[IAccount.ConditionalOrderStructOutput]> + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { - order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput - } - > + committedMargin(overrides?: CallOverrides): Promise<[BigNumber]>; - getPosition( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.PositionStructOutput] & { - position: IPerpsV2MarketConsolidated.PositionStructOutput - } - > + conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]>; - isAuth(overrides?: CallOverrides): Promise<[boolean]> + delegates(delegate: string, overrides?: CallOverrides): Promise<[boolean]>; - isOwner(overrides?: CallOverrides): Promise<[boolean]> + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise<[string]> + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - removeDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + freeMargin(overrides?: CallOverrides): Promise<[BigNumber]>; - setInitialOwnership( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[IAccount.ConditionalOrderStructOutput]>; - transferOwnership( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { + order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput; + } + >; - ETH(overrides?: CallOverrides): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.PositionStructOutput] & { + position: IPerpsV2MarketConsolidated.PositionStructOutput; + } + >; - GELATO(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise<[boolean]>; - OPS(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise<[boolean]>; - VERSION(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise<[string]>; - addDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - checker( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; - conditionalOrderId(overrides?: CallOverrides): Promise + ETH(overrides?: CallOverrides): Promise; - delegates(delegate: PromiseOrValue, overrides?: CallOverrides): Promise + GELATO(overrides?: CallOverrides): Promise; - execute( - _commands: PromiseOrValue[], - _inputs: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise + OPS(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + VERSION(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + committedMargin(overrides?: CallOverrides): Promise; - getPosition( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - removeDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + freeMargin(overrides?: CallOverrides): Promise; - setInitialOwnership( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - transferOwnership( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - callStatic: { - ETH(overrides?: CallOverrides): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - GELATO(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; - OPS(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - addDelegate(_delegate: PromiseOrValue, overrides?: CallOverrides): Promise + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - checker( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - conditionalOrderId(overrides?: CallOverrides): Promise + callStatic: { + ETH(overrides?: CallOverrides): Promise; - delegates(delegate: PromiseOrValue, overrides?: CallOverrides): Promise + GELATO(overrides?: CallOverrides): Promise; - execute( - _commands: PromiseOrValue[], - _inputs: PromiseOrValue[], - overrides?: CallOverrides - ): Promise + OPS(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + VERSION(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + addDelegate(_delegate: string, overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + committedMargin(overrides?: CallOverrides): Promise; - getPosition( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - removeDelegate(_delegate: PromiseOrValue, overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - setInitialOwnership(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - transferOwnership(_newOwner: PromiseOrValue, overrides?: CallOverrides): Promise - } + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - filters: { - 'DelegatedAccountAdded(address,address)'( - caller?: PromiseOrValue | null, - delegate?: PromiseOrValue | null - ): DelegatedAccountAddedEventFilter - DelegatedAccountAdded( - caller?: PromiseOrValue | null, - delegate?: PromiseOrValue | null - ): DelegatedAccountAddedEventFilter + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'DelegatedAccountRemoved(address,address)'( - caller?: PromiseOrValue | null, - delegate?: PromiseOrValue | null - ): DelegatedAccountRemovedEventFilter - DelegatedAccountRemoved( - caller?: PromiseOrValue | null, - delegate?: PromiseOrValue | null - ): DelegatedAccountRemovedEventFilter + isAuth(overrides?: CallOverrides): Promise; - 'OwnershipTransferred(address,address)'( - caller?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter - OwnershipTransferred( - caller?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null - ): OwnershipTransferredEventFilter - } + isOwner(overrides?: CallOverrides): Promise; - estimateGas: { - ETH(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - GELATO(overrides?: CallOverrides): Promise + removeDelegate(_delegate: string, overrides?: CallOverrides): Promise; - OPS(overrides?: CallOverrides): Promise + setInitialOwnership( + _owner: string, + overrides?: CallOverrides + ): Promise; - VERSION(overrides?: CallOverrides): Promise + transferOwnership( + _newOwner: string, + overrides?: CallOverrides + ): Promise; + }; - addDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + filters: { + "DelegatedAccountAdded(address,address)"( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter; + DelegatedAccountAdded( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter; - checker( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + "DelegatedAccountRemoved(address,address)"( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter; + DelegatedAccountRemoved( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter; - committedMargin(overrides?: CallOverrides): Promise + "OwnershipTransferred(address,address)"( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + OwnershipTransferred( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + }; - conditionalOrderId(overrides?: CallOverrides): Promise + estimateGas: { + ETH(overrides?: CallOverrides): Promise; - delegates(delegate: PromiseOrValue, overrides?: CallOverrides): Promise + GELATO(overrides?: CallOverrides): Promise; - execute( - _commands: PromiseOrValue[], - _inputs: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise + OPS(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + VERSION(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - getDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + committedMargin(overrides?: CallOverrides): Promise; - getPosition( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; + + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - isOwner(overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - removeDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setInitialOwnership( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferOwnership( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - populateTransaction: { - ETH(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; + + isOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + ETH(overrides?: CallOverrides): Promise; - GELATO(overrides?: CallOverrides): Promise + GELATO(overrides?: CallOverrides): Promise; - OPS(overrides?: CallOverrides): Promise + OPS(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - addDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - checker( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + committedMargin(overrides?: CallOverrides): Promise; - conditionalOrderId(overrides?: CallOverrides): Promise + conditionalOrderId( + overrides?: CallOverrides + ): Promise; - delegates( - delegate: PromiseOrValue, - overrides?: CallOverrides - ): Promise + delegates( + delegate: string, + overrides?: CallOverrides + ): Promise; - execute( - _commands: PromiseOrValue[], - _inputs: PromiseOrValue[], - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - executeConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - freeMargin(overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - getDelayedOrder( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - getPosition( - _marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - isAuth(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - removeDelegate( - _delegate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - setInitialOwnership( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - transferOwnership( - _newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts index 89663e53f1..a5d069d9b4 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts @@ -14,7 +14,7 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SmartMarginAccountFactoryInterface extends utils.Interface { functions: { @@ -46,29 +46,20 @@ export interface SmartMarginAccountFactoryInterface extends utils.Interface { | 'upgradeAccountImplementation' ): FunctionFragment - encodeFunctionData(functionFragment: 'accounts', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'accounts', values: [string]): string encodeFunctionData(functionFragment: 'canUpgrade', values?: undefined): string - encodeFunctionData(functionFragment: 'getAccountOwner', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'getAccountsOwnedBy', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'getAccountOwner', values: [string]): string + encodeFunctionData(functionFragment: 'getAccountsOwnedBy', values: [string]): string encodeFunctionData(functionFragment: 'implementation', values?: undefined): string encodeFunctionData(functionFragment: 'newAccount', values?: undefined): string encodeFunctionData(functionFragment: 'owner', values?: undefined): string encodeFunctionData(functionFragment: 'removeUpgradability', values?: undefined): string - encodeFunctionData( - functionFragment: 'transferOwnership', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string encodeFunctionData( functionFragment: 'updateAccountOwnership', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'upgradeAccountImplementation', - values: [PromiseOrValue] + values: [string, string, string] ): string + encodeFunctionData(functionFragment: 'upgradeAccountImplementation', values: [string]): string decodeFunctionResult(functionFragment: 'accounts', data: BytesLike): Result decodeFunctionResult(functionFragment: 'canUpgrade', data: BytesLike): Result @@ -101,8 +92,9 @@ export type AccountImplementationUpgradedEvent = TypedEvent< AccountImplementationUpgradedEventObject > -export type AccountImplementationUpgradedEventFilter = - TypedEventFilter +export type AccountImplementationUpgradedEventFilter = TypedEventFilter< + AccountImplementationUpgradedEvent +> export interface NewAccountEventObject { creator: string @@ -149,95 +141,81 @@ export interface SmartMarginAccountFactory extends BaseContract { removeListener: OnEvent functions: { - accounts( - accounts: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean] & { exist: boolean }> + accounts(accounts: string, overrides?: CallOverrides): Promise<[boolean] & { exist: boolean }> canUpgrade(overrides?: CallOverrides): Promise<[boolean]> - getAccountOwner(_account: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> + getAccountOwner(_account: string, overrides?: CallOverrides): Promise<[string]> - getAccountsOwnedBy( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[]]> + getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise<[string[]]> implementation(overrides?: CallOverrides): Promise<[string]> - newAccount( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + newAccount(overrides?: Overrides & { from?: string }): Promise owner(overrides?: CallOverrides): Promise<[string]> - removeUpgradability( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeUpgradability(overrides?: Overrides & { from?: string }): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise updateAccountOwnership( - _account: PromiseOrValue, - _newOwner: PromiseOrValue, - _oldOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } ): Promise upgradeAccountImplementation( - _implementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _implementation: string, + overrides?: Overrides & { from?: string } ): Promise } - accounts(accounts: PromiseOrValue, overrides?: CallOverrides): Promise + accounts(accounts: string, overrides?: CallOverrides): Promise canUpgrade(overrides?: CallOverrides): Promise - getAccountOwner(_account: PromiseOrValue, overrides?: CallOverrides): Promise + getAccountOwner(_account: string, overrides?: CallOverrides): Promise - getAccountsOwnedBy(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise implementation(overrides?: CallOverrides): Promise - newAccount( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + newAccount(overrides?: Overrides & { from?: string }): Promise owner(overrides?: CallOverrides): Promise - removeUpgradability( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeUpgradability(overrides?: Overrides & { from?: string }): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise updateAccountOwnership( - _account: PromiseOrValue, - _newOwner: PromiseOrValue, - _oldOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } ): Promise upgradeAccountImplementation( - _implementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _implementation: string, + overrides?: Overrides & { from?: string } ): Promise callStatic: { - accounts(accounts: PromiseOrValue, overrides?: CallOverrides): Promise + accounts(accounts: string, overrides?: CallOverrides): Promise canUpgrade(overrides?: CallOverrides): Promise - getAccountOwner(_account: PromiseOrValue, overrides?: CallOverrides): Promise + getAccountOwner(_account: string, overrides?: CallOverrides): Promise - getAccountsOwnedBy(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise implementation(overrides?: CallOverrides): Promise @@ -247,19 +225,16 @@ export interface SmartMarginAccountFactory extends BaseContract { removeUpgradability(overrides?: CallOverrides): Promise - transferOwnership(newOwner: PromiseOrValue, overrides?: CallOverrides): Promise + transferOwnership(newOwner: string, overrides?: CallOverrides): Promise updateAccountOwnership( - _account: PromiseOrValue, - _newOwner: PromiseOrValue, - _oldOwner: PromiseOrValue, + _account: string, + _newOwner: string, + _oldOwner: string, overrides?: CallOverrides ): Promise - upgradeAccountImplementation( - _implementation: PromiseOrValue, - overrides?: CallOverrides - ): Promise + upgradeAccountImplementation(_implementation: string, overrides?: CallOverrides): Promise } filters: { @@ -269,111 +244,93 @@ export interface SmartMarginAccountFactory extends BaseContract { AccountImplementationUpgraded(implementation?: null): AccountImplementationUpgradedEventFilter 'NewAccount(address,address,bytes32)'( - creator?: PromiseOrValue | null, - account?: PromiseOrValue | null, + creator?: string | null, + account?: string | null, version?: null ): NewAccountEventFilter NewAccount( - creator?: PromiseOrValue | null, - account?: PromiseOrValue | null, + creator?: string | null, + account?: string | null, version?: null ): NewAccountEventFilter 'OwnershipTransferred(address,address)'( - user?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null + user?: string | null, + newOwner?: string | null ): OwnershipTransferredEventFilter OwnershipTransferred( - user?: PromiseOrValue | null, - newOwner?: PromiseOrValue | null + user?: string | null, + newOwner?: string | null ): OwnershipTransferredEventFilter } estimateGas: { - accounts(accounts: PromiseOrValue, overrides?: CallOverrides): Promise + accounts(accounts: string, overrides?: CallOverrides): Promise canUpgrade(overrides?: CallOverrides): Promise - getAccountOwner(_account: PromiseOrValue, overrides?: CallOverrides): Promise + getAccountOwner(_account: string, overrides?: CallOverrides): Promise - getAccountsOwnedBy( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise implementation(overrides?: CallOverrides): Promise - newAccount(overrides?: Overrides & { from?: PromiseOrValue }): Promise + newAccount(overrides?: Overrides & { from?: string }): Promise owner(overrides?: CallOverrides): Promise - removeUpgradability( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeUpgradability(overrides?: Overrides & { from?: string }): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise updateAccountOwnership( - _account: PromiseOrValue, - _newOwner: PromiseOrValue, - _oldOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } ): Promise upgradeAccountImplementation( - _implementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _implementation: string, + overrides?: Overrides & { from?: string } ): Promise } populateTransaction: { - accounts( - accounts: PromiseOrValue, - overrides?: CallOverrides - ): Promise + accounts(accounts: string, overrides?: CallOverrides): Promise canUpgrade(overrides?: CallOverrides): Promise - getAccountOwner( - _account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getAccountOwner(_account: string, overrides?: CallOverrides): Promise - getAccountsOwnedBy( - _owner: PromiseOrValue, - overrides?: CallOverrides - ): Promise + getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise implementation(overrides?: CallOverrides): Promise - newAccount( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + newAccount(overrides?: Overrides & { from?: string }): Promise owner(overrides?: CallOverrides): Promise - removeUpgradability( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + removeUpgradability(overrides?: Overrides & { from?: string }): Promise transferOwnership( - newOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + newOwner: string, + overrides?: Overrides & { from?: string } ): Promise updateAccountOwnership( - _account: PromiseOrValue, - _newOwner: PromiseOrValue, - _oldOwner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } ): Promise upgradeAccountImplementation( - _implementation: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _implementation: string, + overrides?: Overrides & { from?: string } ): Promise } } diff --git a/packages/sdk/src/contracts/types/StakingRewards.ts b/packages/sdk/src/contracts/types/StakingRewards.ts index caa77ffe98..0176b20466 100644 --- a/packages/sdk/src/contracts/types/StakingRewards.ts +++ b/packages/sdk/src/contracts/types/StakingRewards.ts @@ -2,782 +2,952 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface StakingRewardsInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'earned(address)': FunctionFragment - 'exit()': FunctionFragment - 'getReward()': FunctionFragment - 'getRewardForDuration()': FunctionFragment - 'lastPauseTime()': FunctionFragment - 'lastTimeRewardApplicable()': FunctionFragment - 'lastUpdateTime()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'notifyRewardAmount(uint256)': FunctionFragment - 'owner()': FunctionFragment - 'paused()': FunctionFragment - 'periodFinish()': FunctionFragment - 'recoverERC20(address,uint256)': FunctionFragment - 'rewardPerToken()': FunctionFragment - 'rewardPerTokenStored()': FunctionFragment - 'rewardRate()': FunctionFragment - 'rewards(address)': FunctionFragment - 'rewardsDistribution()': FunctionFragment - 'rewardsDuration()': FunctionFragment - 'rewardsToken()': FunctionFragment - 'setPaused(bool)': FunctionFragment - 'setRewardsDistribution(address)': FunctionFragment - 'setRewardsDuration(uint256)': FunctionFragment - 'stake(uint256)': FunctionFragment - 'stakingToken()': FunctionFragment - 'totalSupply()': FunctionFragment - 'userRewardPerTokenPaid(address)': FunctionFragment - 'withdraw(uint256)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'balanceOf' - | 'earned' - | 'exit' - | 'getReward' - | 'getRewardForDuration' - | 'lastPauseTime' - | 'lastTimeRewardApplicable' - | 'lastUpdateTime' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'notifyRewardAmount' - | 'owner' - | 'paused' - | 'periodFinish' - | 'recoverERC20' - | 'rewardPerToken' - | 'rewardPerTokenStored' - | 'rewardRate' - | 'rewards' - | 'rewardsDistribution' - | 'rewardsDuration' - | 'rewardsToken' - | 'setPaused' - | 'setRewardsDistribution' - | 'setRewardsDuration' - | 'stake' - | 'stakingToken' - | 'totalSupply' - | 'userRewardPerTokenPaid' - | 'withdraw' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'earned', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'exit', values?: undefined): string - encodeFunctionData(functionFragment: 'getReward', values?: undefined): string - encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'lastPauseTime', values?: undefined): string - encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string - encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData( - functionFragment: 'notifyRewardAmount', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'paused', values?: undefined): string - encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string - encodeFunctionData( - functionFragment: 'recoverERC20', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string - encodeFunctionData(functionFragment: 'rewards', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rewardsDistribution', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardsToken', values?: undefined): string - encodeFunctionData(functionFragment: 'setPaused', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'setRewardsDistribution', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setRewardsDuration', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'stake', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'stakingToken', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'userRewardPerTokenPaid', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'withdraw', values: [PromiseOrValue]): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastPauseTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDistribution', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setPaused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDistribution', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakingToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdraw', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'PauseChanged(bool)': EventFragment - 'Recovered(address,uint256)': EventFragment - 'RewardAdded(uint256)': EventFragment - 'RewardPaid(address,uint256)': EventFragment - 'RewardsDurationUpdated(uint256)': EventFragment - 'Staked(address,uint256)': EventFragment - 'Withdrawn(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PauseChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Withdrawn'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "earned(address)": FunctionFragment; + "exit()": FunctionFragment; + "getReward()": FunctionFragment; + "getRewardForDuration()": FunctionFragment; + "lastPauseTime()": FunctionFragment; + "lastTimeRewardApplicable()": FunctionFragment; + "lastUpdateTime()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "notifyRewardAmount(uint256)": FunctionFragment; + "owner()": FunctionFragment; + "paused()": FunctionFragment; + "periodFinish()": FunctionFragment; + "recoverERC20(address,uint256)": FunctionFragment; + "rewardPerToken()": FunctionFragment; + "rewardPerTokenStored()": FunctionFragment; + "rewardRate()": FunctionFragment; + "rewards(address)": FunctionFragment; + "rewardsDistribution()": FunctionFragment; + "rewardsDuration()": FunctionFragment; + "rewardsToken()": FunctionFragment; + "setPaused(bool)": FunctionFragment; + "setRewardsDistribution(address)": FunctionFragment; + "setRewardsDuration(uint256)": FunctionFragment; + "stake(uint256)": FunctionFragment; + "stakingToken()": FunctionFragment; + "totalSupply()": FunctionFragment; + "userRewardPerTokenPaid(address)": FunctionFragment; + "withdraw(uint256)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "balanceOf" + | "earned" + | "exit" + | "getReward" + | "getRewardForDuration" + | "lastPauseTime" + | "lastTimeRewardApplicable" + | "lastUpdateTime" + | "nominateNewOwner" + | "nominatedOwner" + | "notifyRewardAmount" + | "owner" + | "paused" + | "periodFinish" + | "recoverERC20" + | "rewardPerToken" + | "rewardPerTokenStored" + | "rewardRate" + | "rewards" + | "rewardsDistribution" + | "rewardsDuration" + | "rewardsToken" + | "setPaused" + | "setRewardsDistribution" + | "setRewardsDuration" + | "stake" + | "stakingToken" + | "totalSupply" + | "userRewardPerTokenPaid" + | "withdraw" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "earned", values: [string]): string; + encodeFunctionData(functionFragment: "exit", values?: undefined): string; + encodeFunctionData(functionFragment: "getReward", values?: undefined): string; + encodeFunctionData( + functionFragment: "getRewardForDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastPauseTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastTimeRewardApplicable", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastUpdateTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "notifyRewardAmount", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData( + functionFragment: "periodFinish", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recoverERC20", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rewardPerToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerTokenStored", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardRate", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "rewards", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardsDistribution", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardsDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardsToken", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "setPaused", values: [boolean]): string; + encodeFunctionData( + functionFragment: "setRewardsDistribution", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setRewardsDuration", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "stakingToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "userRewardPerTokenPaid", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "withdraw", + values: [BigNumberish] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getRewardForDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastPauseTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastTimeRewardApplicable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastUpdateTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyRewardAmount", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "periodFinish", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recoverERC20", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerTokenStored", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardsDistribution", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardsToken", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setPaused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setRewardsDistribution", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setRewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "stakingToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "userRewardPerTokenPaid", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "PauseChanged(bool)": EventFragment; + "Recovered(address,uint256)": EventFragment; + "RewardAdded(uint256)": EventFragment; + "RewardPaid(address,uint256)": EventFragment; + "RewardsDurationUpdated(uint256)": EventFragment; + "Staked(address,uint256)": EventFragment; + "Withdrawn(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PauseChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PauseChangedEventObject { - isPaused: boolean + isPaused: boolean; } -export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject> +export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject>; -export type PauseChangedEventFilter = TypedEventFilter +export type PauseChangedEventFilter = TypedEventFilter; export interface RecoveredEventObject { - token: string - amount: BigNumber + token: string; + amount: BigNumber; } -export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> +export type RecoveredEvent = TypedEvent< + [string, BigNumber], + RecoveredEventObject +>; -export type RecoveredEventFilter = TypedEventFilter +export type RecoveredEventFilter = TypedEventFilter; export interface RewardAddedEventObject { - reward: BigNumber + reward: BigNumber; } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; -export type RewardAddedEventFilter = TypedEventFilter +export type RewardAddedEventFilter = TypedEventFilter; export interface RewardPaidEventObject { - user: string - reward: BigNumber + user: string; + reward: BigNumber; } -export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> +export type RewardPaidEvent = TypedEvent< + [string, BigNumber], + RewardPaidEventObject +>; -export type RewardPaidEventFilter = TypedEventFilter +export type RewardPaidEventFilter = TypedEventFilter; export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber + newDuration: BigNumber; } -export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> +export type RewardsDurationUpdatedEvent = TypedEvent< + [BigNumber], + RewardsDurationUpdatedEventObject +>; -export type RewardsDurationUpdatedEventFilter = TypedEventFilter +export type RewardsDurationUpdatedEventFilter = + TypedEventFilter; export interface StakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; -export type StakedEventFilter = TypedEventFilter +export type StakedEventFilter = TypedEventFilter; export interface WithdrawnEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type WithdrawnEvent = TypedEvent<[string, BigNumber], WithdrawnEventObject> +export type WithdrawnEvent = TypedEvent< + [string, BigNumber], + WithdrawnEventObject +>; -export type WithdrawnEventFilter = TypedEventFilter +export type WithdrawnEventFilter = TypedEventFilter; export interface StakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: StakingRewardsInterface + interface: StakingRewardsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]>; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - paused(overrides?: CallOverrides): Promise<[boolean]> + paused(overrides?: CallOverrides): Promise<[boolean]>; - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsDistribution(overrides?: CallOverrides): Promise<[string]> + rewardsDistribution(overrides?: CallOverrides): Promise<[string]>; - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsToken(overrides?: CallOverrides): Promise<[string]> + rewardsToken(overrides?: CallOverrides): Promise<[string]>; - setPaused( - _paused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise<[string]> + stakingToken(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - withdraw( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: PromiseOrValue }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused( - _paused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: CallOverrides): Promise + exit(overrides?: CallOverrides): Promise; - getReward(overrides?: CallOverrides): Promise + getReward(overrides?: CallOverrides): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: CallOverrides - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused(_paused: PromiseOrValue, overrides?: CallOverrides): Promise + setPaused(_paused: boolean, overrides?: CallOverrides): Promise; - setRewardsDistribution( - _rewardsDistribution: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: CallOverrides + ): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: CallOverrides + ): Promise; - stake(amount: PromiseOrValue, overrides?: CallOverrides): Promise + stake(amount: BigNumberish, overrides?: CallOverrides): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw(amount: PromiseOrValue, overrides?: CallOverrides): Promise - } + withdraw(amount: BigNumberish, overrides?: CallOverrides): Promise; + }; - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'PauseChanged(bool)'(isPaused?: null): PauseChangedEventFilter - PauseChanged(isPaused?: null): PauseChangedEventFilter + "PauseChanged(bool)"(isPaused?: null): PauseChangedEventFilter; + PauseChanged(isPaused?: null): PauseChangedEventFilter; - 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter - Recovered(token?: null, amount?: null): RecoveredEventFilter + "Recovered(address,uint256)"( + token?: null, + amount?: null + ): RecoveredEventFilter; + Recovered(token?: null, amount?: null): RecoveredEventFilter; - 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter - RewardAdded(reward?: null): RewardAddedEventFilter + "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; + RewardAdded(reward?: null): RewardAddedEventFilter; - 'RewardPaid(address,uint256)'( - user?: PromiseOrValue | null, - reward?: null - ): RewardPaidEventFilter - RewardPaid(user?: PromiseOrValue | null, reward?: null): RewardPaidEventFilter + "RewardPaid(address,uint256)"( + user?: string | null, + reward?: null + ): RewardPaidEventFilter; + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; - 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter - RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter + "RewardsDurationUpdated(uint256)"( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; + RewardsDurationUpdated( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; - 'Staked(address,uint256)'( - user?: PromiseOrValue | null, - amount?: null - ): StakedEventFilter - Staked(user?: PromiseOrValue | null, amount?: null): StakedEventFilter + "Staked(address,uint256)"( + user?: string | null, + amount?: null + ): StakedEventFilter; + Staked(user?: string | null, amount?: null): StakedEventFilter; - 'Withdrawn(address,uint256)'( - user?: PromiseOrValue | null, - amount?: null - ): WithdrawnEventFilter - Withdrawn(user?: PromiseOrValue | null, amount?: null): WithdrawnEventFilter - } + "Withdrawn(address,uint256)"( + user?: string | null, + amount?: null + ): WithdrawnEventFilter; + Withdrawn(user?: string | null, amount?: null): WithdrawnEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: PromiseOrValue, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: PromiseOrValue }): Promise + getReward(overrides?: Overrides & { from?: string }): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused( - _paused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - earned( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + earned( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: PromiseOrValue }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration( + overrides?: CallOverrides + ): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable( + overrides?: CallOverrides + ): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: PromiseOrValue, - tokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored( + overrides?: CallOverrides + ): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: PromiseOrValue, overrides?: CallOverrides): Promise + rewards( + arg0: string, + overrides?: CallOverrides + ): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution( + overrides?: CallOverrides + ): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused( - _paused: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SupplySchedule.ts b/packages/sdk/src/contracts/types/SupplySchedule.ts index b6d9dc264c..233849f6f6 100644 --- a/packages/sdk/src/contracts/types/SupplySchedule.ts +++ b/packages/sdk/src/contracts/types/SupplySchedule.ts @@ -15,7 +15,7 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SupplyScheduleInterface extends utils.Interface { functions: { @@ -114,40 +114,22 @@ export interface SupplyScheduleInterface extends utils.Interface { encodeFunctionData(functionFragment: 'mint', values?: undefined): string encodeFunctionData(functionFragment: 'mintableSupply', values?: undefined): string encodeFunctionData(functionFragment: 'minterReward', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'setKwenta', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'setMinterReward', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setStakingRewards', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTradingRewards', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTradingRewardsDiversion', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'setTreasuryDiversion', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'setKwenta', values: [string]): string + encodeFunctionData(functionFragment: 'setMinterReward', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setStakingRewards', values: [string]): string + encodeFunctionData(functionFragment: 'setTradingRewards', values: [string]): string + encodeFunctionData(functionFragment: 'setTradingRewardsDiversion', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [string]): string + encodeFunctionData(functionFragment: 'setTreasuryDiversion', values: [BigNumberish]): string encodeFunctionData(functionFragment: 'stakingRewards', values?: undefined): string encodeFunctionData( functionFragment: 'terminalInflationSupply', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'tokenDecaySupplyForWeek', - values: [PromiseOrValue] + values: [BigNumberish, BigNumberish] ): string + encodeFunctionData(functionFragment: 'tokenDecaySupplyForWeek', values: [BigNumberish]): string encodeFunctionData(functionFragment: 'tradingRewards', values?: undefined): string encodeFunctionData(functionFragment: 'tradingRewardsDiversion', values?: undefined): string encodeFunctionData(functionFragment: 'treasuryDAO', values?: undefined): string @@ -273,8 +255,9 @@ export type TradingRewardsDiversionUpdatedEvent = TypedEvent< TradingRewardsDiversionUpdatedEventObject > -export type TradingRewardsDiversionUpdatedEventFilter = - TypedEventFilter +export type TradingRewardsDiversionUpdatedEventFilter = TypedEventFilter< + TradingRewardsDiversionUpdatedEvent +> export interface TradingRewardsUpdatedEventObject { newAddress: string @@ -343,9 +326,7 @@ export interface SupplySchedule extends BaseContract { TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise<[BigNumber]> - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise inflationStartDate(overrides?: CallOverrides): Promise<[BigNumber]> @@ -355,15 +336,15 @@ export interface SupplySchedule extends BaseContract { lastMintEvent(overrides?: CallOverrides): Promise<[BigNumber]> - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise + mint(overrides?: Overrides & { from?: string }): Promise mintableSupply(overrides?: CallOverrides): Promise<[BigNumber]> minterReward(overrides?: CallOverrides): Promise<[BigNumber]> nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise<[string]> @@ -371,52 +352,49 @@ export interface SupplySchedule extends BaseContract { owner(overrides?: CallOverrides): Promise<[string]> setKwenta( - _kwenta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _kwenta: string, + overrides?: Overrides & { from?: string } ): Promise setMinterReward( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _stakingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewards( - _tradingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsDiversion( - _tradingRewardsDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDAO: string, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDiversion( - _treasuryDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise stakingRewards(overrides?: CallOverrides): Promise<[string]> terminalInflationSupply( - totalSupply: PromiseOrValue, - numOfWeeks: PromiseOrValue, + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]> - tokenDecaySupplyForWeek( - counter: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> tradingRewards(overrides?: CallOverrides): Promise<[string]> @@ -449,9 +427,7 @@ export interface SupplySchedule extends BaseContract { TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise inflationStartDate(overrides?: CallOverrides): Promise @@ -461,15 +437,15 @@ export interface SupplySchedule extends BaseContract { lastMintEvent(overrides?: CallOverrides): Promise - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise + mint(overrides?: Overrides & { from?: string }): Promise mintableSupply(overrides?: CallOverrides): Promise minterReward(overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -477,52 +453,49 @@ export interface SupplySchedule extends BaseContract { owner(overrides?: CallOverrides): Promise setKwenta( - _kwenta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _kwenta: string, + overrides?: Overrides & { from?: string } ): Promise setMinterReward( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _stakingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewards( - _tradingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsDiversion( - _tradingRewardsDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDAO: string, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDiversion( - _treasuryDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise stakingRewards(overrides?: CallOverrides): Promise terminalInflationSupply( - totalSupply: PromiseOrValue, - numOfWeeks: PromiseOrValue, + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, overrides?: CallOverrides ): Promise - tokenDecaySupplyForWeek( - counter: PromiseOrValue, - overrides?: CallOverrides - ): Promise + tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise tradingRewards(overrides?: CallOverrides): Promise @@ -571,50 +544,38 @@ export interface SupplySchedule extends BaseContract { minterReward(overrides?: CallOverrides): Promise - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise nominatedOwner(overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise - setKwenta(_kwenta: PromiseOrValue, overrides?: CallOverrides): Promise + setKwenta(_kwenta: string, overrides?: CallOverrides): Promise - setMinterReward(amount: PromiseOrValue, overrides?: CallOverrides): Promise + setMinterReward(amount: BigNumberish, overrides?: CallOverrides): Promise - setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setStakingRewards(_stakingRewards: string, overrides?: CallOverrides): Promise - setTradingRewards( - _tradingRewards: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setTradingRewards(_tradingRewards: string, overrides?: CallOverrides): Promise setTradingRewardsDiversion( - _tradingRewardsDiversion: PromiseOrValue, + _tradingRewardsDiversion: BigNumberish, overrides?: CallOverrides ): Promise - setTreasuryDAO(_treasuryDAO: PromiseOrValue, overrides?: CallOverrides): Promise + setTreasuryDAO(_treasuryDAO: string, overrides?: CallOverrides): Promise - setTreasuryDiversion( - _treasuryDiversion: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setTreasuryDiversion(_treasuryDiversion: BigNumberish, overrides?: CallOverrides): Promise stakingRewards(overrides?: CallOverrides): Promise terminalInflationSupply( - totalSupply: PromiseOrValue, - numOfWeeks: PromiseOrValue, + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, overrides?: CallOverrides ): Promise - tokenDecaySupplyForWeek( - counter: PromiseOrValue, - overrides?: CallOverrides - ): Promise + tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise tradingRewards(overrides?: CallOverrides): Promise @@ -690,7 +651,7 @@ export interface SupplySchedule extends BaseContract { TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise inflationStartDate(overrides?: CallOverrides): Promise @@ -700,68 +661,59 @@ export interface SupplySchedule extends BaseContract { lastMintEvent(overrides?: CallOverrides): Promise - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise + mint(overrides?: Overrides & { from?: string }): Promise mintableSupply(overrides?: CallOverrides): Promise minterReward(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise nominatedOwner(overrides?: CallOverrides): Promise owner(overrides?: CallOverrides): Promise - setKwenta( - _kwenta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setKwenta(_kwenta: string, overrides?: Overrides & { from?: string }): Promise setMinterReward( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _stakingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewards( - _tradingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsDiversion( - _tradingRewardsDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDAO: string, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDiversion( - _treasuryDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise stakingRewards(overrides?: CallOverrides): Promise terminalInflationSupply( - totalSupply: PromiseOrValue, - numOfWeeks: PromiseOrValue, + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, overrides?: CallOverrides ): Promise - tokenDecaySupplyForWeek( - counter: PromiseOrValue, - overrides?: CallOverrides - ): Promise + tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise tradingRewards(overrides?: CallOverrides): Promise @@ -795,9 +747,7 @@ export interface SupplySchedule extends BaseContract { TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise inflationStartDate(overrides?: CallOverrides): Promise @@ -807,15 +757,15 @@ export interface SupplySchedule extends BaseContract { lastMintEvent(overrides?: CallOverrides): Promise - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise + mint(overrides?: Overrides & { from?: string }): Promise mintableSupply(overrides?: CallOverrides): Promise minterReward(overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -823,50 +773,50 @@ export interface SupplySchedule extends BaseContract { owner(overrides?: CallOverrides): Promise setKwenta( - _kwenta: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _kwenta: string, + overrides?: Overrides & { from?: string } ): Promise setMinterReward( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + amount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setStakingRewards( - _stakingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _stakingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewards( - _tradingRewards: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewards: string, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsDiversion( - _tradingRewardsDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDAO( - _treasuryDAO: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDAO: string, + overrides?: Overrides & { from?: string } ): Promise setTreasuryDiversion( - _treasuryDiversion: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise stakingRewards(overrides?: CallOverrides): Promise terminalInflationSupply( - totalSupply: PromiseOrValue, - numOfWeeks: PromiseOrValue, + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, overrides?: CallOverrides ): Promise tokenDecaySupplyForWeek( - counter: PromiseOrValue, + counter: BigNumberish, overrides?: CallOverrides ): Promise diff --git a/packages/sdk/src/contracts/types/Synth.ts b/packages/sdk/src/contracts/types/Synth.ts index 979a8f24c9..6ee560645b 100644 --- a/packages/sdk/src/contracts/types/Synth.ts +++ b/packages/sdk/src/contracts/types/Synth.ts @@ -2,956 +2,1103 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'DECIMALS()': FunctionFragment - 'FEE_ADDRESS()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'allowance(address,address)': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'burn(address,uint256)': FunctionFragment - 'currencyKey()': FunctionFragment - 'decimals()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'issue(address,uint256)': FunctionFragment - 'messageSender()': FunctionFragment - 'name()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'proxy()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'setMessageSender(address)': FunctionFragment - 'setProxy(address)': FunctionFragment - 'setTokenState(address)': FunctionFragment - 'setTotalSupply(uint256)': FunctionFragment - 'symbol()': FunctionFragment - 'tokenState()': FunctionFragment - 'totalSupply()': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'transferAndSettle(address,uint256)': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'transferFromAndSettle(address,address,uint256)': FunctionFragment - 'transferableSynths(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'DECIMALS' - | 'FEE_ADDRESS' - | 'acceptOwnership' - | 'allowance' - | 'approve' - | 'balanceOf' - | 'burn' - | 'currencyKey' - | 'decimals' - | 'isResolverCached' - | 'issue' - | 'messageSender' - | 'name' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'proxy' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'setMessageSender' - | 'setProxy' - | 'setTokenState' - | 'setTotalSupply' - | 'symbol' - | 'tokenState' - | 'totalSupply' - | 'transfer' - | 'transferAndSettle' - | 'transferFrom' - | 'transferFromAndSettle' - | 'transferableSynths' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string - encodeFunctionData(functionFragment: 'FEE_ADDRESS', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'allowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'approve', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'burn', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'currencyKey', values?: undefined): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData( - functionFragment: 'issue', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'proxy', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'setMessageSender', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'setProxy', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'setTokenState', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'setTotalSupply', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'transfer', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferAndSettle', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferFromAndSettle', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferableSynths', - values: [PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'FEE_ADDRESS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burn', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currencyKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTotalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferAndSettle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFromAndSettle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferableSynths', data: BytesLike): Result - - events: { - 'Approval(address,address,uint256)': EventFragment - 'Burned(address,uint256)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'Issued(address,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ProxyUpdated(address)': EventFragment - 'TokenStateUpdated(address)': EventFragment - 'Transfer(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Burned'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Issued'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "DECIMALS()": FunctionFragment; + "FEE_ADDRESS()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "allowance(address,address)": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burn(address,uint256)": FunctionFragment; + "currencyKey()": FunctionFragment; + "decimals()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "issue(address,uint256)": FunctionFragment; + "messageSender()": FunctionFragment; + "name()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "proxy()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "setMessageSender(address)": FunctionFragment; + "setProxy(address)": FunctionFragment; + "setTokenState(address)": FunctionFragment; + "setTotalSupply(uint256)": FunctionFragment; + "symbol()": FunctionFragment; + "tokenState()": FunctionFragment; + "totalSupply()": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "transferAndSettle(address,uint256)": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "transferFromAndSettle(address,address,uint256)": FunctionFragment; + "transferableSynths(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "DECIMALS" + | "FEE_ADDRESS" + | "acceptOwnership" + | "allowance" + | "approve" + | "balanceOf" + | "burn" + | "currencyKey" + | "decimals" + | "isResolverCached" + | "issue" + | "messageSender" + | "name" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "proxy" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "setMessageSender" + | "setProxy" + | "setTokenState" + | "setTotalSupply" + | "symbol" + | "tokenState" + | "totalSupply" + | "transfer" + | "transferAndSettle" + | "transferFrom" + | "transferFromAndSettle" + | "transferableSynths" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; + encodeFunctionData( + functionFragment: "FEE_ADDRESS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "burn", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currencyKey", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issue", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "messageSender", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "proxy", values?: undefined): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setMessageSender", + values: [string] + ): string; + encodeFunctionData(functionFragment: "setProxy", values: [string]): string; + encodeFunctionData( + functionFragment: "setTokenState", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTotalSupply", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "tokenState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferAndSettle", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFromAndSettle", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferableSynths", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "FEE_ADDRESS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "currencyKey", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "issue", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "messageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMessageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setTokenState", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTotalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferAndSettle", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFromAndSettle", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferableSynths", + data: BytesLike + ): Result; + + events: { + "Approval(address,address,uint256)": EventFragment; + "Burned(address,uint256)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "Issued(address,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ProxyUpdated(address)": EventFragment; + "TokenStateUpdated(address)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Burned"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Issued"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; } export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface BurnedEventObject { - account: string - value: BigNumber + account: string; + value: BigNumber; } -export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject> +export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject>; -export type BurnedEventFilter = TypedEventFilter +export type BurnedEventFilter = TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface IssuedEventObject { - account: string - value: BigNumber + account: string; + value: BigNumber; } -export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject> +export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject>; -export type IssuedEventFilter = TypedEventFilter +export type IssuedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ProxyUpdatedEventObject { - proxyAddress: string + proxyAddress: string; } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; -export type ProxyUpdatedEventFilter = TypedEventFilter +export type ProxyUpdatedEventFilter = TypedEventFilter; export interface TokenStateUpdatedEventObject { - newTokenState: string + newTokenState: string; } -export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> +export type TokenStateUpdatedEvent = TypedEvent< + [string], + TokenStateUpdatedEventObject +>; -export type TokenStateUpdatedEventFilter = TypedEventFilter +export type TokenStateUpdatedEventFilter = + TypedEventFilter; export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface Synth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - DECIMALS(overrides?: CallOverrides): Promise<[number]> - - FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - burn( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currencyKey(overrides?: CallOverrides): Promise<[string]> - - decimals(overrides?: CallOverrides): Promise<[number]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - issue( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - messageSender(overrides?: CallOverrides): Promise<[string]> - - name(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - proxy(overrides?: CallOverrides): Promise<[string]> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + interface: SynthInterface; - setTotalSupply( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - symbol(overrides?: CallOverrides): Promise<[string]> + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - tokenState(overrides?: CallOverrides): Promise<[string]> + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + DECIMALS(overrides?: CallOverrides): Promise<[number]>; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]>; - transferAndSettle( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - transferFromAndSettle( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - } + currencyKey(overrides?: CallOverrides): Promise<[string]>; - CONTRACT_NAME(overrides?: CallOverrides): Promise + decimals(overrides?: CallOverrides): Promise<[number]>; - DECIMALS(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - FEE_ADDRESS(overrides?: CallOverrides): Promise + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + messageSender(overrides?: CallOverrides): Promise<[string]>; - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + name(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise<[string]>; - burn( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + proxy(overrides?: CallOverrides): Promise<[string]>; - currencyKey(overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - decimals(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise<[string]>; - isResolverCached(overrides?: CallOverrides): Promise + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; - issue( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - messageSender(overrides?: CallOverrides): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - name(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise<[string]>; - owner(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise<[string]>; - proxy(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolver(overrides?: CallOverrides): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + CONTRACT_NAME(overrides?: CallOverrides): Promise; - setTotalSupply( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + DECIMALS(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - tokenState(overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - totalSupply(overrides?: CallOverrides): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferAndSettle( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferFromAndSettle( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + currencyKey(overrides?: CallOverrides): Promise; - transferableSynths(account: PromiseOrValue, overrides?: CallOverrides): Promise + decimals(overrides?: CallOverrides): Promise; - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - DECIMALS(overrides?: CallOverrides): Promise + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + messageSender(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: CallOverrides): Promise + name(overrides?: CallOverrides): Promise; - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - burn( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + proxy(overrides?: CallOverrides): Promise; - currencyKey(overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - decimals(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - issue( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - messageSender(overrides?: CallOverrides): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - name(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise; - proxy(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - rebuildCache(overrides?: CallOverrides): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolver(overrides?: CallOverrides): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setMessageSender(sender: PromiseOrValue, overrides?: CallOverrides): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setProxy(_proxy: PromiseOrValue, overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; - setTokenState(_tokenState: PromiseOrValue, overrides?: CallOverrides): Promise + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; - setTotalSupply(amount: PromiseOrValue, overrides?: CallOverrides): Promise + DECIMALS(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - tokenState(overrides?: CallOverrides): Promise + acceptOwnership(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - transferAndSettle( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - transferFromAndSettle( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise + currencyKey(overrides?: CallOverrides): Promise; - transferableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + decimals(overrides?: CallOverrides): Promise; - filters: { - 'Approval(address,address,uint256)'( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - Approval( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter + isResolverCached(overrides?: CallOverrides): Promise; - 'Burned(address,uint256)'( - account?: PromiseOrValue | null, - value?: null - ): BurnedEventFilter - Burned(account?: PromiseOrValue | null, value?: null): BurnedEventFilter + issue( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + messageSender(overrides?: CallOverrides): Promise; - 'Issued(address,uint256)'( - account?: PromiseOrValue | null, - value?: null - ): IssuedEventFilter - Issued(account?: PromiseOrValue | null, value?: null): IssuedEventFilter + name(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + proxy(overrides?: CallOverrides): Promise; - 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter + rebuildCache(overrides?: CallOverrides): Promise; - 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter + resolver(overrides?: CallOverrides): Promise; - 'Transfer(address,address,uint256)'( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - Transfer( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - } + resolverAddressesRequired(overrides?: CallOverrides): Promise; - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + setMessageSender(sender: string, overrides?: CallOverrides): Promise; - DECIMALS(overrides?: CallOverrides): Promise + setProxy(_proxy: string, overrides?: CallOverrides): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: CallOverrides + ): Promise; + + setTotalSupply( + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenState(overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - burn( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - currencyKey(overrides?: CallOverrides): Promise - - decimals(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - issue( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - messageSender(overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise + "Burned(address,uint256)"( + account?: string | null, + value?: null + ): BurnedEventFilter; + Burned(account?: string | null, value?: null): BurnedEventFilter; - proxy(overrides?: CallOverrides): Promise + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + "Issued(address,uint256)"( + account?: string | null, + value?: null + ): IssuedEventFilter; + Issued(account?: string | null, value?: null): IssuedEventFilter; - resolver(overrides?: CallOverrides): Promise + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - resolverAddressesRequired(overrides?: CallOverrides): Promise + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; + + "TokenStateUpdated(address)"( + newTokenState?: null + ): TokenStateUpdatedEventFilter; + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + FEE_ADDRESS(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + currencyKey(overrides?: CallOverrides): Promise; + + decimals(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + resolver(overrides?: CallOverrides): Promise; - setTotalSupply( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - tokenState(overrides?: CallOverrides): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - totalSupply(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferAndSettle( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + symbol(overrides?: CallOverrides): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + tokenState(overrides?: CallOverrides): Promise; - transferFromAndSettle( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - transferableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - DECIMALS(overrides?: CallOverrides): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + DECIMALS(overrides?: CallOverrides): Promise; - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - burn( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - currencyKey(overrides?: CallOverrides): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - decimals(overrides?: CallOverrides): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - issue( - account: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - messageSender(overrides?: CallOverrides): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise + currencyKey(overrides?: CallOverrides): Promise; - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + decimals(overrides?: CallOverrides): Promise; - setTotalSupply( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + isResolverCached(overrides?: CallOverrides): Promise; + + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - symbol(overrides?: CallOverrides): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - tokenState(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - transferAndSettle( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferFromAndSettle( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthRedeemer.ts b/packages/sdk/src/contracts/types/SynthRedeemer.ts index b77f5ae273..ab7d1f6e1f 100644 --- a/packages/sdk/src/contracts/types/SynthRedeemer.ts +++ b/packages/sdk/src/contracts/types/SynthRedeemer.ts @@ -2,414 +2,475 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthRedeemerInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'balanceOf(address,address)': FunctionFragment - 'deprecate(address,uint256)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'redeem(address)': FunctionFragment - 'redeemAll(address[])': FunctionFragment - 'redeemPartial(address,uint256)': FunctionFragment - 'redemptions(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'totalSupply(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'balanceOf' - | 'deprecate' - | 'isResolverCached' - | 'rebuildCache' - | 'redeem' - | 'redeemAll' - | 'redeemPartial' - | 'redemptions' - | 'resolver' - | 'resolverAddressesRequired' - | 'totalSupply' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData( - functionFragment: 'balanceOf', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'deprecate', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'redeem', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'redeemAll', values: [PromiseOrValue[]]): string - encodeFunctionData( - functionFragment: 'redeemPartial', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'redemptions', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values: [PromiseOrValue]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'deprecate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeemAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeemPartial', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redemptions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'SynthDeprecated(address,uint256,uint256,uint256)': EventFragment - 'SynthRedeemed(address,address,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthDeprecated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthRedeemed'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "balanceOf(address,address)": FunctionFragment; + "deprecate(address,uint256)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "redeem(address)": FunctionFragment; + "redeemAll(address[])": FunctionFragment; + "redeemPartial(address,uint256)": FunctionFragment; + "redemptions(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "totalSupply(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "balanceOf" + | "deprecate" + | "isResolverCached" + | "rebuildCache" + | "redeem" + | "redeemAll" + | "redeemPartial" + | "redemptions" + | "resolver" + | "resolverAddressesRequired" + | "totalSupply" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "balanceOf", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "deprecate", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "redeem", values: [string]): string; + encodeFunctionData(functionFragment: "redeemAll", values: [string[]]): string; + encodeFunctionData( + functionFragment: "redeemPartial", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "redemptions", values: [string]): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "totalSupply", values: [string]): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deprecate", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "redeemAll", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "redeemPartial", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "redemptions", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "SynthDeprecated(address,uint256,uint256,uint256)": EventFragment; + "SynthRedeemed(address,address,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthDeprecated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthRedeemed"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface SynthDeprecatedEventObject { - synth: string - rateToRedeem: BigNumber - totalSynthSupply: BigNumber - supplyInsUSD: BigNumber + synth: string; + rateToRedeem: BigNumber; + totalSynthSupply: BigNumber; + supplyInsUSD: BigNumber; } export type SynthDeprecatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - SynthDeprecatedEventObject -> + [string, BigNumber, BigNumber, BigNumber], + SynthDeprecatedEventObject +>; -export type SynthDeprecatedEventFilter = TypedEventFilter +export type SynthDeprecatedEventFilter = TypedEventFilter; export interface SynthRedeemedEventObject { - synth: string - account: string - amountOfSynth: BigNumber - amountInsUSD: BigNumber + synth: string; + account: string; + amountOfSynth: BigNumber; + amountInsUSD: BigNumber; } export type SynthRedeemedEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - SynthRedeemedEventObject -> + [string, string, BigNumber, BigNumber], + SynthRedeemedEventObject +>; -export type SynthRedeemedEventFilter = TypedEventFilter +export type SynthRedeemedEventFilter = TypedEventFilter; export interface SynthRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthRedeemerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - balanceOf( - synthProxy: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }> - - deprecate( - synthProxy: PromiseOrValue, - rateToRedeem: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeem( - synthProxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemAll( - synthProxies: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemPartial( - synthProxy: PromiseOrValue, - amountOfSynth: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redemptions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - totalSupply( - synthProxy: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf( - synthProxy: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - deprecate( - synthProxy: PromiseOrValue, - rateToRedeem: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeem( - synthProxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemAll( - synthProxies: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemPartial( - synthProxy: PromiseOrValue, - amountOfSynth: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redemptions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: PromiseOrValue, overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf( - synthProxy: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - deprecate( - synthProxy: PromiseOrValue, - rateToRedeem: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - redeem(synthProxy: PromiseOrValue, overrides?: CallOverrides): Promise - - redeemAll(synthProxies: PromiseOrValue[], overrides?: CallOverrides): Promise - - redeemPartial( - synthProxy: PromiseOrValue, - amountOfSynth: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - redemptions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: PromiseOrValue, overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'SynthDeprecated(address,uint256,uint256,uint256)'( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter - SynthDeprecated( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter - - 'SynthRedeemed(address,address,uint256,uint256)'( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter - SynthRedeemed( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf( - synthProxy: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - deprecate( - synthProxy: PromiseOrValue, - rateToRedeem: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - redeem( - synthProxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemAll( - synthProxies: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemPartial( - synthProxy: PromiseOrValue, - amountOfSynth: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redemptions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: PromiseOrValue, overrides?: CallOverrides): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf( - synthProxy: PromiseOrValue, - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - deprecate( - synthProxy: PromiseOrValue, - rateToRedeem: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeem( - synthProxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemAll( - synthProxies: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redeemPartial( - synthProxy: PromiseOrValue, - amountOfSynth: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - redemptions( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply( - synthProxy: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthRedeemerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }>; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + redeem(synthProxy: string, overrides?: CallOverrides): Promise; + + redeemAll(synthProxies: string[], overrides?: CallOverrides): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: CallOverrides + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "SynthDeprecated(address,uint256,uint256,uint256)"( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter; + SynthDeprecated( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter; + + "SynthRedeemed(address,address,uint256,uint256)"( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter; + SynthRedeemed( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions( + arg0: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthSwap.ts b/packages/sdk/src/contracts/types/SynthSwap.ts index 00740dfd9c..9ee3a22fdb 100644 --- a/packages/sdk/src/contracts/types/SynthSwap.ts +++ b/packages/sdk/src/contracts/types/SynthSwap.ts @@ -2,438 +2,491 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthSwapInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rescueFunds(address,uint256)': FunctionFragment - 'swapInto(bytes32,bytes)': FunctionFragment - 'swapOutOf(bytes32,uint256,bytes)': FunctionFragment - 'uniswapSwapInto(bytes32,address,uint256,bytes)': FunctionFragment - 'uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rescueFunds' - | 'swapInto' - | 'swapOutOf' - | 'uniswapSwapInto' - | 'uniswapSwapOutOf' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'rescueFunds', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'swapInto', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'swapOutOf', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'uniswapSwapInto', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'uniswapSwapOutOf', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rescueFunds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'swapInto', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'swapOutOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapSwapInto', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapSwapOutOf', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'Received(address,uint256)': EventFragment - 'SwapInto(address,uint256)': EventFragment - 'SwapOutOf(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Received'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SwapInto'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SwapOutOf'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rescueFunds(address,uint256)": FunctionFragment; + "swapInto(bytes32,bytes)": FunctionFragment; + "swapOutOf(bytes32,uint256,bytes)": FunctionFragment; + "uniswapSwapInto(bytes32,address,uint256,bytes)": FunctionFragment; + "uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rescueFunds" + | "swapInto" + | "swapOutOf" + | "uniswapSwapInto" + | "uniswapSwapOutOf" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rescueFunds", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "swapInto", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "swapOutOf", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "uniswapSwapInto", + values: [BytesLike, string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "uniswapSwapOutOf", + values: [BytesLike, string, BigNumberish, BigNumberish, BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rescueFunds", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "swapInto", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "swapOutOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "uniswapSwapInto", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "uniswapSwapOutOf", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Received(address,uint256)": EventFragment; + "SwapInto(address,uint256)": EventFragment; + "SwapOutOf(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Received"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SwapInto"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SwapOutOf"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ReceivedEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type ReceivedEvent = TypedEvent<[string, BigNumber], ReceivedEventObject> +export type ReceivedEvent = TypedEvent< + [string, BigNumber], + ReceivedEventObject +>; -export type ReceivedEventFilter = TypedEventFilter +export type ReceivedEventFilter = TypedEventFilter; export interface SwapIntoEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type SwapIntoEvent = TypedEvent<[string, BigNumber], SwapIntoEventObject> +export type SwapIntoEvent = TypedEvent< + [string, BigNumber], + SwapIntoEventObject +>; -export type SwapIntoEventFilter = TypedEventFilter +export type SwapIntoEventFilter = TypedEventFilter; export interface SwapOutOfEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type SwapOutOfEvent = TypedEvent<[string, BigNumber], SwapOutOfEventObject> +export type SwapOutOfEvent = TypedEvent< + [string, BigNumber], + SwapOutOfEventObject +>; -export type SwapOutOfEventFilter = TypedEventFilter +export type SwapOutOfEventFilter = TypedEventFilter; export interface SynthSwap extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthSwapInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rescueFunds( - token: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - swapInto( - _destSynthCurrencyKey: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _sourceAmount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: PromiseOrValue, - _sourceTokenAddress: PromiseOrValue, - _amount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _destTokenAddress: PromiseOrValue, - _amountOfSynth: PromiseOrValue, - _expectedAmountOfSUSDFromSwap: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - swapInto( - _destSynthCurrencyKey: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _sourceAmount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: PromiseOrValue, - _sourceTokenAddress: PromiseOrValue, - _amount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _destTokenAddress: PromiseOrValue, - _amountOfSynth: PromiseOrValue, - _expectedAmountOfSUSDFromSwap: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - swapInto( - _destSynthCurrencyKey: PromiseOrValue, - _data: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _sourceAmount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: PromiseOrValue, - _sourceTokenAddress: PromiseOrValue, - _amount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _destTokenAddress: PromiseOrValue, - _amountOfSynth: PromiseOrValue, - _expectedAmountOfSUSDFromSwap: PromiseOrValue, - _data: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'Received(address,uint256)'(from?: null, amountReceived?: null): ReceivedEventFilter - Received(from?: null, amountReceived?: null): ReceivedEventFilter - - 'SwapInto(address,uint256)'( - from?: PromiseOrValue | null, - amountReceived?: null - ): SwapIntoEventFilter - SwapInto(from?: PromiseOrValue | null, amountReceived?: null): SwapIntoEventFilter - - 'SwapOutOf(address,uint256)'( - from?: PromiseOrValue | null, - amountReceived?: null - ): SwapOutOfEventFilter - SwapOutOf(from?: PromiseOrValue | null, amountReceived?: null): SwapOutOfEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - swapInto( - _destSynthCurrencyKey: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _sourceAmount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: PromiseOrValue, - _sourceTokenAddress: PromiseOrValue, - _amount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _destTokenAddress: PromiseOrValue, - _amountOfSynth: PromiseOrValue, - _expectedAmountOfSUSDFromSwap: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - swapInto( - _destSynthCurrencyKey: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _sourceAmount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: PromiseOrValue, - _sourceTokenAddress: PromiseOrValue, - _amount: PromiseOrValue, - _data: PromiseOrValue, - overrides?: PayableOverrides & { from?: PromiseOrValue } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: PromiseOrValue, - _destTokenAddress: PromiseOrValue, - _amountOfSynth: PromiseOrValue, - _expectedAmountOfSUSDFromSwap: PromiseOrValue, - _data: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthSwapInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "Received(address,uint256)"( + from?: null, + amountReceived?: null + ): ReceivedEventFilter; + Received(from?: null, amountReceived?: null): ReceivedEventFilter; + + "SwapInto(address,uint256)"( + from?: string | null, + amountReceived?: null + ): SwapIntoEventFilter; + SwapInto(from?: string | null, amountReceived?: null): SwapIntoEventFilter; + + "SwapOutOf(address,uint256)"( + from?: string | null, + amountReceived?: null + ): SwapOutOfEventFilter; + SwapOutOf( + from?: string | null, + amountReceived?: null + ): SwapOutOfEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthUtil.ts b/packages/sdk/src/contracts/types/SynthUtil.ts index dba21472ea..d6d203a2d6 100644 --- a/packages/sdk/src/contracts/types/SynthUtil.ts +++ b/packages/sdk/src/contracts/types/SynthUtil.ts @@ -2,167 +2,214 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthUtilInterface extends utils.Interface { - functions: { - 'addressResolverProxy()': FunctionFragment - 'synthsBalances(address)': FunctionFragment - 'synthsRates()': FunctionFragment - 'synthsTotalSupplies()': FunctionFragment - 'totalSynthsInKey(address,bytes32)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'addressResolverProxy' - | 'synthsBalances' - | 'synthsRates' - | 'synthsTotalSupplies' - | 'totalSynthsInKey' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'addressResolverProxy', values?: undefined): string - encodeFunctionData(functionFragment: 'synthsBalances', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'synthsRates', values?: undefined): string - encodeFunctionData(functionFragment: 'synthsTotalSupplies', values?: undefined): string - encodeFunctionData( - functionFragment: 'totalSynthsInKey', - values: [PromiseOrValue, PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'addressResolverProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsBalances', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsTotalSupplies', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSynthsInKey', data: BytesLike): Result - - events: {} + functions: { + "addressResolverProxy()": FunctionFragment; + "synthsBalances(address)": FunctionFragment; + "synthsRates()": FunctionFragment; + "synthsTotalSupplies()": FunctionFragment; + "totalSynthsInKey(address,bytes32)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "addressResolverProxy" + | "synthsBalances" + | "synthsRates" + | "synthsTotalSupplies" + | "totalSynthsInKey" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addressResolverProxy", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthsBalances", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "synthsRates", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthsTotalSupplies", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSynthsInKey", + values: [string, BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "addressResolverProxy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsBalances", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsTotalSupplies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSynthsInKey", + data: BytesLike + ): Result; + + events: {}; } export interface SynthUtil extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthUtilInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - addressResolverProxy(overrides?: CallOverrides): Promise<[string]> - - synthsBalances( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { total: BigNumber }> - } - - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - callStatic: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - filters: {} - - estimateGas: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances(account: PromiseOrValue, overrides?: CallOverrides): Promise - - synthsRates(overrides?: CallOverrides): Promise - - synthsTotalSupplies(overrides?: CallOverrides): Promise - - totalSynthsInKey( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthsRates(overrides?: CallOverrides): Promise - - synthsTotalSupplies(overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthUtilInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + addressResolverProxy(overrides?: CallOverrides): Promise<[string]>; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { total: BigNumber }>; + }; + + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + callStatic: { + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise; + + synthsRates(overrides?: CallOverrides): Promise; + + synthsTotalSupplies(overrides?: CallOverrides): Promise; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + addressResolverProxy( + overrides?: CallOverrides + ): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise; + + synthsRates(overrides?: CallOverrides): Promise; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise; - totalSynthsInKey( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Synthetix.ts b/packages/sdk/src/contracts/types/Synthetix.ts index 20b7d4bb27..72faf56063 100644 --- a/packages/sdk/src/contracts/types/Synthetix.ts +++ b/packages/sdk/src/contracts/types/Synthetix.ts @@ -2,2522 +2,2774 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthetixInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'DECIMALS()': FunctionFragment - 'TOKEN_NAME()': FunctionFragment - 'TOKEN_SYMBOL()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'allowance(address,address)': FunctionFragment - 'anySynthOrSNXRateIsInvalid()': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'availableCurrencyKeys()': FunctionFragment - 'availableSynthCount()': FunctionFragment - 'availableSynths(uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'burnSecondary(address,uint256)': FunctionFragment - 'burnSynths(uint256)': FunctionFragment - 'burnSynthsOnBehalf(address,uint256)': FunctionFragment - 'burnSynthsToTarget()': FunctionFragment - 'burnSynthsToTargetOnBehalf(address)': FunctionFragment - 'collateral(address)': FunctionFragment - 'collateralisationRatio(address)': FunctionFragment - 'debtBalanceOf(address,bytes32)': FunctionFragment - 'decimals()': FunctionFragment - 'emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment - 'emitExchangeRebate(address,bytes32,uint256)': FunctionFragment - 'emitExchangeReclaim(address,bytes32,uint256)': FunctionFragment - 'emitExchangeTracking(bytes32,bytes32,uint256,uint256)': FunctionFragment - 'emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment - 'exchange(bytes32,uint256,bytes32)': FunctionFragment - 'exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)': FunctionFragment - 'exchangeOnBehalf(address,bytes32,uint256,bytes32)': FunctionFragment - 'exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)': FunctionFragment - 'getFirstNonZeroEscrowIndex(address)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'isWaitingPeriod(bytes32)': FunctionFragment - 'issueMaxSynths()': FunctionFragment - 'issueMaxSynthsOnBehalf(address)': FunctionFragment - 'issueSynths(uint256)': FunctionFragment - 'issueSynthsOnBehalf(address,uint256)': FunctionFragment - 'liquidateDelinquentAccount(address)': FunctionFragment - 'liquidateDelinquentAccountEscrowIndex(address,uint256)': FunctionFragment - 'liquidateSelf()': FunctionFragment - 'maxIssuableSynths(address)': FunctionFragment - 'messageSender()': FunctionFragment - 'migrateEscrowBalanceToRewardEscrowV2()': FunctionFragment - 'migrateEscrowContractBalance()': FunctionFragment - 'mint()': FunctionFragment - 'mintSecondary(address,uint256)': FunctionFragment - 'mintSecondaryRewards(uint256)': FunctionFragment - 'name()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'proxy()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'remainingIssuableSynths(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'sUSD()': FunctionFragment - 'setMessageSender(address)': FunctionFragment - 'setProxy(address)': FunctionFragment - 'setTokenState(address)': FunctionFragment - 'settle(bytes32)': FunctionFragment - 'symbol()': FunctionFragment - 'synths(bytes32)': FunctionFragment - 'synthsByAddress(address)': FunctionFragment - 'tokenState()': FunctionFragment - 'totalIssuedSynths(bytes32)': FunctionFragment - 'totalIssuedSynthsExcludeOtherCollateral(bytes32)': FunctionFragment - 'totalSupply()': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'transferableSynthetix(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'DECIMALS' - | 'TOKEN_NAME' - | 'TOKEN_SYMBOL' - | 'acceptOwnership' - | 'allowance' - | 'anySynthOrSNXRateIsInvalid' - | 'approve' - | 'availableCurrencyKeys' - | 'availableSynthCount' - | 'availableSynths' - | 'balanceOf' - | 'burnSecondary' - | 'burnSynths' - | 'burnSynthsOnBehalf' - | 'burnSynthsToTarget' - | 'burnSynthsToTargetOnBehalf' - | 'collateral' - | 'collateralisationRatio' - | 'debtBalanceOf' - | 'decimals' - | 'emitAtomicSynthExchange' - | 'emitExchangeRebate' - | 'emitExchangeReclaim' - | 'emitExchangeTracking' - | 'emitSynthExchange' - | 'exchange' - | 'exchangeAtomically' - | 'exchangeOnBehalf' - | 'exchangeOnBehalfWithTracking' - | 'exchangeWithTracking' - | 'exchangeWithTrackingForInitiator' - | 'exchangeWithVirtual' - | 'getFirstNonZeroEscrowIndex' - | 'isResolverCached' - | 'isWaitingPeriod' - | 'issueMaxSynths' - | 'issueMaxSynthsOnBehalf' - | 'issueSynths' - | 'issueSynthsOnBehalf' - | 'liquidateDelinquentAccount' - | 'liquidateDelinquentAccountEscrowIndex' - | 'liquidateSelf' - | 'maxIssuableSynths' - | 'messageSender' - | 'migrateEscrowBalanceToRewardEscrowV2' - | 'migrateEscrowContractBalance' - | 'mint' - | 'mintSecondary' - | 'mintSecondaryRewards' - | 'name' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'proxy' - | 'rebuildCache' - | 'remainingIssuableSynths' - | 'resolver' - | 'resolverAddressesRequired' - | 'sUSD' - | 'setMessageSender' - | 'setProxy' - | 'setTokenState' - | 'settle' - | 'symbol' - | 'synths' - | 'synthsByAddress' - | 'tokenState' - | 'totalIssuedSynths' - | 'totalIssuedSynthsExcludeOtherCollateral' - | 'totalSupply' - | 'transfer' - | 'transferFrom' - | 'transferableSynthetix' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string - encodeFunctionData(functionFragment: 'TOKEN_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'TOKEN_SYMBOL', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'allowance', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'anySynthOrSNXRateIsInvalid', values?: undefined): string - encodeFunctionData( - functionFragment: 'approve', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'availableCurrencyKeys', values?: undefined): string - encodeFunctionData(functionFragment: 'availableSynthCount', values?: undefined): string - encodeFunctionData( - functionFragment: 'availableSynths', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'balanceOf', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'burnSecondary', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'burnSynths', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'burnSynthsOnBehalf', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'burnSynthsToTarget', values?: undefined): string - encodeFunctionData( - functionFragment: 'burnSynthsToTargetOnBehalf', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'collateral', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'collateralisationRatio', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'debtBalanceOf', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData( - functionFragment: 'emitAtomicSynthExchange', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeRebate', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeReclaim', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeTracking', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'emitSynthExchange', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchange', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'exchangeAtomically', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeOnBehalf', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeOnBehalfWithTracking', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithTracking', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithTrackingForInitiator', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithVirtual', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'getFirstNonZeroEscrowIndex', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData( - functionFragment: 'isWaitingPeriod', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'issueMaxSynths', values?: undefined): string - encodeFunctionData( - functionFragment: 'issueMaxSynthsOnBehalf', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'issueSynths', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'issueSynthsOnBehalf', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'liquidateDelinquentAccount', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'liquidateDelinquentAccountEscrowIndex', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'liquidateSelf', values?: undefined): string - encodeFunctionData( - functionFragment: 'maxIssuableSynths', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string - encodeFunctionData( - functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', - values?: undefined - ): string - encodeFunctionData(functionFragment: 'migrateEscrowContractBalance', values?: undefined): string - encodeFunctionData(functionFragment: 'mint', values?: undefined): string - encodeFunctionData( - functionFragment: 'mintSecondary', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'mintSecondaryRewards', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'proxy', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData( - functionFragment: 'remainingIssuableSynths', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'sUSD', values?: undefined): string - encodeFunctionData(functionFragment: 'setMessageSender', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'setProxy', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'setTokenState', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'settle', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'synths', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'synthsByAddress', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string - encodeFunctionData( - functionFragment: 'totalIssuedSynths', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'transfer', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [PromiseOrValue, PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'transferableSynthetix', - values: [PromiseOrValue] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'TOKEN_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'TOKEN_SYMBOL', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anySynthOrSNXRateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableCurrencyKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableSynthCount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSecondary', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsToTarget', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsToTargetOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'collateral', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'collateralisationRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'debtBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitAtomicSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeRebate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeReclaim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeOnBehalfWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeWithTracking', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'exchangeWithTrackingForInitiator', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'exchangeWithVirtual', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFirstNonZeroEscrowIndex', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isWaitingPeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueMaxSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueMaxSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidateDelinquentAccount', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'liquidateDelinquentAccountEscrowIndex', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'liquidateSelf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxIssuableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'migrateEscrowContractBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mintSecondary', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mintSecondaryRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingIssuableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'sUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsByAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalIssuedSynths', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferableSynthetix', data: BytesLike): Result - - events: { - 'AccountLiquidated(address,uint256,uint256,address)': EventFragment - 'Approval(address,address,uint256)': EventFragment - 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'ExchangeRebate(address,bytes32,uint256)': EventFragment - 'ExchangeReclaim(address,bytes32,uint256)': EventFragment - 'ExchangeTracking(bytes32,bytes32,uint256,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ProxyUpdated(address)': EventFragment - 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment - 'TokenStateUpdated(address)': EventFragment - 'Transfer(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccountLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicSynthExchange'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeRebate'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeReclaim'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchange'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "DECIMALS()": FunctionFragment; + "TOKEN_NAME()": FunctionFragment; + "TOKEN_SYMBOL()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "allowance(address,address)": FunctionFragment; + "anySynthOrSNXRateIsInvalid()": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "availableCurrencyKeys()": FunctionFragment; + "availableSynthCount()": FunctionFragment; + "availableSynths(uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burnSecondary(address,uint256)": FunctionFragment; + "burnSynths(uint256)": FunctionFragment; + "burnSynthsOnBehalf(address,uint256)": FunctionFragment; + "burnSynthsToTarget()": FunctionFragment; + "burnSynthsToTargetOnBehalf(address)": FunctionFragment; + "collateral(address)": FunctionFragment; + "collateralisationRatio(address)": FunctionFragment; + "debtBalanceOf(address,bytes32)": FunctionFragment; + "decimals()": FunctionFragment; + "emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; + "emitExchangeRebate(address,bytes32,uint256)": FunctionFragment; + "emitExchangeReclaim(address,bytes32,uint256)": FunctionFragment; + "emitExchangeTracking(bytes32,bytes32,uint256,uint256)": FunctionFragment; + "emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; + "exchange(bytes32,uint256,bytes32)": FunctionFragment; + "exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)": FunctionFragment; + "exchangeOnBehalf(address,bytes32,uint256,bytes32)": FunctionFragment; + "exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)": FunctionFragment; + "getFirstNonZeroEscrowIndex(address)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "isWaitingPeriod(bytes32)": FunctionFragment; + "issueMaxSynths()": FunctionFragment; + "issueMaxSynthsOnBehalf(address)": FunctionFragment; + "issueSynths(uint256)": FunctionFragment; + "issueSynthsOnBehalf(address,uint256)": FunctionFragment; + "liquidateDelinquentAccount(address)": FunctionFragment; + "liquidateDelinquentAccountEscrowIndex(address,uint256)": FunctionFragment; + "liquidateSelf()": FunctionFragment; + "maxIssuableSynths(address)": FunctionFragment; + "messageSender()": FunctionFragment; + "migrateEscrowBalanceToRewardEscrowV2()": FunctionFragment; + "migrateEscrowContractBalance()": FunctionFragment; + "mint()": FunctionFragment; + "mintSecondary(address,uint256)": FunctionFragment; + "mintSecondaryRewards(uint256)": FunctionFragment; + "name()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "proxy()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "remainingIssuableSynths(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "sUSD()": FunctionFragment; + "setMessageSender(address)": FunctionFragment; + "setProxy(address)": FunctionFragment; + "setTokenState(address)": FunctionFragment; + "settle(bytes32)": FunctionFragment; + "symbol()": FunctionFragment; + "synths(bytes32)": FunctionFragment; + "synthsByAddress(address)": FunctionFragment; + "tokenState()": FunctionFragment; + "totalIssuedSynths(bytes32)": FunctionFragment; + "totalIssuedSynthsExcludeOtherCollateral(bytes32)": FunctionFragment; + "totalSupply()": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "transferableSynthetix(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "DECIMALS" + | "TOKEN_NAME" + | "TOKEN_SYMBOL" + | "acceptOwnership" + | "allowance" + | "anySynthOrSNXRateIsInvalid" + | "approve" + | "availableCurrencyKeys" + | "availableSynthCount" + | "availableSynths" + | "balanceOf" + | "burnSecondary" + | "burnSynths" + | "burnSynthsOnBehalf" + | "burnSynthsToTarget" + | "burnSynthsToTargetOnBehalf" + | "collateral" + | "collateralisationRatio" + | "debtBalanceOf" + | "decimals" + | "emitAtomicSynthExchange" + | "emitExchangeRebate" + | "emitExchangeReclaim" + | "emitExchangeTracking" + | "emitSynthExchange" + | "exchange" + | "exchangeAtomically" + | "exchangeOnBehalf" + | "exchangeOnBehalfWithTracking" + | "exchangeWithTracking" + | "exchangeWithTrackingForInitiator" + | "exchangeWithVirtual" + | "getFirstNonZeroEscrowIndex" + | "isResolverCached" + | "isWaitingPeriod" + | "issueMaxSynths" + | "issueMaxSynthsOnBehalf" + | "issueSynths" + | "issueSynthsOnBehalf" + | "liquidateDelinquentAccount" + | "liquidateDelinquentAccountEscrowIndex" + | "liquidateSelf" + | "maxIssuableSynths" + | "messageSender" + | "migrateEscrowBalanceToRewardEscrowV2" + | "migrateEscrowContractBalance" + | "mint" + | "mintSecondary" + | "mintSecondaryRewards" + | "name" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "proxy" + | "rebuildCache" + | "remainingIssuableSynths" + | "resolver" + | "resolverAddressesRequired" + | "sUSD" + | "setMessageSender" + | "setProxy" + | "setTokenState" + | "settle" + | "symbol" + | "synths" + | "synthsByAddress" + | "tokenState" + | "totalIssuedSynths" + | "totalIssuedSynthsExcludeOtherCollateral" + | "totalSupply" + | "transfer" + | "transferFrom" + | "transferableSynthetix" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; + encodeFunctionData( + functionFragment: "TOKEN_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "TOKEN_SYMBOL", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "anySynthOrSNXRateIsInvalid", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "availableCurrencyKeys", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "availableSynthCount", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "availableSynths", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "burnSecondary", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynths", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynthsOnBehalf", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynthsToTarget", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "burnSynthsToTargetOnBehalf", + values: [string] + ): string; + encodeFunctionData(functionFragment: "collateral", values: [string]): string; + encodeFunctionData( + functionFragment: "collateralisationRatio", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "debtBalanceOf", + values: [string, BytesLike] + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "emitAtomicSynthExchange", + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeRebate", + values: [string, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeReclaim", + values: [string, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeTracking", + values: [BytesLike, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitSynthExchange", + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "exchange", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeAtomically", + values: [BytesLike, BigNumberish, BytesLike, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "exchangeOnBehalf", + values: [string, BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeOnBehalfWithTracking", + values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithTracking", + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithTrackingForInitiator", + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithVirtual", + values: [BytesLike, BigNumberish, BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFirstNonZeroEscrowIndex", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isWaitingPeriod", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "issueMaxSynths", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issueMaxSynthsOnBehalf", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "issueSynths", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "issueSynthsOnBehalf", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateDelinquentAccount", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidateDelinquentAccountEscrowIndex", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateSelf", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "maxIssuableSynths", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "messageSender", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "migrateEscrowBalanceToRewardEscrowV2", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "migrateEscrowContractBalance", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "mint", values?: undefined): string; + encodeFunctionData( + functionFragment: "mintSecondary", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "mintSecondaryRewards", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "proxy", values?: undefined): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingIssuableSynths", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "sUSD", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMessageSender", + values: [string] + ): string; + encodeFunctionData(functionFragment: "setProxy", values: [string]): string; + encodeFunctionData( + functionFragment: "setTokenState", + values: [string] + ): string; + encodeFunctionData(functionFragment: "settle", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "synths", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "synthsByAddress", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "tokenState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalIssuedSynths", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "totalIssuedSynthsExcludeOtherCollateral", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferableSynthetix", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "TOKEN_NAME", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "TOKEN_SYMBOL", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "anySynthOrSNXRateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "availableCurrencyKeys", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "availableSynthCount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "availableSynths", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "burnSecondary", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "burnSynths", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "burnSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "burnSynthsToTarget", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "burnSynthsToTargetOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "collateral", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "collateralisationRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "debtBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "emitAtomicSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeRebate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeReclaim", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "exchangeAtomically", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeOnBehalfWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithTrackingForInitiator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithVirtual", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFirstNonZeroEscrowIndex", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isWaitingPeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueMaxSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueMaxSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateDelinquentAccount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateDelinquentAccountEscrowIndex", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateSelf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxIssuableSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "messageSender", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "migrateEscrowBalanceToRewardEscrowV2", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "migrateEscrowContractBalance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "mintSecondary", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "mintSecondaryRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingIssuableSynths", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "sUSD", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMessageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setTokenState", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "synths", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "synthsByAddress", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalIssuedSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalIssuedSynthsExcludeOtherCollateral", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferableSynthetix", + data: BytesLike + ): Result; + + events: { + "AccountLiquidated(address,uint256,uint256,address)": EventFragment; + "Approval(address,address,uint256)": EventFragment; + "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "ExchangeRebate(address,bytes32,uint256)": EventFragment; + "ExchangeReclaim(address,bytes32,uint256)": EventFragment; + "ExchangeTracking(bytes32,bytes32,uint256,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ProxyUpdated(address)": EventFragment; + "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; + "TokenStateUpdated(address)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccountLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AtomicSynthExchange"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeRebate"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeReclaim"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchange"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; } export interface AccountLiquidatedEventObject { - account: string - snxRedeemed: BigNumber - amountLiquidated: BigNumber - liquidator: string + account: string; + snxRedeemed: BigNumber; + amountLiquidated: BigNumber; + liquidator: string; } export type AccountLiquidatedEvent = TypedEvent< - [string, BigNumber, BigNumber, string], - AccountLiquidatedEventObject -> + [string, BigNumber, BigNumber, string], + AccountLiquidatedEventObject +>; -export type AccountLiquidatedEventFilter = TypedEventFilter +export type AccountLiquidatedEventFilter = + TypedEventFilter; export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface AtomicSynthExchangeEventObject { - account: string - fromCurrencyKey: string - fromAmount: BigNumber - toCurrencyKey: string - toAmount: BigNumber - toAddress: string + account: string; + fromCurrencyKey: string; + fromAmount: BigNumber; + toCurrencyKey: string; + toAmount: BigNumber; + toAddress: string; } export type AtomicSynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - AtomicSynthExchangeEventObject -> + [string, string, BigNumber, string, BigNumber, string], + AtomicSynthExchangeEventObject +>; -export type AtomicSynthExchangeEventFilter = TypedEventFilter +export type AtomicSynthExchangeEventFilter = + TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface ExchangeRebateEventObject { - account: string - currencyKey: string - amount: BigNumber + account: string; + currencyKey: string; + amount: BigNumber; } -export type ExchangeRebateEvent = TypedEvent<[string, string, BigNumber], ExchangeRebateEventObject> +export type ExchangeRebateEvent = TypedEvent< + [string, string, BigNumber], + ExchangeRebateEventObject +>; -export type ExchangeRebateEventFilter = TypedEventFilter +export type ExchangeRebateEventFilter = TypedEventFilter; export interface ExchangeReclaimEventObject { - account: string - currencyKey: string - amount: BigNumber + account: string; + currencyKey: string; + amount: BigNumber; } export type ExchangeReclaimEvent = TypedEvent< - [string, string, BigNumber], - ExchangeReclaimEventObject -> + [string, string, BigNumber], + ExchangeReclaimEventObject +>; -export type ExchangeReclaimEventFilter = TypedEventFilter +export type ExchangeReclaimEventFilter = TypedEventFilter; export interface ExchangeTrackingEventObject { - trackingCode: string - toCurrencyKey: string - toAmount: BigNumber - fee: BigNumber + trackingCode: string; + toCurrencyKey: string; + toAmount: BigNumber; + fee: BigNumber; } export type ExchangeTrackingEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - ExchangeTrackingEventObject -> + [string, string, BigNumber, BigNumber], + ExchangeTrackingEventObject +>; -export type ExchangeTrackingEventFilter = TypedEventFilter +export type ExchangeTrackingEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ProxyUpdatedEventObject { - proxyAddress: string + proxyAddress: string; } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; -export type ProxyUpdatedEventFilter = TypedEventFilter +export type ProxyUpdatedEventFilter = TypedEventFilter; export interface SynthExchangeEventObject { - account: string - fromCurrencyKey: string - fromAmount: BigNumber - toCurrencyKey: string - toAmount: BigNumber - toAddress: string + account: string; + fromCurrencyKey: string; + fromAmount: BigNumber; + toCurrencyKey: string; + toAmount: BigNumber; + toAddress: string; } export type SynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - SynthExchangeEventObject -> + [string, string, BigNumber, string, BigNumber, string], + SynthExchangeEventObject +>; -export type SynthExchangeEventFilter = TypedEventFilter +export type SynthExchangeEventFilter = TypedEventFilter; export interface TokenStateUpdatedEventObject { - newTokenState: string + newTokenState: string; } -export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> +export type TokenStateUpdatedEvent = TypedEvent< + [string], + TokenStateUpdatedEventObject +>; -export type TokenStateUpdatedEventFilter = TypedEventFilter +export type TokenStateUpdatedEventFilter = + TypedEventFilter; export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface Synthetix extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthetixInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - DECIMALS(overrides?: CallOverrides): Promise<[number]> - - TOKEN_NAME(overrides?: CallOverrides): Promise<[string]> - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - anySynthOrSNXRateIsInvalid( - overrides?: CallOverrides - ): Promise<[boolean] & { anyRateInvalid: boolean }> - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]> - - availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]> - - availableSynths( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]> - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - burnSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTarget( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - collateral(account: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]> - - collateralisationRatio( - _issuer: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - debtBalanceOf( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - decimals(overrides?: CallOverrides): Promise<[number]> - - emitAtomicSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeRebate( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeReclaim( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeTracking( - trackingCode: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - fee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchange( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - minAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getFirstNonZeroEscrowIndex( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - isWaitingPeriod( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - issueMaxSynths( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccount( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: PromiseOrValue, - escrowStartIndex: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateSelf( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - maxIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { maxIssuable: BigNumber }> - - messageSender(overrides?: CallOverrides): Promise<[string]> - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - mintSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mintSecondaryRewards( - arg0: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - name(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - proxy(overrides?: CallOverrides): Promise<[string]> - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - sUSD(overrides?: CallOverrides): Promise<[string]> - - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settle( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - symbol(overrides?: CallOverrides): Promise<[string]> - - synths(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise<[string]> - - synthsByAddress( - synthAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[string]> - - tokenState(overrides?: CallOverrides): Promise<[string]> - - totalIssuedSynths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - transferableSynthetix( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber] & { transferable: BigNumber }> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths(index: PromiseOrValue, overrides?: CallOverrides): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - burnSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTarget( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - collateral(account: PromiseOrValue, overrides?: CallOverrides): Promise - - collateralisationRatio( - _issuer: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - debtBalanceOf( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeRebate( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeReclaim( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeTracking( - trackingCode: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - fee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchange( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - minAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getFirstNonZeroEscrowIndex( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - issueMaxSynths( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccount( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: PromiseOrValue, - escrowStartIndex: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateSelf( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - maxIssuableSynths(account: PromiseOrValue, overrides?: CallOverrides): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - mintSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mintSecondaryRewards( - arg0: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settle( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - symbol(overrides?: CallOverrides): Promise - - synths(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - synthsByAddress(synthAddress: PromiseOrValue, overrides?: CallOverrides): Promise - - tokenState(overrides?: CallOverrides): Promise - - totalIssuedSynths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthetixInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + DECIMALS(overrides?: CallOverrides): Promise<[number]>; + + TOKEN_NAME(overrides?: CallOverrides): Promise<[string]>; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + anySynthOrSNXRateIsInvalid( + overrides?: CallOverrides + ): Promise<[boolean] & { anyRateInvalid: boolean }>; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]>; + + availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]>; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + decimals(overrides?: CallOverrides): Promise<[number]>; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxIssuable: BigNumber }>; + + messageSender(overrides?: CallOverrides): Promise<[string]>; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + proxy(overrides?: CallOverrides): Promise<[string]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + sUSD(overrides?: CallOverrides): Promise<[string]>; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[string]>; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise<[string]>; - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + tokenState(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { transferable: BigNumber }>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint(overrides?: Overrides & { from?: string }): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynthetix( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - DECIMALS(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - TOKEN_NAME(overrides?: CallOverrides): Promise + sUSD(overrides?: CallOverrides): Promise; - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths(index: PromiseOrValue, overrides?: CallOverrides): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - burnSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - burnSynths(amount: PromiseOrValue, overrides?: CallOverrides): Promise - - burnSynthsOnBehalf( - burnForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - burnSynthsToTarget(overrides?: CallOverrides): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - collateral(account: PromiseOrValue, overrides?: CallOverrides): Promise - - collateralisationRatio( - _issuer: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - debtBalanceOf( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - emitExchangeRebate( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - emitExchangeReclaim( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - emitExchangeTracking( - trackingCode: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - fee: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - emitSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchange( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeAtomically( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - minAmount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeOnBehalf( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> - - getFirstNonZeroEscrowIndex( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - issueMaxSynths(overrides?: CallOverrides): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - issueSynths(amount: PromiseOrValue, overrides?: CallOverrides): Promise - - issueSynthsOnBehalf( - issueForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - liquidateDelinquentAccount( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: PromiseOrValue, - escrowStartIndex: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - liquidateSelf(overrides?: CallOverrides): Promise - - maxIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2(overrides?: CallOverrides): Promise - - migrateEscrowContractBalance(overrides?: CallOverrides): Promise - - mint(overrides?: CallOverrides): Promise - - mintSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - mintSecondaryRewards( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - remainingIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender(sender: PromiseOrValue, overrides?: CallOverrides): Promise - - setProxy(_proxy: PromiseOrValue, overrides?: CallOverrides): Promise - - setTokenState(_tokenState: PromiseOrValue, overrides?: CallOverrides): Promise - - settle( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber - refunded: BigNumber - numEntriesSettled: BigNumber - } - > - - symbol(overrides?: CallOverrides): Promise - - synths(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - synthsByAddress( - synthAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - tokenState(overrides?: CallOverrides): Promise - - totalIssuedSynths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - transferableSynthetix( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AccountLiquidated(address,uint256,uint256,address)'( - account?: PromiseOrValue | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter - AccountLiquidated( - account?: PromiseOrValue | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter - - 'Approval(address,address,uint256)'( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - Approval( - owner?: PromiseOrValue | null, - spender?: PromiseOrValue | null, - value?: null - ): ApprovalEventFilter - - 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( - account?: PromiseOrValue | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter - AtomicSynthExchange( - account?: PromiseOrValue | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter - - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'ExchangeRebate(address,bytes32,uint256)'( - account?: PromiseOrValue | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter - ExchangeRebate( - account?: PromiseOrValue | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter - - 'ExchangeReclaim(address,bytes32,uint256)'( - account?: PromiseOrValue | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter - ExchangeReclaim( - account?: PromiseOrValue | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter - - 'ExchangeTracking(bytes32,bytes32,uint256,uint256)'( - trackingCode?: PromiseOrValue | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter - ExchangeTracking( - trackingCode?: PromiseOrValue | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter - - 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( - account?: PromiseOrValue | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter - SynthExchange( - account?: PromiseOrValue | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter - - 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter - - 'Transfer(address,address,uint256)'( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - Transfer( - from?: PromiseOrValue | null, - to?: PromiseOrValue | null, - value?: null - ): TransferEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - balanceOf(account: PromiseOrValue, overrides?: CallOverrides): Promise - - burnSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTarget( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - collateral(account: PromiseOrValue, overrides?: CallOverrides): Promise - - collateralisationRatio( - _issuer: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - debtBalanceOf( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeRebate( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeReclaim( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeTracking( - trackingCode: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - fee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchange( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - minAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getFirstNonZeroEscrowIndex( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - issueMaxSynths(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccount( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: PromiseOrValue, - escrowStartIndex: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateSelf(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - maxIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - mintSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mintSecondaryRewards( - arg0: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - name(overrides?: CallOverrides): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - proxy(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; - remainingIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - sUSD(overrides?: CallOverrides): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; - settle( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + burnSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + burnSynthsToTarget(overrides?: CallOverrides): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: CallOverrides + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } + >; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths(overrides?: CallOverrides): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: CallOverrides + ): Promise; + + issueSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateSelf(overrides?: CallOverrides): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: CallOverrides + ): Promise; + + migrateEscrowContractBalance(overrides?: CallOverrides): Promise; + + mint(overrides?: CallOverrides): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + sUSD(overrides?: CallOverrides): Promise; + + setMessageSender(sender: string, overrides?: CallOverrides): Promise; + + setProxy(_proxy: string, overrides?: CallOverrides): Promise; + + setTokenState( + _tokenState: string, + overrides?: CallOverrides + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber; + refunded: BigNumber; + numEntriesSettled: BigNumber; + } + >; + + symbol(overrides?: CallOverrides): Promise; + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; + + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccountLiquidated(address,uint256,uint256,address)"( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter; + AccountLiquidated( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter; + + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + + "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter; + AtomicSynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter; + + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "ExchangeRebate(address,bytes32,uint256)"( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter; + ExchangeRebate( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter; + + "ExchangeReclaim(address,bytes32,uint256)"( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter; + ExchangeReclaim( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter; + + "ExchangeTracking(bytes32,bytes32,uint256,uint256)"( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter; + ExchangeTracking( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; + + "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter; + SynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter; + + "TokenStateUpdated(address)"( + newTokenState?: null + ): TokenStateUpdatedEventFilter; + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint(overrides?: Overrides & { from?: string }): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - synths(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; - synthsByAddress( - synthAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise + resolver(overrides?: CallOverrides): Promise; - tokenState(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - totalIssuedSynths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + sUSD(overrides?: CallOverrides): Promise; - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - totalSupply(overrides?: CallOverrides): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynthetix( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - allowance( - owner: PromiseOrValue, - spender: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths( - index: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - balanceOf( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - burnSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTarget( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - collateral( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - collateralisationRatio( - _issuer: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - debtBalanceOf( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeRebate( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeReclaim( - account: PromiseOrValue, - currencyKey: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitExchangeTracking( - trackingCode: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - fee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - emitSynthExchange( - account: PromiseOrValue, - fromCurrencyKey: PromiseOrValue, - fromAmount: PromiseOrValue, - toCurrencyKey: PromiseOrValue, - toAmount: PromiseOrValue, - toAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchange( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - minAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: PromiseOrValue, - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - rewardAddress: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: PromiseOrValue, - sourceAmount: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - trackingCode: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - getFirstNonZeroEscrowIndex( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - issueMaxSynths( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynths( - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: PromiseOrValue, - amount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccount( - account: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: PromiseOrValue, - escrowStartIndex: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - liquidateSelf( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - maxIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mint(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - mintSecondary( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - mintSecondaryRewards( - arg0: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - remainingIssuableSynths( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender( - sender: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setProxy( - _proxy: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - setTokenState( - _tokenState: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - settle( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - symbol(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; - synths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - synthsByAddress( - synthAddress: PromiseOrValue, - overrides?: CallOverrides - ): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - tokenState(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - totalIssuedSynths( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid( + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys( + overrides?: CallOverrides + ): Promise; + + availableSynthCount( + overrides?: CallOverrides + ): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral( + account: string, + overrides?: CallOverrides + ): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + sUSD(overrides?: CallOverrides): Promise; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - transfer( - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - transferFrom( - from: PromiseOrValue, - to: PromiseOrValue, - value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynthetix( - account: PromiseOrValue, - overrides?: CallOverrides - ): Promise - } + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SystemSettings.ts b/packages/sdk/src/contracts/types/SystemSettings.ts index cd4999f399..e203985891 100644 --- a/packages/sdk/src/contracts/types/SystemSettings.ts +++ b/packages/sdk/src/contracts/types/SystemSettings.ts @@ -15,7 +15,7 @@ import type { } from 'ethers' import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SystemSettingsInterface extends utils.Interface { functions: { @@ -206,33 +206,24 @@ export interface SystemSettingsInterface extends utils.Interface { encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string encodeFunctionData(functionFragment: 'aggregatorWarningFlags', values?: undefined): string - encodeFunctionData( - functionFragment: 'atomicEquivalentForDexPricing', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'atomicExchangeFeeRate', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'atomicEquivalentForDexPricing', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'atomicExchangeFeeRate', values: [BytesLike]): string encodeFunctionData(functionFragment: 'atomicMaxVolumePerBlock', values?: undefined): string encodeFunctionData(functionFragment: 'atomicTwapWindow', values?: undefined): string encodeFunctionData( functionFragment: 'atomicVolatilityConsiderationWindow', - values: [PromiseOrValue] + values: [BytesLike] ): string encodeFunctionData( functionFragment: 'atomicVolatilityUpdateThreshold', - values: [PromiseOrValue] + values: [BytesLike] ): string - encodeFunctionData(functionFragment: 'collapseFeeRate', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'collapseFeeRate', values: [string]): string encodeFunctionData( functionFragment: 'crossChainSynthTransferEnabled', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'crossDomainMessageGasLimit', - values: [PromiseOrValue] + values: [BytesLike] ): string + encodeFunctionData(functionFragment: 'crossDomainMessageGasLimit', values: [BigNumberish]): string encodeFunctionData(functionFragment: 'debtSnapshotStaleTime', values?: undefined): string encodeFunctionData(functionFragment: 'etherWrapperBurnFeeRate', values?: undefined): string encodeFunctionData(functionFragment: 'etherWrapperMaxETH', values?: undefined): string @@ -240,14 +231,11 @@ export interface SystemSettingsInterface extends utils.Interface { encodeFunctionData(functionFragment: 'exchangeDynamicFeeRounds', values?: undefined): string encodeFunctionData(functionFragment: 'exchangeDynamicFeeThreshold', values?: undefined): string encodeFunctionData(functionFragment: 'exchangeDynamicFeeWeightDecay', values?: undefined): string - encodeFunctionData( - functionFragment: 'exchangeFeeRate', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'exchangeFeeRate', values: [BytesLike]): string encodeFunctionData(functionFragment: 'exchangeMaxDynamicFee', values?: undefined): string encodeFunctionData(functionFragment: 'feePeriodDuration', values?: undefined): string encodeFunctionData(functionFragment: 'flagReward', values?: undefined): string - encodeFunctionData(functionFragment: 'interactionDelay', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'interactionDelay', values: [string]): string encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string encodeFunctionData(functionFragment: 'issuanceRatio', values?: undefined): string encodeFunctionData(functionFragment: 'liquidateReward', values?: undefined): string @@ -256,195 +244,117 @@ export interface SystemSettingsInterface extends utils.Interface { encodeFunctionData(functionFragment: 'liquidationPenalty', values?: undefined): string encodeFunctionData(functionFragment: 'liquidationRatio', values?: undefined): string encodeFunctionData(functionFragment: 'minimumStakeTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string encodeFunctionData(functionFragment: 'owner', values?: undefined): string encodeFunctionData(functionFragment: 'priceDeviationThresholdFactor', values?: undefined): string encodeFunctionData( functionFragment: 'pureChainlinkPriceForAtomicSwapsEnabled', - values: [PromiseOrValue] + values: [BytesLike] ): string encodeFunctionData(functionFragment: 'rateStalePeriod', values?: undefined): string encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string encodeFunctionData(functionFragment: 'resolver', values?: undefined): string encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string encodeFunctionData(functionFragment: 'selfLiquidationPenalty', values?: undefined): string - encodeFunctionData( - functionFragment: 'setAggregatorWarningFlags', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'setAggregatorWarningFlags', values: [string]): string encodeFunctionData( functionFragment: 'setAtomicEquivalentForDexPricing', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, string] ): string encodeFunctionData( functionFragment: 'setAtomicExchangeFeeRate', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setAtomicMaxVolumePerBlock', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setAtomicTwapWindow', - values: [PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setAtomicMaxVolumePerBlock', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setAtomicTwapWindow', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setAtomicVolatilityConsiderationWindow', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setAtomicVolatilityUpdateThreshold', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setCollapseFeeRate', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setCollapseFeeRate', values: [string, BigNumberish]): string encodeFunctionData( functionFragment: 'setCrossChainSynthTransferEnabled', - values: [PromiseOrValue, PromiseOrValue] + values: [BytesLike, BigNumberish] ): string encodeFunctionData( functionFragment: 'setCrossDomainMessageGasLimit', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setDebtSnapshotStaleTime', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setEtherWrapperBurnFeeRate', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setEtherWrapperMaxETH', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setEtherWrapperMintFeeRate', - values: [PromiseOrValue] + values: [BigNumberish, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setDebtSnapshotStaleTime', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setEtherWrapperBurnFeeRate', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setEtherWrapperMaxETH', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setEtherWrapperMintFeeRate', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setExchangeDynamicFeeRounds', - values: [PromiseOrValue] + values: [BigNumberish] ): string encodeFunctionData( functionFragment: 'setExchangeDynamicFeeThreshold', - values: [PromiseOrValue] + values: [BigNumberish] ): string encodeFunctionData( functionFragment: 'setExchangeDynamicFeeWeightDecay', - values: [PromiseOrValue] + values: [BigNumberish] ): string encodeFunctionData( functionFragment: 'setExchangeFeeRateForSynths', - values: [PromiseOrValue[], PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'setExchangeMaxDynamicFee', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setFeePeriodDuration', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setFlagReward', - values: [PromiseOrValue] + values: [BytesLike[], BigNumberish[]] ): string + encodeFunctionData(functionFragment: 'setExchangeMaxDynamicFee', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setFeePeriodDuration', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setFlagReward', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setInteractionDelay', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setIssuanceRatio', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidateReward', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationDelay', - values: [PromiseOrValue] + values: [string, BigNumberish] ): string + encodeFunctionData(functionFragment: 'setIssuanceRatio', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setLiquidateReward', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setLiquidationDelay', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setLiquidationEscrowDuration', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationPenalty', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationRatio', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setMinimumStakeTime', - values: [PromiseOrValue] + values: [BigNumberish] ): string + encodeFunctionData(functionFragment: 'setLiquidationPenalty', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setLiquidationRatio', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setMinimumStakeTime', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setPriceDeviationThresholdFactor', - values: [PromiseOrValue] + values: [BigNumberish] ): string encodeFunctionData( functionFragment: 'setPureChainlinkPriceForAtomicSwapsEnabled', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setRateStalePeriod', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setSelfLiquidationPenalty', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setSnxLiquidationPenalty', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTargetThreshold', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setTradingRewardsEnabled', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'setWaitingPeriodSecs', - values: [PromiseOrValue] + values: [BytesLike, boolean] ): string + encodeFunctionData(functionFragment: 'setRateStalePeriod', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setSelfLiquidationPenalty', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setSnxLiquidationPenalty', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setTargetThreshold', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setTradingRewardsEnabled', values: [boolean]): string + encodeFunctionData(functionFragment: 'setWaitingPeriodSecs', values: [BigNumberish]): string encodeFunctionData( functionFragment: 'setWrapperBurnFeeRate', - values: [PromiseOrValue, PromiseOrValue] + values: [string, BigNumberish] ): string encodeFunctionData( functionFragment: 'setWrapperMaxTokenAmount', - values: [PromiseOrValue, PromiseOrValue] + values: [string, BigNumberish] ): string encodeFunctionData( functionFragment: 'setWrapperMintFeeRate', - values: [PromiseOrValue, PromiseOrValue] + values: [string, BigNumberish] ): string encodeFunctionData(functionFragment: 'snxLiquidationPenalty', values?: undefined): string encodeFunctionData(functionFragment: 'targetThreshold', values?: undefined): string encodeFunctionData(functionFragment: 'tradingRewardsEnabled', values?: undefined): string encodeFunctionData(functionFragment: 'waitingPeriodSecs', values?: undefined): string - encodeFunctionData( - functionFragment: 'wrapperBurnFeeRate', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'wrapperMaxTokenAmount', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'wrapperMintFeeRate', - values: [PromiseOrValue] - ): string + encodeFunctionData(functionFragment: 'wrapperBurnFeeRate', values: [string]): string + encodeFunctionData(functionFragment: 'wrapperMaxTokenAmount', values: [string]): string + encodeFunctionData(functionFragment: 'wrapperMintFeeRate', values: [string]): string decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result @@ -662,8 +572,9 @@ export type AggregatorWarningFlagsUpdatedEvent = TypedEvent< AggregatorWarningFlagsUpdatedEventObject > -export type AggregatorWarningFlagsUpdatedEventFilter = - TypedEventFilter +export type AggregatorWarningFlagsUpdatedEventFilter = TypedEventFilter< + AggregatorWarningFlagsUpdatedEvent +> export interface AtomicEquivalentForDexPricingUpdatedEventObject { synthKey: string @@ -674,8 +585,9 @@ export type AtomicEquivalentForDexPricingUpdatedEvent = TypedEvent< AtomicEquivalentForDexPricingUpdatedEventObject > -export type AtomicEquivalentForDexPricingUpdatedEventFilter = - TypedEventFilter +export type AtomicEquivalentForDexPricingUpdatedEventFilter = TypedEventFilter< + AtomicEquivalentForDexPricingUpdatedEvent +> export interface AtomicExchangeFeeUpdatedEventObject { synthKey: string @@ -696,8 +608,9 @@ export type AtomicMaxVolumePerBlockUpdatedEvent = TypedEvent< AtomicMaxVolumePerBlockUpdatedEventObject > -export type AtomicMaxVolumePerBlockUpdatedEventFilter = - TypedEventFilter +export type AtomicMaxVolumePerBlockUpdatedEventFilter = TypedEventFilter< + AtomicMaxVolumePerBlockUpdatedEvent +> export interface AtomicTwapWindowUpdatedEventObject { newWindow: BigNumber @@ -718,8 +631,9 @@ export type AtomicVolatilityConsiderationWindowUpdatedEvent = TypedEvent< AtomicVolatilityConsiderationWindowUpdatedEventObject > -export type AtomicVolatilityConsiderationWindowUpdatedEventFilter = - TypedEventFilter +export type AtomicVolatilityConsiderationWindowUpdatedEventFilter = TypedEventFilter< + AtomicVolatilityConsiderationWindowUpdatedEvent +> export interface AtomicVolatilityUpdateThresholdUpdatedEventObject { synthKey: string @@ -730,8 +644,9 @@ export type AtomicVolatilityUpdateThresholdUpdatedEvent = TypedEvent< AtomicVolatilityUpdateThresholdUpdatedEventObject > -export type AtomicVolatilityUpdateThresholdUpdatedEventFilter = - TypedEventFilter +export type AtomicVolatilityUpdateThresholdUpdatedEventFilter = TypedEventFilter< + AtomicVolatilityUpdateThresholdUpdatedEvent +> export interface CacheUpdatedEventObject { name: string @@ -757,8 +672,9 @@ export type CrossChainSynthTransferEnabledUpdatedEvent = TypedEvent< CrossChainSynthTransferEnabledUpdatedEventObject > -export type CrossChainSynthTransferEnabledUpdatedEventFilter = - TypedEventFilter +export type CrossChainSynthTransferEnabledUpdatedEventFilter = TypedEventFilter< + CrossChainSynthTransferEnabledUpdatedEvent +> export interface CrossDomainMessageGasLimitChangedEventObject { gasLimitType: number @@ -769,8 +685,9 @@ export type CrossDomainMessageGasLimitChangedEvent = TypedEvent< CrossDomainMessageGasLimitChangedEventObject > -export type CrossDomainMessageGasLimitChangedEventFilter = - TypedEventFilter +export type CrossDomainMessageGasLimitChangedEventFilter = TypedEventFilter< + CrossDomainMessageGasLimitChangedEvent +> export interface DebtSnapshotStaleTimeUpdatedEventObject { debtSnapshotStaleTime: BigNumber @@ -780,8 +697,9 @@ export type DebtSnapshotStaleTimeUpdatedEvent = TypedEvent< DebtSnapshotStaleTimeUpdatedEventObject > -export type DebtSnapshotStaleTimeUpdatedEventFilter = - TypedEventFilter +export type DebtSnapshotStaleTimeUpdatedEventFilter = TypedEventFilter< + DebtSnapshotStaleTimeUpdatedEvent +> export interface EtherWrapperBurnFeeRateUpdatedEventObject { rate: BigNumber @@ -791,8 +709,9 @@ export type EtherWrapperBurnFeeRateUpdatedEvent = TypedEvent< EtherWrapperBurnFeeRateUpdatedEventObject > -export type EtherWrapperBurnFeeRateUpdatedEventFilter = - TypedEventFilter +export type EtherWrapperBurnFeeRateUpdatedEventFilter = TypedEventFilter< + EtherWrapperBurnFeeRateUpdatedEvent +> export interface EtherWrapperMaxETHUpdatedEventObject { maxETH: BigNumber @@ -812,8 +731,9 @@ export type EtherWrapperMintFeeRateUpdatedEvent = TypedEvent< EtherWrapperMintFeeRateUpdatedEventObject > -export type EtherWrapperMintFeeRateUpdatedEventFilter = - TypedEventFilter +export type EtherWrapperMintFeeRateUpdatedEventFilter = TypedEventFilter< + EtherWrapperMintFeeRateUpdatedEvent +> export interface ExchangeDynamicFeeRoundsUpdatedEventObject { dynamicFeeRounds: BigNumber @@ -823,8 +743,9 @@ export type ExchangeDynamicFeeRoundsUpdatedEvent = TypedEvent< ExchangeDynamicFeeRoundsUpdatedEventObject > -export type ExchangeDynamicFeeRoundsUpdatedEventFilter = - TypedEventFilter +export type ExchangeDynamicFeeRoundsUpdatedEventFilter = TypedEventFilter< + ExchangeDynamicFeeRoundsUpdatedEvent +> export interface ExchangeDynamicFeeThresholdUpdatedEventObject { dynamicFeeThreshold: BigNumber @@ -834,8 +755,9 @@ export type ExchangeDynamicFeeThresholdUpdatedEvent = TypedEvent< ExchangeDynamicFeeThresholdUpdatedEventObject > -export type ExchangeDynamicFeeThresholdUpdatedEventFilter = - TypedEventFilter +export type ExchangeDynamicFeeThresholdUpdatedEventFilter = TypedEventFilter< + ExchangeDynamicFeeThresholdUpdatedEvent +> export interface ExchangeDynamicFeeWeightDecayUpdatedEventObject { dynamicFeeWeightDecay: BigNumber @@ -845,8 +767,9 @@ export type ExchangeDynamicFeeWeightDecayUpdatedEvent = TypedEvent< ExchangeDynamicFeeWeightDecayUpdatedEventObject > -export type ExchangeDynamicFeeWeightDecayUpdatedEventFilter = - TypedEventFilter +export type ExchangeDynamicFeeWeightDecayUpdatedEventFilter = TypedEventFilter< + ExchangeDynamicFeeWeightDecayUpdatedEvent +> export interface ExchangeFeeUpdatedEventObject { synthKey: string @@ -864,8 +787,9 @@ export type ExchangeMaxDynamicFeeUpdatedEvent = TypedEvent< ExchangeMaxDynamicFeeUpdatedEventObject > -export type ExchangeMaxDynamicFeeUpdatedEventFilter = - TypedEventFilter +export type ExchangeMaxDynamicFeeUpdatedEventFilter = TypedEventFilter< + ExchangeMaxDynamicFeeUpdatedEvent +> export interface FeePeriodDurationUpdatedEventObject { newFeePeriodDuration: BigNumber @@ -926,8 +850,9 @@ export type LiquidationEscrowDurationUpdatedEvent = TypedEvent< LiquidationEscrowDurationUpdatedEventObject > -export type LiquidationEscrowDurationUpdatedEventFilter = - TypedEventFilter +export type LiquidationEscrowDurationUpdatedEventFilter = TypedEventFilter< + LiquidationEscrowDurationUpdatedEvent +> export interface LiquidationPenaltyUpdatedEventObject { newPenalty: BigNumber @@ -982,8 +907,9 @@ export type PriceDeviationThresholdUpdatedEvent = TypedEvent< PriceDeviationThresholdUpdatedEventObject > -export type PriceDeviationThresholdUpdatedEventFilter = - TypedEventFilter +export type PriceDeviationThresholdUpdatedEventFilter = TypedEventFilter< + PriceDeviationThresholdUpdatedEvent +> export interface PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject { synthKey: string @@ -994,8 +920,9 @@ export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEvent = TypedEvent< PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject > -export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter = - TypedEventFilter +export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter = TypedEventFilter< + PureChainlinkPriceForAtomicSwapsEnabledUpdatedEvent +> export interface RateStalePeriodUpdatedEventObject { rateStalePeriod: BigNumber @@ -1012,8 +939,9 @@ export type SelfLiquidationPenaltyUpdatedEvent = TypedEvent< SelfLiquidationPenaltyUpdatedEventObject > -export type SelfLiquidationPenaltyUpdatedEventFilter = - TypedEventFilter +export type SelfLiquidationPenaltyUpdatedEventFilter = TypedEventFilter< + SelfLiquidationPenaltyUpdatedEvent +> export interface SnxLiquidationPenaltyUpdatedEventObject { newPenalty: BigNumber @@ -1023,8 +951,9 @@ export type SnxLiquidationPenaltyUpdatedEvent = TypedEvent< SnxLiquidationPenaltyUpdatedEventObject > -export type SnxLiquidationPenaltyUpdatedEventFilter = - TypedEventFilter +export type SnxLiquidationPenaltyUpdatedEventFilter = TypedEventFilter< + SnxLiquidationPenaltyUpdatedEvent +> export interface TargetThresholdUpdatedEventObject { newTargetThreshold: BigNumber @@ -1070,8 +999,9 @@ export type WrapperMaxTokenAmountUpdatedEvent = TypedEvent< WrapperMaxTokenAmountUpdatedEventObject > -export type WrapperMaxTokenAmountUpdatedEventFilter = - TypedEventFilter +export type WrapperMaxTokenAmountUpdatedEventFilter = TypedEventFilter< + WrapperMaxTokenAmountUpdatedEvent +> export interface WrapperMintFeeRateUpdatedEventObject { wrapper: string @@ -1111,48 +1041,40 @@ export interface SystemSettings extends BaseContract { functions: { CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]> atomicEquivalentForDexPricing( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise<[string]> - atomicExchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise<[BigNumber]> atomicTwapWindow(overrides?: CallOverrides): Promise<[BigNumber]> atomicVolatilityConsiderationWindow( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> atomicVolatilityUpdateThreshold( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> - collapseFeeRate( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise<[BigNumber]> crossChainSynthTransferEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber]> crossDomainMessageGasLimit( - gasLimitType: PromiseOrValue, + gasLimitType: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]> @@ -1170,10 +1092,7 @@ export interface SystemSettings extends BaseContract { exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise<[BigNumber]> - exchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> exchangeMaxDynamicFee(overrides?: CallOverrides): Promise<[BigNumber]> @@ -1181,10 +1100,7 @@ export interface SystemSettings extends BaseContract { flagReward(overrides?: CallOverrides): Promise<[BigNumber]> - interactionDelay( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + interactionDelay(collateral: string, overrides?: CallOverrides): Promise<[BigNumber]> isResolverCached(overrides?: CallOverrides): Promise<[boolean]> @@ -1203,8 +1119,8 @@ export interface SystemSettings extends BaseContract { minimumStakeTime(overrides?: CallOverrides): Promise<[BigNumber]> nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise<[string]> @@ -1214,15 +1130,13 @@ export interface SystemSettings extends BaseContract { priceDeviationThresholdFactor(overrides?: CallOverrides): Promise<[BigNumber]> pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise<[boolean]> rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]> - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise<[string]> @@ -1233,216 +1147,216 @@ export interface SystemSettings extends BaseContract { selfLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]> setAggregatorWarningFlags( - _flags: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _flags: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicEquivalentForDexPricing( - _currencyKey: PromiseOrValue, - _equivalent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicExchangeFeeRate( - _currencyKey: PromiseOrValue, - _exchangeFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicMaxVolumePerBlock( - _maxVolume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicTwapWindow( - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityConsiderationWindow( - _currencyKey: PromiseOrValue, - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityUpdateThreshold( - _currencyKey: PromiseOrValue, - _threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCollapseFeeRate( - _collateral: PromiseOrValue, - _collapseFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossChainSynthTransferEnabled( - _currencyKey: PromiseOrValue, - _value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossDomainMessageGasLimit( - _gasLimitType: PromiseOrValue, - _crossDomainMessageGasLimit: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setDebtSnapshotStaleTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperBurnFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMaxETH( - _maxETH: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMintFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeRounds( - rounds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + rounds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeThreshold( - threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeWeightDecay( - weightDecay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeFeeRateForSynths( - synthKeys: PromiseOrValue[], - exchangeFeeRates: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } ): Promise setExchangeMaxDynamicFee( - maxFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFeePeriodDuration( - _feePeriodDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFlagReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setInteractionDelay( - _collateral: PromiseOrValue, - _interactionDelay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setIssuanceRatio( - ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidateReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationDelay( - time: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + time: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationEscrowDuration( - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + duration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationRatio( - _liquidationRatio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinimumStakeTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: PromiseOrValue, - _enabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setRateStalePeriod( - period: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + period: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSelfLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSnxLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTargetThreshold( - percent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + percent: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsEnabled( - _tradingRewardsEnabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setWaitingPeriodSecs( - _waitingPeriodSecs: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperBurnFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMaxTokenAmount( - _wrapper: PromiseOrValue, - _maxTokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMintFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise snxLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]> @@ -1453,63 +1367,46 @@ export interface SystemSettings extends BaseContract { waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]> - wrapperBurnFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> - wrapperMaxTokenAmount( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> - wrapperMintFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[BigNumber]> + wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> } CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise aggregatorWarningFlags(overrides?: CallOverrides): Promise - atomicEquivalentForDexPricing( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + atomicEquivalentForDexPricing(currencyKey: BytesLike, overrides?: CallOverrides): Promise - atomicExchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise atomicTwapWindow(overrides?: CallOverrides): Promise atomicVolatilityConsiderationWindow( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise atomicVolatilityUpdateThreshold( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - collapseFeeRate(collateral: PromiseOrValue, overrides?: CallOverrides): Promise + collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise crossChainSynthTransferEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise crossDomainMessageGasLimit( - gasLimitType: PromiseOrValue, + gasLimitType: BigNumberish, overrides?: CallOverrides ): Promise @@ -1527,10 +1424,7 @@ export interface SystemSettings extends BaseContract { exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise - exchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise exchangeMaxDynamicFee(overrides?: CallOverrides): Promise @@ -1538,10 +1432,7 @@ export interface SystemSettings extends BaseContract { flagReward(overrides?: CallOverrides): Promise - interactionDelay( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + interactionDelay(collateral: string, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -1560,8 +1451,8 @@ export interface SystemSettings extends BaseContract { minimumStakeTime(overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -1571,15 +1462,13 @@ export interface SystemSettings extends BaseContract { priceDeviationThresholdFactor(overrides?: CallOverrides): Promise pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise rateStalePeriod(overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise @@ -1588,216 +1477,216 @@ export interface SystemSettings extends BaseContract { selfLiquidationPenalty(overrides?: CallOverrides): Promise setAggregatorWarningFlags( - _flags: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _flags: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicEquivalentForDexPricing( - _currencyKey: PromiseOrValue, - _equivalent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicExchangeFeeRate( - _currencyKey: PromiseOrValue, - _exchangeFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicMaxVolumePerBlock( - _maxVolume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicTwapWindow( - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityConsiderationWindow( - _currencyKey: PromiseOrValue, - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityUpdateThreshold( - _currencyKey: PromiseOrValue, - _threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCollapseFeeRate( - _collateral: PromiseOrValue, - _collapseFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossChainSynthTransferEnabled( - _currencyKey: PromiseOrValue, - _value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossDomainMessageGasLimit( - _gasLimitType: PromiseOrValue, - _crossDomainMessageGasLimit: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setDebtSnapshotStaleTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperBurnFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMaxETH( - _maxETH: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMintFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeRounds( - rounds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + rounds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeThreshold( - threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeWeightDecay( - weightDecay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeFeeRateForSynths( - synthKeys: PromiseOrValue[], - exchangeFeeRates: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } ): Promise setExchangeMaxDynamicFee( - maxFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFeePeriodDuration( - _feePeriodDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFlagReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setInteractionDelay( - _collateral: PromiseOrValue, - _interactionDelay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setIssuanceRatio( - ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidateReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationDelay( - time: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + time: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationEscrowDuration( - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + duration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationRatio( - _liquidationRatio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinimumStakeTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: PromiseOrValue, - _enabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setRateStalePeriod( - period: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + period: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSelfLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSnxLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTargetThreshold( - percent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + percent: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsEnabled( - _tradingRewardsEnabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setWaitingPeriodSecs( - _waitingPeriodSecs: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperBurnFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMaxTokenAmount( - _wrapper: PromiseOrValue, - _maxTokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMintFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise snxLiquidationPenalty(overrides?: CallOverrides): Promise @@ -1808,14 +1697,11 @@ export interface SystemSettings extends BaseContract { waitingPeriodSecs(overrides?: CallOverrides): Promise - wrapperBurnFeeRate(wrapper: PromiseOrValue, overrides?: CallOverrides): Promise + wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise - wrapperMaxTokenAmount( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - wrapperMintFeeRate(wrapper: PromiseOrValue, overrides?: CallOverrides): Promise + wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise callStatic: { CONTRACT_NAME(overrides?: CallOverrides): Promise @@ -1825,41 +1711,35 @@ export interface SystemSettings extends BaseContract { aggregatorWarningFlags(overrides?: CallOverrides): Promise atomicEquivalentForDexPricing( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - atomicExchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise atomicTwapWindow(overrides?: CallOverrides): Promise atomicVolatilityConsiderationWindow( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise atomicVolatilityUpdateThreshold( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - collapseFeeRate( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise crossChainSynthTransferEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise crossDomainMessageGasLimit( - gasLimitType: PromiseOrValue, + gasLimitType: BigNumberish, overrides?: CallOverrides ): Promise @@ -1877,10 +1757,7 @@ export interface SystemSettings extends BaseContract { exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise - exchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise exchangeMaxDynamicFee(overrides?: CallOverrides): Promise @@ -1888,10 +1765,7 @@ export interface SystemSettings extends BaseContract { flagReward(overrides?: CallOverrides): Promise - interactionDelay( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + interactionDelay(collateral: string, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -1909,7 +1783,7 @@ export interface SystemSettings extends BaseContract { minimumStakeTime(overrides?: CallOverrides): Promise - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -1918,7 +1792,7 @@ export interface SystemSettings extends BaseContract { priceDeviationThresholdFactor(overrides?: CallOverrides): Promise pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise @@ -1932,210 +1806,147 @@ export interface SystemSettings extends BaseContract { selfLiquidationPenalty(overrides?: CallOverrides): Promise - setAggregatorWarningFlags( - _flags: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setAggregatorWarningFlags(_flags: string, overrides?: CallOverrides): Promise setAtomicEquivalentForDexPricing( - _currencyKey: PromiseOrValue, - _equivalent: PromiseOrValue, + _currencyKey: BytesLike, + _equivalent: string, overrides?: CallOverrides ): Promise setAtomicExchangeFeeRate( - _currencyKey: PromiseOrValue, - _exchangeFeeRate: PromiseOrValue, + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, overrides?: CallOverrides ): Promise - setAtomicMaxVolumePerBlock( - _maxVolume: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setAtomicMaxVolumePerBlock(_maxVolume: BigNumberish, overrides?: CallOverrides): Promise - setAtomicTwapWindow( - _window: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setAtomicTwapWindow(_window: BigNumberish, overrides?: CallOverrides): Promise setAtomicVolatilityConsiderationWindow( - _currencyKey: PromiseOrValue, - _window: PromiseOrValue, + _currencyKey: BytesLike, + _window: BigNumberish, overrides?: CallOverrides ): Promise setAtomicVolatilityUpdateThreshold( - _currencyKey: PromiseOrValue, - _threshold: PromiseOrValue, + _currencyKey: BytesLike, + _threshold: BigNumberish, overrides?: CallOverrides ): Promise setCollapseFeeRate( - _collateral: PromiseOrValue, - _collapseFeeRate: PromiseOrValue, + _collateral: string, + _collapseFeeRate: BigNumberish, overrides?: CallOverrides ): Promise setCrossChainSynthTransferEnabled( - _currencyKey: PromiseOrValue, - _value: PromiseOrValue, + _currencyKey: BytesLike, + _value: BigNumberish, overrides?: CallOverrides ): Promise setCrossDomainMessageGasLimit( - _gasLimitType: PromiseOrValue, - _crossDomainMessageGasLimit: PromiseOrValue, + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, overrides?: CallOverrides ): Promise - setDebtSnapshotStaleTime( - _seconds: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setDebtSnapshotStaleTime(_seconds: BigNumberish, overrides?: CallOverrides): Promise - setEtherWrapperBurnFeeRate( - _rate: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setEtherWrapperBurnFeeRate(_rate: BigNumberish, overrides?: CallOverrides): Promise - setEtherWrapperMaxETH( - _maxETH: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setEtherWrapperMaxETH(_maxETH: BigNumberish, overrides?: CallOverrides): Promise - setEtherWrapperMintFeeRate( - _rate: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setEtherWrapperMintFeeRate(_rate: BigNumberish, overrides?: CallOverrides): Promise - setExchangeDynamicFeeRounds( - rounds: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setExchangeDynamicFeeRounds(rounds: BigNumberish, overrides?: CallOverrides): Promise setExchangeDynamicFeeThreshold( - threshold: PromiseOrValue, + threshold: BigNumberish, overrides?: CallOverrides ): Promise setExchangeDynamicFeeWeightDecay( - weightDecay: PromiseOrValue, + weightDecay: BigNumberish, overrides?: CallOverrides ): Promise setExchangeFeeRateForSynths( - synthKeys: PromiseOrValue[], - exchangeFeeRates: PromiseOrValue[], + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], overrides?: CallOverrides ): Promise - setExchangeMaxDynamicFee( - maxFee: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setExchangeMaxDynamicFee(maxFee: BigNumberish, overrides?: CallOverrides): Promise - setFeePeriodDuration( - _feePeriodDuration: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setFeePeriodDuration(_feePeriodDuration: BigNumberish, overrides?: CallOverrides): Promise - setFlagReward(reward: PromiseOrValue, overrides?: CallOverrides): Promise + setFlagReward(reward: BigNumberish, overrides?: CallOverrides): Promise setInteractionDelay( - _collateral: PromiseOrValue, - _interactionDelay: PromiseOrValue, + _collateral: string, + _interactionDelay: BigNumberish, overrides?: CallOverrides ): Promise - setIssuanceRatio(ratio: PromiseOrValue, overrides?: CallOverrides): Promise + setIssuanceRatio(ratio: BigNumberish, overrides?: CallOverrides): Promise - setLiquidateReward( - reward: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidateReward(reward: BigNumberish, overrides?: CallOverrides): Promise - setLiquidationDelay( - time: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationDelay(time: BigNumberish, overrides?: CallOverrides): Promise - setLiquidationEscrowDuration( - duration: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationEscrowDuration(duration: BigNumberish, overrides?: CallOverrides): Promise - setLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise - setLiquidationRatio( - _liquidationRatio: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setLiquidationRatio(_liquidationRatio: BigNumberish, overrides?: CallOverrides): Promise - setMinimumStakeTime( - _seconds: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setMinimumStakeTime(_seconds: BigNumberish, overrides?: CallOverrides): Promise setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: PromiseOrValue, + _priceDeviationThresholdFactor: BigNumberish, overrides?: CallOverrides ): Promise setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: PromiseOrValue, - _enabled: PromiseOrValue, + _currencyKey: BytesLike, + _enabled: boolean, overrides?: CallOverrides ): Promise - setRateStalePeriod( - period: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setRateStalePeriod(period: BigNumberish, overrides?: CallOverrides): Promise - setSelfLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setSelfLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise - setSnxLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setSnxLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise - setTargetThreshold( - percent: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setTargetThreshold(percent: BigNumberish, overrides?: CallOverrides): Promise setTradingRewardsEnabled( - _tradingRewardsEnabled: PromiseOrValue, + _tradingRewardsEnabled: boolean, overrides?: CallOverrides ): Promise - setWaitingPeriodSecs( - _waitingPeriodSecs: PromiseOrValue, - overrides?: CallOverrides - ): Promise + setWaitingPeriodSecs(_waitingPeriodSecs: BigNumberish, overrides?: CallOverrides): Promise setWrapperBurnFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, + _wrapper: string, + _rate: BigNumberish, overrides?: CallOverrides ): Promise setWrapperMaxTokenAmount( - _wrapper: PromiseOrValue, - _maxTokenAmount: PromiseOrValue, + _wrapper: string, + _maxTokenAmount: BigNumberish, overrides?: CallOverrides ): Promise setWrapperMintFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, + _wrapper: string, + _rate: BigNumberish, overrides?: CallOverrides ): Promise @@ -2147,20 +1958,11 @@ export interface SystemSettings extends BaseContract { waitingPeriodSecs(overrides?: CallOverrides): Promise - wrapperBurnFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise - wrapperMaxTokenAmount( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - wrapperMintFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise } filters: { @@ -2392,46 +2194,40 @@ export interface SystemSettings extends BaseContract { estimateGas: { CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise aggregatorWarningFlags(overrides?: CallOverrides): Promise atomicEquivalentForDexPricing( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - atomicExchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise atomicTwapWindow(overrides?: CallOverrides): Promise atomicVolatilityConsiderationWindow( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise atomicVolatilityUpdateThreshold( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - collapseFeeRate( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise crossChainSynthTransferEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise crossDomainMessageGasLimit( - gasLimitType: PromiseOrValue, + gasLimitType: BigNumberish, overrides?: CallOverrides ): Promise @@ -2449,10 +2245,7 @@ export interface SystemSettings extends BaseContract { exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise - exchangeFeeRate( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise exchangeMaxDynamicFee(overrides?: CallOverrides): Promise @@ -2460,10 +2253,7 @@ export interface SystemSettings extends BaseContract { flagReward(overrides?: CallOverrides): Promise - interactionDelay( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + interactionDelay(collateral: string, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -2481,10 +2271,7 @@ export interface SystemSettings extends BaseContract { minimumStakeTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -2493,13 +2280,13 @@ export interface SystemSettings extends BaseContract { priceDeviationThresholdFactor(overrides?: CallOverrides): Promise pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise rateStalePeriod(overrides?: CallOverrides): Promise - rebuildCache(overrides?: Overrides & { from?: PromiseOrValue }): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise @@ -2508,216 +2295,216 @@ export interface SystemSettings extends BaseContract { selfLiquidationPenalty(overrides?: CallOverrides): Promise setAggregatorWarningFlags( - _flags: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _flags: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicEquivalentForDexPricing( - _currencyKey: PromiseOrValue, - _equivalent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicExchangeFeeRate( - _currencyKey: PromiseOrValue, - _exchangeFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicMaxVolumePerBlock( - _maxVolume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicTwapWindow( - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityConsiderationWindow( - _currencyKey: PromiseOrValue, - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityUpdateThreshold( - _currencyKey: PromiseOrValue, - _threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCollapseFeeRate( - _collateral: PromiseOrValue, - _collapseFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossChainSynthTransferEnabled( - _currencyKey: PromiseOrValue, - _value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossDomainMessageGasLimit( - _gasLimitType: PromiseOrValue, - _crossDomainMessageGasLimit: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setDebtSnapshotStaleTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperBurnFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMaxETH( - _maxETH: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMintFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeRounds( - rounds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + rounds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeThreshold( - threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeWeightDecay( - weightDecay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeFeeRateForSynths( - synthKeys: PromiseOrValue[], - exchangeFeeRates: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } ): Promise setExchangeMaxDynamicFee( - maxFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFeePeriodDuration( - _feePeriodDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFlagReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setInteractionDelay( - _collateral: PromiseOrValue, - _interactionDelay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setIssuanceRatio( - ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidateReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationDelay( - time: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + time: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationEscrowDuration( - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + duration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationRatio( - _liquidationRatio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinimumStakeTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: PromiseOrValue, - _enabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setRateStalePeriod( - period: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + period: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSelfLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSnxLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTargetThreshold( - percent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + percent: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsEnabled( - _tradingRewardsEnabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setWaitingPeriodSecs( - _waitingPeriodSecs: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperBurnFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMaxTokenAmount( - _wrapper: PromiseOrValue, - _maxTokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMintFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise snxLiquidationPenalty(overrides?: CallOverrides): Promise @@ -2728,38 +2515,27 @@ export interface SystemSettings extends BaseContract { waitingPeriodSecs(overrides?: CallOverrides): Promise - wrapperBurnFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise - wrapperMaxTokenAmount( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - wrapperMintFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise } populateTransaction: { CONTRACT_NAME(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + acceptOwnership(overrides?: Overrides & { from?: string }): Promise aggregatorWarningFlags(overrides?: CallOverrides): Promise atomicEquivalentForDexPricing( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise atomicExchangeFeeRate( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise @@ -2768,27 +2544,24 @@ export interface SystemSettings extends BaseContract { atomicTwapWindow(overrides?: CallOverrides): Promise atomicVolatilityConsiderationWindow( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise atomicVolatilityUpdateThreshold( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise - collapseFeeRate( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise crossChainSynthTransferEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise crossDomainMessageGasLimit( - gasLimitType: PromiseOrValue, + gasLimitType: BigNumberish, overrides?: CallOverrides ): Promise @@ -2807,7 +2580,7 @@ export interface SystemSettings extends BaseContract { exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise exchangeFeeRate( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise @@ -2817,10 +2590,7 @@ export interface SystemSettings extends BaseContract { flagReward(overrides?: CallOverrides): Promise - interactionDelay( - collateral: PromiseOrValue, - overrides?: CallOverrides - ): Promise + interactionDelay(collateral: string, overrides?: CallOverrides): Promise isResolverCached(overrides?: CallOverrides): Promise @@ -2839,8 +2609,8 @@ export interface SystemSettings extends BaseContract { minimumStakeTime(overrides?: CallOverrides): Promise nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _owner: string, + overrides?: Overrides & { from?: string } ): Promise nominatedOwner(overrides?: CallOverrides): Promise @@ -2850,15 +2620,13 @@ export interface SystemSettings extends BaseContract { priceDeviationThresholdFactor(overrides?: CallOverrides): Promise pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: PromiseOrValue, + currencyKey: BytesLike, overrides?: CallOverrides ): Promise rateStalePeriod(overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise resolver(overrides?: CallOverrides): Promise @@ -2867,216 +2635,216 @@ export interface SystemSettings extends BaseContract { selfLiquidationPenalty(overrides?: CallOverrides): Promise setAggregatorWarningFlags( - _flags: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _flags: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicEquivalentForDexPricing( - _currencyKey: PromiseOrValue, - _equivalent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } ): Promise setAtomicExchangeFeeRate( - _currencyKey: PromiseOrValue, - _exchangeFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicMaxVolumePerBlock( - _maxVolume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicTwapWindow( - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityConsiderationWindow( - _currencyKey: PromiseOrValue, - _window: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setAtomicVolatilityUpdateThreshold( - _currencyKey: PromiseOrValue, - _threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCollapseFeeRate( - _collateral: PromiseOrValue, - _collapseFeeRate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossChainSynthTransferEnabled( - _currencyKey: PromiseOrValue, - _value: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setCrossDomainMessageGasLimit( - _gasLimitType: PromiseOrValue, - _crossDomainMessageGasLimit: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setDebtSnapshotStaleTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperBurnFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMaxETH( - _maxETH: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setEtherWrapperMintFeeRate( - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeRounds( - rounds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + rounds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeThreshold( - threshold: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + threshold: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeDynamicFeeWeightDecay( - weightDecay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setExchangeFeeRateForSynths( - synthKeys: PromiseOrValue[], - exchangeFeeRates: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } ): Promise setExchangeMaxDynamicFee( - maxFee: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFeePeriodDuration( - _feePeriodDuration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setFlagReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setInteractionDelay( - _collateral: PromiseOrValue, - _interactionDelay: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setIssuanceRatio( - ratio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + ratio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidateReward( - reward: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + reward: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationDelay( - time: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + time: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationEscrowDuration( - duration: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + duration: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setLiquidationRatio( - _liquidationRatio: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setMinimumStakeTime( - _seconds: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: PromiseOrValue, - _enabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setRateStalePeriod( - period: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + period: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSelfLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setSnxLiquidationPenalty( - penalty: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + penalty: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTargetThreshold( - percent: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + percent: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setTradingRewardsEnabled( - _tradingRewardsEnabled: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } ): Promise setWaitingPeriodSecs( - _waitingPeriodSecs: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperBurnFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMaxTokenAmount( - _wrapper: PromiseOrValue, - _maxTokenAmount: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise setWrapperMintFeeRate( - _wrapper: PromiseOrValue, - _rate: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } ): Promise snxLiquidationPenalty(overrides?: CallOverrides): Promise @@ -3087,19 +2855,10 @@ export interface SystemSettings extends BaseContract { waitingPeriodSecs(overrides?: CallOverrides): Promise - wrapperBurnFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise - wrapperMaxTokenAmount( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - wrapperMintFeeRate( - wrapper: PromiseOrValue, - overrides?: CallOverrides - ): Promise + wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise } } diff --git a/packages/sdk/src/contracts/types/SystemStatus.ts b/packages/sdk/src/contracts/types/SystemStatus.ts index d70d9f46bd..6c0eb6b3a9 100644 --- a/packages/sdk/src/contracts/types/SystemStatus.ts +++ b/packages/sdk/src/contracts/types/SystemStatus.ts @@ -2,1842 +2,2232 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SystemStatusInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'SECTION_EXCHANGE()': FunctionFragment - 'SECTION_FUTURES()': FunctionFragment - 'SECTION_ISSUANCE()': FunctionFragment - 'SECTION_SYNTH()': FunctionFragment - 'SECTION_SYNTH_EXCHANGE()': FunctionFragment - 'SECTION_SYSTEM()': FunctionFragment - 'SUSPENSION_REASON_UPGRADE()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'accessControl(bytes32,address)': FunctionFragment - 'exchangeSuspension()': FunctionFragment - 'futuresMarketSuspension(bytes32)': FunctionFragment - 'futuresSuspension()': FunctionFragment - 'getFuturesMarketSuspensions(bytes32[])': FunctionFragment - 'getSynthExchangeSuspensions(bytes32[])': FunctionFragment - 'getSynthSuspensions(bytes32[])': FunctionFragment - 'isSystemUpgrading()': FunctionFragment - 'issuanceSuspension()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'requireExchangeActive()': FunctionFragment - 'requireExchangeBetweenSynthsAllowed(bytes32,bytes32)': FunctionFragment - 'requireFuturesActive()': FunctionFragment - 'requireFuturesMarketActive(bytes32)': FunctionFragment - 'requireIssuanceActive()': FunctionFragment - 'requireSynthActive(bytes32)': FunctionFragment - 'requireSynthExchangeActive(bytes32)': FunctionFragment - 'requireSynthsActive(bytes32,bytes32)': FunctionFragment - 'requireSystemActive()': FunctionFragment - 'resumeExchange()': FunctionFragment - 'resumeFutures()': FunctionFragment - 'resumeFuturesMarket(bytes32)': FunctionFragment - 'resumeFuturesMarkets(bytes32[])': FunctionFragment - 'resumeIssuance()': FunctionFragment - 'resumeSynth(bytes32)': FunctionFragment - 'resumeSynthExchange(bytes32)': FunctionFragment - 'resumeSynths(bytes32[])': FunctionFragment - 'resumeSynthsExchange(bytes32[])': FunctionFragment - 'resumeSystem()': FunctionFragment - 'suspendExchange(uint256)': FunctionFragment - 'suspendFutures(uint256)': FunctionFragment - 'suspendFuturesMarket(bytes32,uint256)': FunctionFragment - 'suspendFuturesMarkets(bytes32[],uint256)': FunctionFragment - 'suspendIssuance(uint256)': FunctionFragment - 'suspendSynth(bytes32,uint256)': FunctionFragment - 'suspendSynthExchange(bytes32,uint256)': FunctionFragment - 'suspendSynths(bytes32[],uint256)': FunctionFragment - 'suspendSynthsExchange(bytes32[],uint256)': FunctionFragment - 'suspendSystem(uint256)': FunctionFragment - 'synthExchangeSuspension(bytes32)': FunctionFragment - 'synthSuspended(bytes32)': FunctionFragment - 'synthSuspension(bytes32)': FunctionFragment - 'systemSuspended()': FunctionFragment - 'systemSuspension()': FunctionFragment - 'updateAccessControl(bytes32,address,bool,bool)': FunctionFragment - 'updateAccessControls(bytes32[],address[],bool[],bool[])': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'SECTION_EXCHANGE' - | 'SECTION_FUTURES' - | 'SECTION_ISSUANCE' - | 'SECTION_SYNTH' - | 'SECTION_SYNTH_EXCHANGE' - | 'SECTION_SYSTEM' - | 'SUSPENSION_REASON_UPGRADE' - | 'acceptOwnership' - | 'accessControl' - | 'exchangeSuspension' - | 'futuresMarketSuspension' - | 'futuresSuspension' - | 'getFuturesMarketSuspensions' - | 'getSynthExchangeSuspensions' - | 'getSynthSuspensions' - | 'isSystemUpgrading' - | 'issuanceSuspension' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'requireExchangeActive' - | 'requireExchangeBetweenSynthsAllowed' - | 'requireFuturesActive' - | 'requireFuturesMarketActive' - | 'requireIssuanceActive' - | 'requireSynthActive' - | 'requireSynthExchangeActive' - | 'requireSynthsActive' - | 'requireSystemActive' - | 'resumeExchange' - | 'resumeFutures' - | 'resumeFuturesMarket' - | 'resumeFuturesMarkets' - | 'resumeIssuance' - | 'resumeSynth' - | 'resumeSynthExchange' - | 'resumeSynths' - | 'resumeSynthsExchange' - | 'resumeSystem' - | 'suspendExchange' - | 'suspendFutures' - | 'suspendFuturesMarket' - | 'suspendFuturesMarkets' - | 'suspendIssuance' - | 'suspendSynth' - | 'suspendSynthExchange' - | 'suspendSynths' - | 'suspendSynthsExchange' - | 'suspendSystem' - | 'synthExchangeSuspension' - | 'synthSuspended' - | 'synthSuspension' - | 'systemSuspended' - | 'systemSuspension' - | 'updateAccessControl' - | 'updateAccessControls' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_EXCHANGE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_FUTURES', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_ISSUANCE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYNTH', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYNTH_EXCHANGE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYSTEM', values?: undefined): string - encodeFunctionData(functionFragment: 'SUSPENSION_REASON_UPGRADE', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'accessControl', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'exchangeSuspension', values?: undefined): string - encodeFunctionData( - functionFragment: 'futuresMarketSuspension', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'futuresSuspension', values?: undefined): string - encodeFunctionData( - functionFragment: 'getFuturesMarketSuspensions', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'getSynthExchangeSuspensions', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'getSynthSuspensions', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'isSystemUpgrading', values?: undefined): string - encodeFunctionData(functionFragment: 'issuanceSuspension', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'requireExchangeActive', values?: undefined): string - encodeFunctionData( - functionFragment: 'requireExchangeBetweenSynthsAllowed', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'requireFuturesActive', values?: undefined): string - encodeFunctionData( - functionFragment: 'requireFuturesMarketActive', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'requireIssuanceActive', values?: undefined): string - encodeFunctionData( - functionFragment: 'requireSynthActive', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'requireSynthExchangeActive', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'requireSynthsActive', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'requireSystemActive', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeExchange', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeFutures', values?: undefined): string - encodeFunctionData( - functionFragment: 'resumeFuturesMarket', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'resumeFuturesMarkets', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'resumeIssuance', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeSynth', values: [PromiseOrValue]): string - encodeFunctionData( - functionFragment: 'resumeSynthExchange', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'resumeSynths', - values: [PromiseOrValue[]] - ): string - encodeFunctionData( - functionFragment: 'resumeSynthsExchange', - values: [PromiseOrValue[]] - ): string - encodeFunctionData(functionFragment: 'resumeSystem', values?: undefined): string - encodeFunctionData( - functionFragment: 'suspendExchange', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendFutures', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendFuturesMarket', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendFuturesMarkets', - values: [PromiseOrValue[], PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendIssuance', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendSynth', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendSynthExchange', - values: [PromiseOrValue, PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendSynths', - values: [PromiseOrValue[], PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendSynthsExchange', - values: [PromiseOrValue[], PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'suspendSystem', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'synthExchangeSuspension', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'synthSuspended', - values: [PromiseOrValue] - ): string - encodeFunctionData( - functionFragment: 'synthSuspension', - values: [PromiseOrValue] - ): string - encodeFunctionData(functionFragment: 'systemSuspended', values?: undefined): string - encodeFunctionData(functionFragment: 'systemSuspension', values?: undefined): string - encodeFunctionData( - functionFragment: 'updateAccessControl', - values: [ - PromiseOrValue, - PromiseOrValue, - PromiseOrValue, - PromiseOrValue - ] - ): string - encodeFunctionData( - functionFragment: 'updateAccessControls', - values: [ - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue[], - PromiseOrValue[] - ] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_EXCHANGE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_FUTURES', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_ISSUANCE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYNTH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYNTH_EXCHANGE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYSTEM', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SUSPENSION_REASON_UPGRADE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accessControl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'futuresMarketSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'futuresSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFuturesMarketSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSynthExchangeSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSynthSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isSystemUpgrading', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issuanceSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireExchangeActive', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'requireExchangeBetweenSynthsAllowed', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'requireFuturesActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireFuturesMarketActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireIssuanceActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthExchangeActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthsActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSystemActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFutures', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFuturesMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFuturesMarkets', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeIssuance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynthsExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFutures', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFuturesMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFuturesMarkets', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendIssuance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynthsExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthExchangeSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthSuspended', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'systemSuspended', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'systemSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateAccessControl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateAccessControls', data: BytesLike): Result - - events: { - 'AccessControlUpdated(bytes32,address,bool,bool)': EventFragment - 'ExchangeResumed(uint256)': EventFragment - 'ExchangeSuspended(uint256)': EventFragment - 'FuturesMarketResumed(bytes32,uint256)': EventFragment - 'FuturesMarketSuspended(bytes32,uint256)': EventFragment - 'FuturesResumed(uint256)': EventFragment - 'FuturesSuspended(uint256)': EventFragment - 'IssuanceResumed(uint256)': EventFragment - 'IssuanceSuspended(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'SynthExchangeResumed(bytes32,uint256)': EventFragment - 'SynthExchangeSuspended(bytes32,uint256)': EventFragment - 'SynthResumed(bytes32,uint256)': EventFragment - 'SynthSuspended(bytes32,uint256)': EventFragment - 'SystemResumed(uint256)': EventFragment - 'SystemSuspended(uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccessControlUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesMarketResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesMarketSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'IssuanceResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'IssuanceSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchangeResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchangeSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SystemResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SystemSuspended'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "SECTION_EXCHANGE()": FunctionFragment; + "SECTION_FUTURES()": FunctionFragment; + "SECTION_ISSUANCE()": FunctionFragment; + "SECTION_SYNTH()": FunctionFragment; + "SECTION_SYNTH_EXCHANGE()": FunctionFragment; + "SECTION_SYSTEM()": FunctionFragment; + "SUSPENSION_REASON_UPGRADE()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "accessControl(bytes32,address)": FunctionFragment; + "exchangeSuspension()": FunctionFragment; + "futuresMarketSuspension(bytes32)": FunctionFragment; + "futuresSuspension()": FunctionFragment; + "getFuturesMarketSuspensions(bytes32[])": FunctionFragment; + "getSynthExchangeSuspensions(bytes32[])": FunctionFragment; + "getSynthSuspensions(bytes32[])": FunctionFragment; + "isSystemUpgrading()": FunctionFragment; + "issuanceSuspension()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "requireExchangeActive()": FunctionFragment; + "requireExchangeBetweenSynthsAllowed(bytes32,bytes32)": FunctionFragment; + "requireFuturesActive()": FunctionFragment; + "requireFuturesMarketActive(bytes32)": FunctionFragment; + "requireIssuanceActive()": FunctionFragment; + "requireSynthActive(bytes32)": FunctionFragment; + "requireSynthExchangeActive(bytes32)": FunctionFragment; + "requireSynthsActive(bytes32,bytes32)": FunctionFragment; + "requireSystemActive()": FunctionFragment; + "resumeExchange()": FunctionFragment; + "resumeFutures()": FunctionFragment; + "resumeFuturesMarket(bytes32)": FunctionFragment; + "resumeFuturesMarkets(bytes32[])": FunctionFragment; + "resumeIssuance()": FunctionFragment; + "resumeSynth(bytes32)": FunctionFragment; + "resumeSynthExchange(bytes32)": FunctionFragment; + "resumeSynths(bytes32[])": FunctionFragment; + "resumeSynthsExchange(bytes32[])": FunctionFragment; + "resumeSystem()": FunctionFragment; + "suspendExchange(uint256)": FunctionFragment; + "suspendFutures(uint256)": FunctionFragment; + "suspendFuturesMarket(bytes32,uint256)": FunctionFragment; + "suspendFuturesMarkets(bytes32[],uint256)": FunctionFragment; + "suspendIssuance(uint256)": FunctionFragment; + "suspendSynth(bytes32,uint256)": FunctionFragment; + "suspendSynthExchange(bytes32,uint256)": FunctionFragment; + "suspendSynths(bytes32[],uint256)": FunctionFragment; + "suspendSynthsExchange(bytes32[],uint256)": FunctionFragment; + "suspendSystem(uint256)": FunctionFragment; + "synthExchangeSuspension(bytes32)": FunctionFragment; + "synthSuspended(bytes32)": FunctionFragment; + "synthSuspension(bytes32)": FunctionFragment; + "systemSuspended()": FunctionFragment; + "systemSuspension()": FunctionFragment; + "updateAccessControl(bytes32,address,bool,bool)": FunctionFragment; + "updateAccessControls(bytes32[],address[],bool[],bool[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "SECTION_EXCHANGE" + | "SECTION_FUTURES" + | "SECTION_ISSUANCE" + | "SECTION_SYNTH" + | "SECTION_SYNTH_EXCHANGE" + | "SECTION_SYSTEM" + | "SUSPENSION_REASON_UPGRADE" + | "acceptOwnership" + | "accessControl" + | "exchangeSuspension" + | "futuresMarketSuspension" + | "futuresSuspension" + | "getFuturesMarketSuspensions" + | "getSynthExchangeSuspensions" + | "getSynthSuspensions" + | "isSystemUpgrading" + | "issuanceSuspension" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "requireExchangeActive" + | "requireExchangeBetweenSynthsAllowed" + | "requireFuturesActive" + | "requireFuturesMarketActive" + | "requireIssuanceActive" + | "requireSynthActive" + | "requireSynthExchangeActive" + | "requireSynthsActive" + | "requireSystemActive" + | "resumeExchange" + | "resumeFutures" + | "resumeFuturesMarket" + | "resumeFuturesMarkets" + | "resumeIssuance" + | "resumeSynth" + | "resumeSynthExchange" + | "resumeSynths" + | "resumeSynthsExchange" + | "resumeSystem" + | "suspendExchange" + | "suspendFutures" + | "suspendFuturesMarket" + | "suspendFuturesMarkets" + | "suspendIssuance" + | "suspendSynth" + | "suspendSynthExchange" + | "suspendSynths" + | "suspendSynthsExchange" + | "suspendSystem" + | "synthExchangeSuspension" + | "synthSuspended" + | "synthSuspension" + | "systemSuspended" + | "systemSuspension" + | "updateAccessControl" + | "updateAccessControls" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_EXCHANGE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_FUTURES", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_ISSUANCE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYNTH", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYNTH_EXCHANGE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYSTEM", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SUSPENSION_REASON_UPGRADE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accessControl", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "exchangeSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "futuresMarketSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "futuresSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getFuturesMarketSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getSynthExchangeSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getSynthSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "isSystemUpgrading", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issuanceSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "requireExchangeActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireExchangeBetweenSynthsAllowed", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireFuturesActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireFuturesMarketActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireIssuanceActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireSynthActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSynthExchangeActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSynthsActive", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSystemActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeExchange", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeFutures", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeFuturesMarket", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeFuturesMarkets", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeIssuance", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeSynth", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeSynthExchange", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeSynths", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeSynthsExchange", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeSystem", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "suspendExchange", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFutures", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFuturesMarket", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFuturesMarkets", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendIssuance", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynth", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynthExchange", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynths", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynthsExchange", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSystem", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "synthExchangeSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthSuspended", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "systemSuspended", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "systemSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "updateAccessControl", + values: [BytesLike, string, boolean, boolean] + ): string; + encodeFunctionData( + functionFragment: "updateAccessControls", + values: [BytesLike[], string[], boolean[], boolean[]] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_EXCHANGE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_FUTURES", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_ISSUANCE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYNTH", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYNTH_EXCHANGE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYSTEM", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SUSPENSION_REASON_UPGRADE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accessControl", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "futuresMarketSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "futuresSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFuturesMarketSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthExchangeSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isSystemUpgrading", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issuanceSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "requireExchangeActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireExchangeBetweenSynthsAllowed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireFuturesActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireFuturesMarketActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireIssuanceActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthExchangeActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthsActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSystemActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFutures", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFuturesMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFuturesMarkets", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeIssuance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynth", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynthsExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFutures", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFuturesMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFuturesMarkets", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendIssuance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynth", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynthsExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthExchangeSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthSuspended", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "systemSuspended", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "systemSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateAccessControl", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateAccessControls", + data: BytesLike + ): Result; + + events: { + "AccessControlUpdated(bytes32,address,bool,bool)": EventFragment; + "ExchangeResumed(uint256)": EventFragment; + "ExchangeSuspended(uint256)": EventFragment; + "FuturesMarketResumed(bytes32,uint256)": EventFragment; + "FuturesMarketSuspended(bytes32,uint256)": EventFragment; + "FuturesResumed(uint256)": EventFragment; + "FuturesSuspended(uint256)": EventFragment; + "IssuanceResumed(uint256)": EventFragment; + "IssuanceSuspended(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "SynthExchangeResumed(bytes32,uint256)": EventFragment; + "SynthExchangeSuspended(bytes32,uint256)": EventFragment; + "SynthResumed(bytes32,uint256)": EventFragment; + "SynthSuspended(bytes32,uint256)": EventFragment; + "SystemResumed(uint256)": EventFragment; + "SystemSuspended(uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccessControlUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesMarketResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesMarketSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "IssuanceResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "IssuanceSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchangeResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchangeSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SystemResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SystemSuspended"): EventFragment; } export interface AccessControlUpdatedEventObject { - section: string - account: string - canSuspend: boolean - canResume: boolean + section: string; + account: string; + canSuspend: boolean; + canResume: boolean; } export type AccessControlUpdatedEvent = TypedEvent< - [string, string, boolean, boolean], - AccessControlUpdatedEventObject -> + [string, string, boolean, boolean], + AccessControlUpdatedEventObject +>; -export type AccessControlUpdatedEventFilter = TypedEventFilter +export type AccessControlUpdatedEventFilter = + TypedEventFilter; export interface ExchangeResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type ExchangeResumedEvent = TypedEvent<[BigNumber], ExchangeResumedEventObject> +export type ExchangeResumedEvent = TypedEvent< + [BigNumber], + ExchangeResumedEventObject +>; -export type ExchangeResumedEventFilter = TypedEventFilter +export type ExchangeResumedEventFilter = TypedEventFilter; export interface ExchangeSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type ExchangeSuspendedEvent = TypedEvent<[BigNumber], ExchangeSuspendedEventObject> +export type ExchangeSuspendedEvent = TypedEvent< + [BigNumber], + ExchangeSuspendedEventObject +>; -export type ExchangeSuspendedEventFilter = TypedEventFilter +export type ExchangeSuspendedEventFilter = + TypedEventFilter; export interface FuturesMarketResumedEventObject { - marketKey: string - reason: BigNumber + marketKey: string; + reason: BigNumber; } export type FuturesMarketResumedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketResumedEventObject -> + [string, BigNumber], + FuturesMarketResumedEventObject +>; -export type FuturesMarketResumedEventFilter = TypedEventFilter +export type FuturesMarketResumedEventFilter = + TypedEventFilter; export interface FuturesMarketSuspendedEventObject { - marketKey: string - reason: BigNumber + marketKey: string; + reason: BigNumber; } export type FuturesMarketSuspendedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketSuspendedEventObject -> + [string, BigNumber], + FuturesMarketSuspendedEventObject +>; -export type FuturesMarketSuspendedEventFilter = TypedEventFilter +export type FuturesMarketSuspendedEventFilter = + TypedEventFilter; export interface FuturesResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type FuturesResumedEvent = TypedEvent<[BigNumber], FuturesResumedEventObject> +export type FuturesResumedEvent = TypedEvent< + [BigNumber], + FuturesResumedEventObject +>; -export type FuturesResumedEventFilter = TypedEventFilter +export type FuturesResumedEventFilter = TypedEventFilter; export interface FuturesSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type FuturesSuspendedEvent = TypedEvent<[BigNumber], FuturesSuspendedEventObject> +export type FuturesSuspendedEvent = TypedEvent< + [BigNumber], + FuturesSuspendedEventObject +>; -export type FuturesSuspendedEventFilter = TypedEventFilter +export type FuturesSuspendedEventFilter = + TypedEventFilter; export interface IssuanceResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type IssuanceResumedEvent = TypedEvent<[BigNumber], IssuanceResumedEventObject> +export type IssuanceResumedEvent = TypedEvent< + [BigNumber], + IssuanceResumedEventObject +>; -export type IssuanceResumedEventFilter = TypedEventFilter +export type IssuanceResumedEventFilter = TypedEventFilter; export interface IssuanceSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type IssuanceSuspendedEvent = TypedEvent<[BigNumber], IssuanceSuspendedEventObject> +export type IssuanceSuspendedEvent = TypedEvent< + [BigNumber], + IssuanceSuspendedEventObject +>; -export type IssuanceSuspendedEventFilter = TypedEventFilter +export type IssuanceSuspendedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface SynthExchangeResumedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } export type SynthExchangeResumedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeResumedEventObject -> + [string, BigNumber], + SynthExchangeResumedEventObject +>; -export type SynthExchangeResumedEventFilter = TypedEventFilter +export type SynthExchangeResumedEventFilter = + TypedEventFilter; export interface SynthExchangeSuspendedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } export type SynthExchangeSuspendedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeSuspendedEventObject -> + [string, BigNumber], + SynthExchangeSuspendedEventObject +>; -export type SynthExchangeSuspendedEventFilter = TypedEventFilter +export type SynthExchangeSuspendedEventFilter = + TypedEventFilter; export interface SynthResumedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } -export type SynthResumedEvent = TypedEvent<[string, BigNumber], SynthResumedEventObject> +export type SynthResumedEvent = TypedEvent< + [string, BigNumber], + SynthResumedEventObject +>; -export type SynthResumedEventFilter = TypedEventFilter +export type SynthResumedEventFilter = TypedEventFilter; export interface SynthSuspendedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } -export type SynthSuspendedEvent = TypedEvent<[string, BigNumber], SynthSuspendedEventObject> +export type SynthSuspendedEvent = TypedEvent< + [string, BigNumber], + SynthSuspendedEventObject +>; -export type SynthSuspendedEventFilter = TypedEventFilter +export type SynthSuspendedEventFilter = TypedEventFilter; export interface SystemResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type SystemResumedEvent = TypedEvent<[BigNumber], SystemResumedEventObject> +export type SystemResumedEvent = TypedEvent< + [BigNumber], + SystemResumedEventObject +>; -export type SystemResumedEventFilter = TypedEventFilter +export type SystemResumedEventFilter = TypedEventFilter; export interface SystemSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type SystemSuspendedEvent = TypedEvent<[BigNumber], SystemSuspendedEventObject> +export type SystemSuspendedEvent = TypedEvent< + [BigNumber], + SystemSuspendedEventObject +>; -export type SystemSuspendedEventFilter = TypedEventFilter +export type SystemSuspendedEventFilter = TypedEventFilter; export interface SystemStatus extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SystemStatusInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]> - - SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]> - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]> - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]> - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accessControl( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthExchangeSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]> - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - requireExchangeActive(overrides?: CallOverrides): Promise<[void]> - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]> - - requireFuturesActive(overrides?: CallOverrides): Promise<[void]> - - requireFuturesMarketActive( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]> - - requireIssuanceActive(overrides?: CallOverrides): Promise<[void]> - - requireSynthActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]> - - requireSynthExchangeActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]> - - requireSynthsActive( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[void]> - - requireSystemActive(overrides?: CallOverrides): Promise<[void]> - - resumeExchange( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFutures( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarket( - marketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarkets( - marketKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeIssuance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynth( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthExchange( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynths( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthsExchange( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSystem( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendExchange( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFutures( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarket( - marketKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarkets( - marketKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendIssuance( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynth( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthExchange( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynths( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthsExchange( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSystem( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - synthExchangeSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean]> - - synthSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise<[boolean]> - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: PromiseOrValue, - account: PromiseOrValue, - canSuspend: PromiseOrValue, - canResume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - updateAccessControls( - sections: PromiseOrValue[], - accounts: PromiseOrValue[], - canSuspends: PromiseOrValue[], - canResumes: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - accessControl( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> - - getSynthExchangeSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthExchangeActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthsActive( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFutures( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarket( - marketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarkets( - marketKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeIssuance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynth( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthExchange( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynths( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthsExchange( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSystem( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendExchange( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFutures( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarket( - marketKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarkets( - marketKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendIssuance( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynth( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthExchange( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynths( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthsExchange( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSystem( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - synthExchangeSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: PromiseOrValue, - account: PromiseOrValue, - canSuspend: PromiseOrValue, - canResume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - updateAccessControls( - sections: PromiseOrValue[], - accounts: PromiseOrValue[], - canSuspends: PromiseOrValue[], - canResumes: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - accessControl( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthExchangeSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner(_owner: PromiseOrValue, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthExchangeActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthsActive( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange(overrides?: CallOverrides): Promise - - resumeFutures(overrides?: CallOverrides): Promise - - resumeFuturesMarket( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resumeFuturesMarkets( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - resumeIssuance(overrides?: CallOverrides): Promise - - resumeSynth(currencyKey: PromiseOrValue, overrides?: CallOverrides): Promise - - resumeSynthExchange( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - resumeSynths( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - resumeSynthsExchange( - currencyKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - resumeSystem(overrides?: CallOverrides): Promise - - suspendExchange(reason: PromiseOrValue, overrides?: CallOverrides): Promise - - suspendFutures(reason: PromiseOrValue, overrides?: CallOverrides): Promise - - suspendFuturesMarket( - marketKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendFuturesMarkets( - marketKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendIssuance(reason: PromiseOrValue, overrides?: CallOverrides): Promise - - suspendSynth( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendSynthExchange( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendSynths( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendSynthsExchange( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - suspendSystem(reason: PromiseOrValue, overrides?: CallOverrides): Promise - - synthExchangeSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: PromiseOrValue, - account: PromiseOrValue, - canSuspend: PromiseOrValue, - canResume: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - updateAccessControls( - sections: PromiseOrValue[], - accounts: PromiseOrValue[], - canSuspends: PromiseOrValue[], - canResumes: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AccessControlUpdated(bytes32,address,bool,bool)'( - section?: PromiseOrValue | null, - account?: PromiseOrValue | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter - AccessControlUpdated( - section?: PromiseOrValue | null, - account?: PromiseOrValue | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter - - 'ExchangeResumed(uint256)'(reason?: null): ExchangeResumedEventFilter - ExchangeResumed(reason?: null): ExchangeResumedEventFilter - - 'ExchangeSuspended(uint256)'(reason?: null): ExchangeSuspendedEventFilter - ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter - - 'FuturesMarketResumed(bytes32,uint256)'( - marketKey?: null, - reason?: null - ): FuturesMarketResumedEventFilter - FuturesMarketResumed(marketKey?: null, reason?: null): FuturesMarketResumedEventFilter - - 'FuturesMarketSuspended(bytes32,uint256)'( - marketKey?: null, - reason?: null - ): FuturesMarketSuspendedEventFilter - FuturesMarketSuspended(marketKey?: null, reason?: null): FuturesMarketSuspendedEventFilter - - 'FuturesResumed(uint256)'(reason?: null): FuturesResumedEventFilter - FuturesResumed(reason?: null): FuturesResumedEventFilter - - 'FuturesSuspended(uint256)'(reason?: null): FuturesSuspendedEventFilter - FuturesSuspended(reason?: null): FuturesSuspendedEventFilter - - 'IssuanceResumed(uint256)'(reason?: null): IssuanceResumedEventFilter - IssuanceResumed(reason?: null): IssuanceResumedEventFilter - - 'IssuanceSuspended(uint256)'(reason?: null): IssuanceSuspendedEventFilter - IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'SynthExchangeResumed(bytes32,uint256)'( - currencyKey?: null, - reason?: null - ): SynthExchangeResumedEventFilter - SynthExchangeResumed(currencyKey?: null, reason?: null): SynthExchangeResumedEventFilter - - 'SynthExchangeSuspended(bytes32,uint256)'( - currencyKey?: null, - reason?: null - ): SynthExchangeSuspendedEventFilter - SynthExchangeSuspended(currencyKey?: null, reason?: null): SynthExchangeSuspendedEventFilter - - 'SynthResumed(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthResumedEventFilter - SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter - - 'SynthSuspended(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthSuspendedEventFilter - SynthSuspended(currencyKey?: null, reason?: null): SynthSuspendedEventFilter - - 'SystemResumed(uint256)'(reason?: null): SystemResumedEventFilter - SystemResumed(reason?: null): SystemResumedEventFilter - - 'SystemSuspended(uint256)'(reason?: null): SystemSuspendedEventFilter - SystemSuspended(reason?: null): SystemSuspendedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - accessControl( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - exchangeSuspension(overrides?: CallOverrides): Promise - - futuresMarketSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - futuresSuspension(overrides?: CallOverrides): Promise - - getFuturesMarketSuspensions( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getSynthExchangeSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - getSynthSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthExchangeActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthsActive( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - resumeFutures(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - resumeFuturesMarket( - marketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarkets( - marketKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeIssuance(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - resumeSynth( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthExchange( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynths( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthsExchange( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSystem(overrides?: Overrides & { from?: PromiseOrValue }): Promise - - suspendExchange( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFutures( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarket( - marketKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarkets( - marketKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendIssuance( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynth( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthExchange( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynths( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthsExchange( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSystem( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - synthExchangeSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspended( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspension(arg0: PromiseOrValue, overrides?: CallOverrides): Promise - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension(overrides?: CallOverrides): Promise - - updateAccessControl( - section: PromiseOrValue, - account: PromiseOrValue, - canSuspend: PromiseOrValue, - canResume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - updateAccessControls( - sections: PromiseOrValue[], - accounts: PromiseOrValue[], - canSuspends: PromiseOrValue[], - canResumes: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SystemStatusInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]>; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]>; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise< + [boolean, boolean] & { canSuspend: boolean; canResume: boolean } + >; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]>; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + requireExchangeActive(overrides?: CallOverrides): Promise<[void]>; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireFuturesActive(overrides?: CallOverrides): Promise<[void]>; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireIssuanceActive(overrides?: CallOverrides): Promise<[void]>; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSystemActive(overrides?: CallOverrides): Promise<[void]>; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + systemSuspended(overrides?: CallOverrides): Promise<[boolean]>; + + systemSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }>; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + futuresSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive(overrides?: CallOverrides): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive(overrides?: CallOverrides): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive(overrides?: CallOverrides): Promise; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise< + [boolean, boolean] & { canSuspend: boolean; canResume: boolean } + >; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive(overrides?: CallOverrides): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive(overrides?: CallOverrides): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive(overrides?: CallOverrides): Promise; + + resumeExchange(overrides?: CallOverrides): Promise; + + resumeFutures(overrides?: CallOverrides): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeIssuance(overrides?: CallOverrides): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeSystem(overrides?: CallOverrides): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: CallOverrides + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccessControlUpdated(bytes32,address,bool,bool)"( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter; + AccessControlUpdated( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter; + + "ExchangeResumed(uint256)"(reason?: null): ExchangeResumedEventFilter; + ExchangeResumed(reason?: null): ExchangeResumedEventFilter; + + "ExchangeSuspended(uint256)"(reason?: null): ExchangeSuspendedEventFilter; + ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter; + + "FuturesMarketResumed(bytes32,uint256)"( + marketKey?: null, + reason?: null + ): FuturesMarketResumedEventFilter; + FuturesMarketResumed( + marketKey?: null, + reason?: null + ): FuturesMarketResumedEventFilter; + + "FuturesMarketSuspended(bytes32,uint256)"( + marketKey?: null, + reason?: null + ): FuturesMarketSuspendedEventFilter; + FuturesMarketSuspended( + marketKey?: null, + reason?: null + ): FuturesMarketSuspendedEventFilter; + + "FuturesResumed(uint256)"(reason?: null): FuturesResumedEventFilter; + FuturesResumed(reason?: null): FuturesResumedEventFilter; + + "FuturesSuspended(uint256)"(reason?: null): FuturesSuspendedEventFilter; + FuturesSuspended(reason?: null): FuturesSuspendedEventFilter; + + "IssuanceResumed(uint256)"(reason?: null): IssuanceResumedEventFilter; + IssuanceResumed(reason?: null): IssuanceResumedEventFilter; + + "IssuanceSuspended(uint256)"(reason?: null): IssuanceSuspendedEventFilter; + IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "SynthExchangeResumed(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthExchangeResumedEventFilter; + SynthExchangeResumed( + currencyKey?: null, + reason?: null + ): SynthExchangeResumedEventFilter; + + "SynthExchangeSuspended(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthExchangeSuspendedEventFilter; + SynthExchangeSuspended( + currencyKey?: null, + reason?: null + ): SynthExchangeSuspendedEventFilter; + + "SynthResumed(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthResumedEventFilter; + SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter; + + "SynthSuspended(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthSuspendedEventFilter; + SynthSuspended( + currencyKey?: null, + reason?: null + ): SynthSuspendedEventFilter; + + "SystemResumed(uint256)"(reason?: null): SystemResumedEventFilter; + SystemResumed(reason?: null): SystemResumedEventFilter; + + "SystemSuspended(uint256)"(reason?: null): SystemSuspendedEventFilter; + SystemSuspended(reason?: null): SystemSuspendedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise + SECTION_SYSTEM(overrides?: CallOverrides): Promise; - acceptOwnership( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; - accessControl( - arg0: PromiseOrValue, - arg1: PromiseOrValue, - overrides?: CallOverrides - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - exchangeSuspension(overrides?: CallOverrides): Promise + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise; - futuresMarketSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise + exchangeSuspension(overrides?: CallOverrides): Promise; - futuresSuspension(overrides?: CallOverrides): Promise + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; - getFuturesMarketSuspensions( - marketKeys: PromiseOrValue[], - overrides?: CallOverrides - ): Promise + futuresSuspension(overrides?: CallOverrides): Promise; - getSynthExchangeSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; - getSynthSuspensions( - synths: PromiseOrValue[], - overrides?: CallOverrides - ): Promise + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; - isSystemUpgrading(overrides?: CallOverrides): Promise + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; - issuanceSuspension(overrides?: CallOverrides): Promise + isSystemUpgrading(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + issuanceSuspension(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; - requireExchangeActive(overrides?: CallOverrides): Promise + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + requireFuturesActive(overrides?: CallOverrides): Promise; - requireFuturesActive(overrides?: CallOverrides): Promise + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireFuturesMarketActive( - marketKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + requireIssuanceActive(overrides?: CallOverrides): Promise; - requireIssuanceActive(overrides?: CallOverrides): Promise + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireSynthActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - requireSynthExchangeActive( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireSynthsActive( - sourceCurrencyKey: PromiseOrValue, - destinationCurrencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireSystemActive(overrides?: CallOverrides): Promise + requireSystemActive(overrides?: CallOverrides): Promise; - resumeExchange( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; - resumeFutures( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarket( - marketKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeFuturesMarkets( - marketKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeIssuance( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynth( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthExchange( - currencyKey: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynths( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSynthsExchange( - currencyKeys: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - resumeSystem( - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendExchange( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFutures( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarket( - marketKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendFuturesMarkets( - marketKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendIssuance( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynth( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthExchange( - currencyKey: PromiseOrValue, - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynths( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSynthsExchange( - currencyKeys: PromiseOrValue[], - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - suspendSystem( - reason: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - synthExchangeSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspended( - currencyKey: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - synthSuspension( - arg0: PromiseOrValue, - overrides?: CallOverrides - ): Promise - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension(overrides?: CallOverrides): Promise - - updateAccessControl( - section: PromiseOrValue, - account: PromiseOrValue, - canSuspend: PromiseOrValue, - canResume: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - - updateAccessControls( - sections: PromiseOrValue[], - accounts: PromiseOrValue[], - canSuspends: PromiseOrValue[], - canResumes: PromiseOrValue[], - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise - } + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem(overrides?: Overrides & { from?: string }): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension(overrides?: CallOverrides): Promise; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE( + overrides?: CallOverrides + ): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE( + overrides?: CallOverrides + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + futuresSuspension(overrides?: CallOverrides): Promise; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive( + overrides?: CallOverrides + ): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive( + overrides?: CallOverrides + ): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive( + overrides?: CallOverrides + ): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive( + overrides?: CallOverrides + ): Promise; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension(overrides?: CallOverrides): Promise; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts index 07f6460665..fcced87c09 100644 --- a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts @@ -2,116 +2,141 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface VKwentaRedeemerInterface extends utils.Interface { - functions: { - 'redeem()': FunctionFragment - 'token()': FunctionFragment - 'vToken()': FunctionFragment - } + functions: { + "redeem()": FunctionFragment; + "token()": FunctionFragment; + "vToken()": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'redeem' | 'token' | 'vToken'): FunctionFragment + getFunction( + nameOrSignatureOrTopic: "redeem" | "token" | "vToken" + ): FunctionFragment; - encodeFunctionData(functionFragment: 'redeem', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - encodeFunctionData(functionFragment: 'vToken', values?: undefined): string + encodeFunctionData(functionFragment: "redeem", values?: undefined): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + encodeFunctionData(functionFragment: "vToken", values?: undefined): string; - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "vToken", data: BytesLike): Result; - events: { - 'Redeemed(address,uint256)': EventFragment - } + events: { + "Redeemed(address,uint256)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment + getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; } export interface RedeemedEventObject { - redeemer: string - redeemedAmount: BigNumber + redeemer: string; + redeemedAmount: BigNumber; } -export type RedeemedEvent = TypedEvent<[string, BigNumber], RedeemedEventObject> +export type RedeemedEvent = TypedEvent< + [string, BigNumber], + RedeemedEventObject +>; -export type RedeemedEventFilter = TypedEventFilter +export type RedeemedEventFilter = TypedEventFilter; export interface VKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: VKwentaRedeemerInterface + interface: VKwentaRedeemerInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - redeem(overrides?: Overrides & { from?: PromiseOrValue }): Promise + functions: { + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise<[string]> + token(overrides?: CallOverrides): Promise<[string]>; - vToken(overrides?: CallOverrides): Promise<[string]> - } + vToken(overrides?: CallOverrides): Promise<[string]>; + }; - redeem(overrides?: Overrides & { from?: PromiseOrValue }): Promise + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise + vToken(overrides?: CallOverrides): Promise; - callStatic: { - redeem(overrides?: CallOverrides): Promise + callStatic: { + redeem(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; - filters: { - 'Redeemed(address,uint256)'(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter - Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter - } + filters: { + "Redeemed(address,uint256)"( + redeemer?: null, + redeemedAmount?: null + ): RedeemedEventFilter; + Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter; + }; - estimateGas: { - redeem(overrides?: Overrides & { from?: PromiseOrValue }): Promise + estimateGas: { + redeem(overrides?: Overrides & { from?: string }): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - redeem(overrides?: Overrides & { from?: PromiseOrValue }): Promise + populateTransaction: { + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts index 043651ede9..a939b999ca 100644 --- a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts @@ -2,152 +2,172 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface VeKwentaRedeemerInterface extends utils.Interface { - functions: { - 'kwenta()': FunctionFragment - 'redeem(address)': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'veKwenta()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: 'kwenta' | 'redeem' | 'rewardEscrow' | 'veKwenta' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'kwenta', values?: undefined): string - encodeFunctionData(functionFragment: 'redeem', values: [PromiseOrValue]): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'veKwenta', values?: undefined): string - - decodeFunctionResult(functionFragment: 'kwenta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'veKwenta', data: BytesLike): Result - - events: { - 'Redeemed(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment + functions: { + "kwenta()": FunctionFragment; + "redeem(address)": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "veKwenta()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: "kwenta" | "redeem" | "rewardEscrow" | "veKwenta" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "kwenta", values?: undefined): string; + encodeFunctionData(functionFragment: "redeem", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "veKwenta", values?: undefined): string; + + decodeFunctionResult(functionFragment: "kwenta", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "veKwenta", data: BytesLike): Result; + + events: { + "Redeemed(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; } export interface RedeemedEventObject { - redeemer: string - beneficiary: string - redeemedAmount: BigNumber + redeemer: string; + beneficiary: string; + redeemedAmount: BigNumber; } -export type RedeemedEvent = TypedEvent<[string, string, BigNumber], RedeemedEventObject> +export type RedeemedEvent = TypedEvent< + [string, string, BigNumber], + RedeemedEventObject +>; -export type RedeemedEventFilter = TypedEventFilter +export type RedeemedEventFilter = TypedEventFilter; export interface VeKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: VeKwentaRedeemerInterface + interface: VeKwentaRedeemerInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - kwenta(overrides?: CallOverrides): Promise<[string]> + functions: { + kwenta(overrides?: CallOverrides): Promise<[string]>; - redeem( - _beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise<[string]> + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - veKwenta(overrides?: CallOverrides): Promise<[string]> - } + veKwenta(overrides?: CallOverrides): Promise<[string]>; + }; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - redeem( - _beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise + veKwenta(overrides?: CallOverrides): Promise; - callStatic: { - kwenta(overrides?: CallOverrides): Promise + callStatic: { + kwenta(overrides?: CallOverrides): Promise; - redeem(_beneficiary: PromiseOrValue, overrides?: CallOverrides): Promise + redeem(_beneficiary: string, overrides?: CallOverrides): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; - filters: { - 'Redeemed(address,address,uint256)'( - redeemer?: PromiseOrValue | null, - beneficiary?: PromiseOrValue | null, - redeemedAmount?: null - ): RedeemedEventFilter - Redeemed( - redeemer?: PromiseOrValue | null, - beneficiary?: PromiseOrValue | null, - redeemedAmount?: null - ): RedeemedEventFilter - } + filters: { + "Redeemed(address,address,uint256)"( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter; + Redeemed( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter; + }; - estimateGas: { - kwenta(overrides?: CallOverrides): Promise + estimateGas: { + kwenta(overrides?: CallOverrides): Promise; - redeem( - _beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - kwenta(overrides?: CallOverrides): Promise + populateTransaction: { + kwenta(overrides?: CallOverrides): Promise; - redeem( - _beneficiary: PromiseOrValue, - overrides?: Overrides & { from?: PromiseOrValue } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/common.ts b/packages/sdk/src/contracts/types/common.ts index 573298608c..2fc40c7fb1 100644 --- a/packages/sdk/src/contracts/types/common.ts +++ b/packages/sdk/src/contracts/types/common.ts @@ -1,37 +1,44 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { Listener } from '@ethersproject/providers' -import type { Event, EventFilter } from 'ethers' - -export interface TypedEvent = any, TArgsObject = any> extends Event { - args: TArgsArray & TArgsObject +import type { Listener } from "@ethersproject/providers"; +import type { Event, EventFilter } from "ethers"; + +export interface TypedEvent< + TArgsArray extends Array = any, + TArgsObject = any +> extends Event { + args: TArgsArray & TArgsObject; } -export interface TypedEventFilter<_TEvent extends TypedEvent> extends EventFilter {} +export interface TypedEventFilter<_TEvent extends TypedEvent> + extends EventFilter {} export interface TypedListener { - (...listenerArg: [...__TypechainArgsArray, TEvent]): void + (...listenerArg: [...__TypechainArgsArray, TEvent]): void; } -type __TypechainArgsArray = T extends TypedEvent ? U : never +type __TypechainArgsArray = T extends TypedEvent ? U : never; export interface OnEvent { - ( - eventFilter: TypedEventFilter, - listener: TypedListener - ): TRes - (eventName: string, listener: Listener): TRes + ( + eventFilter: TypedEventFilter, + listener: TypedListener + ): TRes; + (eventName: string, listener: Listener): TRes; } export type MinEthersFactory = { - deploy(...a: ARGS[]): Promise -} + deploy(...a: ARGS[]): Promise; +}; -export type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never +export type GetContractTypeFromFactory = F extends MinEthersFactory< + infer C, + any +> + ? C + : never; export type GetARGsTypeFromFactory = F extends MinEthersFactory - ? Parameters - : never - -export type PromiseOrValue = T | Promise + ? Parameters + : never; diff --git a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts index a92d748683..58f33be508 100644 --- a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts @@ -2,64 +2,67 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { BatchClaimer, BatchClaimerInterface } from '../BatchClaimer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { BatchClaimer, BatchClaimerInterface } from "../BatchClaimer"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IMultipleMerkleDistributor[]', - name: '_distributors', - type: 'address[]', - }, - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[][]', - name: '_claims', - type: 'tuple[][]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "contract IMultipleMerkleDistributor[]", + name: "_distributors", + type: "address[]", + }, + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[][]", + name: "_claims", + type: "tuple[][]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class BatchClaimer__factory { - static readonly abi = _abi - static createInterface(): BatchClaimerInterface { - return new utils.Interface(_abi) as BatchClaimerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): BatchClaimer { - return new Contract(address, _abi, signerOrProvider) as BatchClaimer - } + static readonly abi = _abi; + static createInterface(): BatchClaimerInterface { + return new utils.Interface(_abi) as BatchClaimerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): BatchClaimer { + return new Contract(address, _abi, signerOrProvider) as BatchClaimer; + } } diff --git a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts index 6c570264d5..490b696189 100644 --- a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts +++ b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts @@ -2,218 +2,224 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { DappMaintenance, DappMaintenanceInterface } from '../DappMaintenance' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + DappMaintenance, + DappMaintenanceInterface, +} from "../DappMaintenance"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'SXMaintenance', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'StakingMaintenance', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isPausedSX', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isPausedStaking', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeAll', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeSX', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeStaking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "SXMaintenance", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "StakingMaintenance", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isPausedSX", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isPausedStaking", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeSX", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeStaking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class DappMaintenance__factory { - static readonly abi = _abi - static createInterface(): DappMaintenanceInterface { - return new utils.Interface(_abi) as DappMaintenanceInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): DappMaintenance { - return new Contract(address, _abi, signerOrProvider) as DappMaintenance - } + static readonly abi = _abi; + static createInterface(): DappMaintenanceInterface { + return new utils.Interface(_abi) as DappMaintenanceInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): DappMaintenance { + return new Contract(address, _abi, signerOrProvider) as DappMaintenance; + } } diff --git a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts index f2486f8216..04ea74421d 100644 --- a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts @@ -2,353 +2,353 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ERC20, ERC20Interface } from '../ERC20' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { ERC20, ERC20Interface } from "../ERC20"; const _abi = [ - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'mint', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'addedValue', - type: 'uint256', - }, - ], - name: 'increaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'subtractedValue', - type: 'uint256', - }, - ], - name: 'decreaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'string', - name: 'name', - type: 'string', - }, - { - internalType: 'string', - name: 'symbol', - type: 'string', - }, - { - internalType: 'uint8', - name: 'decimals', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'initialSupply', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, -] + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "addedValue", + type: "uint256", + }, + ], + name: "increaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "subtractedValue", + type: "uint256", + }, + ], + name: "decreaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "uint8", + name: "decimals", + type: "uint8", + }, + { + internalType: "uint256", + name: "initialSupply", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, +] as const; export class ERC20__factory { - static readonly abi = _abi - static createInterface(): ERC20Interface { - return new utils.Interface(_abi) as ERC20Interface - } - static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { - return new Contract(address, _abi, signerOrProvider) as ERC20 - } + static readonly abi = _abi; + static createInterface(): ERC20Interface { + return new utils.Interface(_abi) as ERC20Interface; + } + static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { + return new Contract(address, _abi, signerOrProvider) as ERC20; + } } diff --git a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts index ba4bdbac4c..9ec13deee9 100644 --- a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts @@ -2,1102 +2,1106 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ExchangeRates, ExchangeRatesInterface } from '../ExchangeRates' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { ExchangeRates, ExchangeRatesInterface } from "../ExchangeRates"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'AggregatorAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'AggregatorRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'aggregatorAddress', - type: 'address', - }, - ], - name: 'addAggregator', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'aggregatorKeys', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'aggregatorWarningFlags', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'aggregators', - outputs: [ - { - internalType: 'contract AggregatorV2V3Interface', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'anyRateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: 'roundIds', - type: 'uint256[]', - }, - ], - name: 'anyRateIsInvalidAtRound', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'currenciesUsingAggregator', - outputs: [ - { - internalType: 'bytes32[]', - name: 'currencies', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'currencyKeyDecimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'effectiveAtomicValueAndRates', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemSourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemDestinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'effectiveValue', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'effectiveValueAndRates', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'sourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'destinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'roundIdForSrc', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'roundIdForDest', - type: 'uint256', - }, - ], - name: 'effectiveValueAndRatesAtRound', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'sourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'destinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'getCurrentRoundId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'startingRoundId', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'startingTimestamp', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'timediff', - type: 'uint256', - }, - ], - name: 'getLastRoundIdBeforeElapsedSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'lastRateUpdateTimes', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'lastRateUpdateTimesForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateAndInvalid', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'isInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'roundId', - type: 'uint256', - }, - ], - name: 'rateAndTimestampAtRound', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateAndUpdatedTime', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateForCurrency', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsFlagged', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsStale', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rateStalePeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateWithSafetyChecks', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'broken', - type: 'bool', - }, - { - internalType: 'bool', - name: 'staleOrInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'ratesAndInvalidForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: 'rates', - type: 'uint256[]', - }, - { - internalType: 'bool', - name: 'anyRateInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'numRounds', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'roundId', - type: 'uint256', - }, - ], - name: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - outputs: [ - { - internalType: 'uint256[]', - name: 'rates', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: 'times', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'ratesForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'removeAggregator', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthTooVolatileForAtomicExchange', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'dexPriceAggregator', - type: 'address', - }, - { - internalType: 'address', - name: 'atomicEquivalentForDexPricing', - type: 'address', - }, - { - internalType: 'uint256', - name: 'atomicExchangeFeeRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicTwapWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicMaxVolumePerBlock', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicVolatilityConsiderationWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicVolatilityUpdateThreshold', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeMaxDynamicFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeRounds', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeThreshold', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeWeightDecay', - type: 'uint256', - }, - ], - internalType: 'struct IDirectIntegrationManager.ParameterIntegrationSettings', - name: '', - type: 'tuple', - }, - ], - name: 'synthTooVolatileForAtomicExchange', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "AggregatorAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "AggregatorRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "aggregatorAddress", + type: "address", + }, + ], + name: "addAggregator", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "aggregatorKeys", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "aggregatorWarningFlags", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "aggregators", + outputs: [ + { + internalType: "contract AggregatorV2V3Interface", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "anyRateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "roundIds", + type: "uint256[]", + }, + ], + name: "anyRateIsInvalidAtRound", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "currenciesUsingAggregator", + outputs: [ + { + internalType: "bytes32[]", + name: "currencies", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "currencyKeyDecimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "effectiveAtomicValueAndRates", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemSourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemDestinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "effectiveValue", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "effectiveValueAndRates", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "sourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "destinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "roundIdForSrc", + type: "uint256", + }, + { + internalType: "uint256", + name: "roundIdForDest", + type: "uint256", + }, + ], + name: "effectiveValueAndRatesAtRound", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "sourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "destinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "getCurrentRoundId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "startingRoundId", + type: "uint256", + }, + { + internalType: "uint256", + name: "startingTimestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "timediff", + type: "uint256", + }, + ], + name: "getLastRoundIdBeforeElapsedSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "lastRateUpdateTimes", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "lastRateUpdateTimesForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateAndInvalid", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "bool", + name: "isInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "roundId", + type: "uint256", + }, + ], + name: "rateAndTimestampAtRound", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateAndUpdatedTime", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateForCurrency", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsFlagged", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsStale", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rateStalePeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateWithSafetyChecks", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "bool", + name: "broken", + type: "bool", + }, + { + internalType: "bool", + name: "staleOrInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "ratesAndInvalidForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "rates", + type: "uint256[]", + }, + { + internalType: "bool", + name: "anyRateInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "numRounds", + type: "uint256", + }, + { + internalType: "uint256", + name: "roundId", + type: "uint256", + }, + ], + name: "ratesAndUpdatedTimeForCurrencyLastNRounds", + outputs: [ + { + internalType: "uint256[]", + name: "rates", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "times", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "ratesForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "removeAggregator", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthTooVolatileForAtomicExchange", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + components: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "dexPriceAggregator", + type: "address", + }, + { + internalType: "address", + name: "atomicEquivalentForDexPricing", + type: "address", + }, + { + internalType: "uint256", + name: "atomicExchangeFeeRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicTwapWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicMaxVolumePerBlock", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicVolatilityConsiderationWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicVolatilityUpdateThreshold", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeMaxDynamicFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeRounds", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeThreshold", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeWeightDecay", + type: "uint256", + }, + ], + internalType: + "struct IDirectIntegrationManager.ParameterIntegrationSettings", + name: "", + type: "tuple", + }, + ], + name: "synthTooVolatileForAtomicExchange", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class ExchangeRates__factory { - static readonly abi = _abi - static createInterface(): ExchangeRatesInterface { - return new utils.Interface(_abi) as ExchangeRatesInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): ExchangeRates { - return new Contract(address, _abi, signerOrProvider) as ExchangeRates - } + static readonly abi = _abi; + static createInterface(): ExchangeRatesInterface { + return new utils.Interface(_abi) as ExchangeRatesInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ExchangeRates { + return new Contract(address, _abi, signerOrProvider) as ExchangeRates; + } } diff --git a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts index b92cc56f4a..17edb53e7b 100644 --- a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts @@ -2,788 +2,791 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Exchanger, ExchangerInterface } from '../Exchanger' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Exchanger, ExchangerInterface } from "../Exchanger"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'src', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'dest', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'roundIdForSrc', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'roundIdForDest', - type: 'uint256', - }, - ], - name: 'ExchangeEntryAppended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'src', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'dest', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reclaim', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'rebate', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'srcRoundIdAtPeriodEnd', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'destRoundIdAtPeriodEnd', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'exchangeTimestamp', - type: 'uint256', - }, - ], - name: 'ExchangeEntrySettled', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - ], - name: 'calculateAmountAfterSettlement', - outputs: [ - { - internalType: 'uint256', - name: 'amountAfterSettlement', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'dynamicFeeRateForExchange', - outputs: [ - { - internalType: 'uint256', - name: 'feeRate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'tooVolatile', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'destinationAddress', - type: 'address', - }, - { - internalType: 'bool', - name: 'virtualSynth', - type: 'bool', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'contract IVirtualSynth', - name: 'vSynth', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'exchangeAtomically', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'feeRateForExchange', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'getAmountsForExchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'hasWaitingPeriodOrSettlementOwing', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'isSynthRateInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'lastExchangeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'maxSecsLeftInWaitingPeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'priceDeviationThresholdFactor', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settle', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntriesSettled', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settlementOwing', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'rebateAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntries', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tradingRewardsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'waitingPeriodSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "src", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "dest", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "roundIdForSrc", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "roundIdForDest", + type: "uint256", + }, + ], + name: "ExchangeEntryAppended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "src", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "dest", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reclaim", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "rebate", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "srcRoundIdAtPeriodEnd", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "destRoundIdAtPeriodEnd", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "exchangeTimestamp", + type: "uint256", + }, + ], + name: "ExchangeEntrySettled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + ], + name: "calculateAmountAfterSettlement", + outputs: [ + { + internalType: "uint256", + name: "amountAfterSettlement", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "dynamicFeeRateForExchange", + outputs: [ + { + internalType: "uint256", + name: "feeRate", + type: "uint256", + }, + { + internalType: "bool", + name: "tooVolatile", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "destinationAddress", + type: "address", + }, + { + internalType: "bool", + name: "virtualSynth", + type: "bool", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "contract IVirtualSynth", + name: "vSynth", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "exchangeAtomically", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "feeRateForExchange", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "getAmountsForExchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "hasWaitingPeriodOrSettlementOwing", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "isSynthRateInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "lastExchangeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "maxSecsLeftInWaitingPeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "priceDeviationThresholdFactor", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settle", + outputs: [ + { + internalType: "uint256", + name: "reclaimed", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntriesSettled", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settlementOwing", + outputs: [ + { + internalType: "uint256", + name: "reclaimAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "rebateAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntries", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tradingRewardsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "waitingPeriodSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Exchanger__factory { - static readonly abi = _abi - static createInterface(): ExchangerInterface { - return new utils.Interface(_abi) as ExchangerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Exchanger { - return new Contract(address, _abi, signerOrProvider) as Exchanger - } + static readonly abi = _abi; + static createInterface(): ExchangerInterface { + return new utils.Interface(_abi) as ExchangerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Exchanger { + return new Contract(address, _abi, signerOrProvider) as Exchanger; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts index feef3f05b1..beb3ecd82c 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts @@ -2,930 +2,936 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { FuturesMarketData, FuturesMarketDataInterface } from '../FuturesMarketData' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + FuturesMarketData, + FuturesMarketDataInterface, +} from "../FuturesMarketData"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IAddressResolver', - name: '_resolverProxy', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'allMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'globals', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'minInitialMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationFeeRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minKeeperFee', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FuturesGlobals', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IFuturesMarket', - name: 'market', - type: 'address', - }, - ], - name: 'marketDetails', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct FuturesMarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'marketDetailsForKey', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct FuturesMarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address[]', - name: 'markets', - type: 'address[]', - }, - ], - name: 'marketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'marketSummariesForKeys', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct IFuturesMarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IFuturesMarket', - name: 'market', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetails', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IFuturesMarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetailsForMarketKey', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IFuturesMarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "contract IAddressResolver", + name: "_resolverProxy", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "allMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "globals", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "minInitialMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "minKeeperFee", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FuturesGlobals", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IFuturesMarket", + name: "market", + type: "address", + }, + ], + name: "marketDetails", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct FuturesMarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "marketDetailsForKey", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct FuturesMarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address[]", + name: "markets", + type: "address[]", + }, + ], + name: "marketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "marketSummariesForKeys", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct IFuturesMarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IFuturesMarket", + name: "market", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetails", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IFuturesMarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetailsForMarketKey", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IFuturesMarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class FuturesMarketData__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketDataInterface { - return new utils.Interface(_abi) as FuturesMarketDataInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketData { - return new Contract(address, _abi, signerOrProvider) as FuturesMarketData - } + static readonly abi = _abi; + static createInterface(): FuturesMarketDataInterface { + return new utils.Interface(_abi) as FuturesMarketDataInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarketData { + return new Contract(address, _abi, signerOrProvider) as FuturesMarketData; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts index 7b7eda45cd..54e5e0677e 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts @@ -2,885 +2,892 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - FuturesMarketSettings, - FuturesMarketSettingsInterface, -} from '../FuturesMarketSettings' + FuturesMarketSettings, + FuturesMarketSettingsInterface, +} from "../FuturesMarketSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationBufferRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationFeeRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minMargin', - type: 'uint256', - }, - ], - name: 'MinInitialMarginUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MinKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'ParameterUpdated', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationBufferRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationFeeRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeNextPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxFundingRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLeverage', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxMarketValueUSD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minInitialMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'nextPriceConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationBufferRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationFeeRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - ], - name: 'setMakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeNextPrice', - type: 'uint256', - }, - ], - name: 'setMakerFeeNextPrice', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxFundingRate', - type: 'uint256', - }, - ], - name: 'setMaxFundingRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - ], - name: 'setMaxLeverage', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxMarketValueUSD', - type: 'uint256', - }, - ], - name: 'setMaxMarketValueUSD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_minMargin', - type: 'uint256', - }, - ], - name: 'setMinInitialMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMinKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - ], - name: 'setNextPriceConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_skewScaleUSD', - type: 'uint256', - }, - ], - name: 'setParameters', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_skewScaleUSD', - type: 'uint256', - }, - ], - name: 'setSkewScaleUSD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - ], - name: 'setTakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeNextPrice', - type: 'uint256', - }, - ], - name: 'setTakerFeeNextPrice', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'skewScaleUSD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeNextPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - 'payab`le': false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationBufferRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationFeeRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "MinInitialMarginUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MinKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "ParameterUpdated", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationBufferRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationFeeRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeNextPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxFundingRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLeverage", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxMarketValueUSD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minInitialMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "nextPriceConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationBufferRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationFeeRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + ], + name: "setMakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeNextPrice", + type: "uint256", + }, + ], + name: "setMakerFeeNextPrice", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxFundingRate", + type: "uint256", + }, + ], + name: "setMaxFundingRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + ], + name: "setMaxLeverage", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxMarketValueUSD", + type: "uint256", + }, + ], + name: "setMaxMarketValueUSD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_minMargin", + type: "uint256", + }, + ], + name: "setMinInitialMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMinKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + ], + name: "setNextPriceConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "_takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "_makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "_skewScaleUSD", + type: "uint256", + }, + ], + name: "setParameters", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_skewScaleUSD", + type: "uint256", + }, + ], + name: "setSkewScaleUSD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + ], + name: "setTakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeNextPrice", + type: "uint256", + }, + ], + name: "setTakerFeeNextPrice", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "skewScaleUSD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeNextPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + "payab`le": false, + stateMutability: "view", + type: "function", + }, +] as const; export class FuturesMarketSettings__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketSettingsInterface { - return new utils.Interface(_abi) as FuturesMarketSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketSettings { - return new Contract(address, _abi, signerOrProvider) as FuturesMarketSettings - } + static readonly abi = _abi; + static createInterface(): FuturesMarketSettingsInterface { + return new utils.Interface(_abi) as FuturesMarketSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarketSettings { + return new Contract( + address, + _abi, + signerOrProvider + ) as FuturesMarketSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts index 5730359d37..d7b990df4a 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts @@ -2,1126 +2,1129 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { FuturesMarket, FuturesMarketInterface } from '../FuturesMarket' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { FuturesMarket, FuturesMarketInterface } from "../FuturesMarket"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - { - internalType: 'bytes32', - name: '_baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'FundingRecomputed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'FuturesTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'MarginTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'currentRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'NextPriceOrderRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'NextPriceOrderSubmitted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PositionLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'tradeSize', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastPrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fundingIndex', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PositionModified', - type: 'event', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'closePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'closePositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'executeNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: '', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'modifyPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'modifyPositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'nextPriceOrders', - outputs: [ - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IFuturesMarketBaseTypes.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'recomputeFunding', - outputs: [ - { - internalType: 'uint256', - name: 'lastIndex', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'submitNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitNextPriceOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'transferMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'withdrawAllMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_resolver", + type: "address", + }, + { + internalType: "bytes32", + name: "_baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int256", + name: "funding", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "FundingRecomputed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "FuturesTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "MarginTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "currentRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "NextPriceOrderRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "NextPriceOrderSubmitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "liquidator", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PositionLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "tradeSize", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fundingIndex", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PositionModified", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "closePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "closePositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "executeNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "modifyPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "modifyPositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "nextPriceOrders", + outputs: [ + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IFuturesMarketBaseTypes.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "recomputeFunding", + outputs: [ + { + internalType: "uint256", + name: "lastIndex", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "submitNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitNextPriceOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "transferMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "withdrawAllMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class FuturesMarket__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketInterface { - return new utils.Interface(_abi) as FuturesMarketInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarket { - return new Contract(address, _abi, signerOrProvider) as FuturesMarket - } + static readonly abi = _abi; + static createInterface(): FuturesMarketInterface { + return new utils.Interface(_abi) as FuturesMarketInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarket { + return new Contract(address, _abi, signerOrProvider) as FuturesMarket; + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts index 6d269be6d4..f81ab47f06 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts @@ -2,1144 +2,1150 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { KwentaArrakisVault, KwentaArrakisVaultInterface } from '../KwentaArrakisVault' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + KwentaArrakisVault, + KwentaArrakisVaultInterface, +} from "../KwentaArrakisVault"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_gelato', - type: 'address', - }, - { - internalType: 'address', - name: '_arrakisTreasury', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'receiver', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'burnAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount0Out', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount1Out', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityBurned', - type: 'uint128', - }, - ], - name: 'Burned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'feesEarned0', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'feesEarned1', - type: 'uint256', - }, - ], - name: 'FeesEarned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'receiver', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount0In', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount1In', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityMinted', - type: 'uint128', - }, - ], - name: 'Minted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'previousManager', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newManager', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int24', - name: 'lowerTick_', - type: 'int24', - }, - { - indexed: false, - internalType: 'int24', - name: 'upperTick_', - type: 'int24', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityBefore', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityAfter', - type: 'uint128', - }, - ], - name: 'Rebalance', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint16', - name: 'managerFeeBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'address', - name: 'managerTreasury', - type: 'address', - }, - { - indexed: false, - internalType: 'uint16', - name: 'gelatoRebalanceBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint16', - name: 'gelatoSlippageBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint32', - name: 'gelatoSlippageInterval', - type: 'uint32', - }, - ], - name: 'UpdateManagerParams', - type: 'event', - }, - { - inputs: [], - name: 'GELATO', - outputs: [ - { - internalType: 'address payable', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'RESTRICTED_MINT_ENABLED', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'arrakisBalance0', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisBalance1', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisFeeBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisTreasury', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'burnAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'receiver', - type: 'address', - }, - ], - name: 'burn', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint128', - name: 'liquidityBurned', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'subtractedValue', - type: 'uint256', - }, - ], - name: 'decreaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int24', - name: 'newLowerTick', - type: 'int24', - }, - { - internalType: 'int24', - name: 'newUpperTick', - type: 'int24', - }, - { - internalType: 'uint160', - name: 'swapThresholdPrice', - type: 'uint160', - }, - { - internalType: 'uint256', - name: 'swapAmountBPS', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'zeroForOne', - type: 'bool', - }, - ], - name: 'executiveRebalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'gelatoRebalanceBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'gelatoSlippageBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'gelatoSlippageInterval', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount0Max', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Max', - type: 'uint256', - }, - ], - name: 'getMintAmounts', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getPositionID', - outputs: [ - { - internalType: 'bytes32', - name: 'positionID', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getUnderlyingBalances', - outputs: [ - { - internalType: 'uint256', - name: 'amount0Current', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Current', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint160', - name: 'sqrtRatioX96', - type: 'uint160', - }, - ], - name: 'getUnderlyingBalancesAtPrice', - outputs: [ - { - internalType: 'uint256', - name: 'amount0Current', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Current', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'addedValue', - type: 'uint256', - }, - ], - name: 'increaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'string', - name: '_name', - type: 'string', - }, - { - internalType: 'string', - name: '_symbol', - type: 'string', - }, - { - internalType: 'address', - name: '_pool', - type: 'address', - }, - { - internalType: 'uint16', - name: '_managerFeeBPS', - type: 'uint16', - }, - { - internalType: 'int24', - name: '_lowerTick', - type: 'int24', - }, - { - internalType: 'int24', - name: '_upperTick', - type: 'int24', - }, - { - internalType: 'address', - name: '_manager_', - type: 'address', - }, - ], - name: 'initialize', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'lowerTick', - outputs: [ - { - internalType: 'int24', - name: '', - type: 'int24', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'manager', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerBalance0', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerBalance1', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerFeeBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerTreasury', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'receiver', - type: 'address', - }, - ], - name: 'mint', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint128', - name: 'liquidityMinted', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'pool', - outputs: [ - { - internalType: 'contract IUniswapV3Pool', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint160', - name: 'swapThresholdPrice', - type: 'uint160', - }, - { - internalType: 'uint256', - name: 'swapAmountBPS', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'zeroForOne', - type: 'bool', - }, - { - internalType: 'uint256', - name: 'feeAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'paymentToken', - type: 'address', - }, - ], - name: 'rebalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'renounceOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'restrictedMintToggle', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'toggleRestrictMint', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token0', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token1', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount0Owed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Owed', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '', - type: 'bytes', - }, - ], - name: 'uniswapV3MintCallback', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int256', - name: 'amount0Delta', - type: 'int256', - }, - { - internalType: 'int256', - name: 'amount1Delta', - type: 'int256', - }, - { - internalType: 'bytes', - name: '', - type: 'bytes', - }, - ], - name: 'uniswapV3SwapCallback', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int16', - name: 'newManagerFeeBPS', - type: 'int16', - }, - { - internalType: 'address', - name: 'newManagerTreasury', - type: 'address', - }, - { - internalType: 'int16', - name: 'newRebalanceBPS', - type: 'int16', - }, - { - internalType: 'int16', - name: 'newSlippageBPS', - type: 'int16', - }, - { - internalType: 'int32', - name: 'newSlippageInterval', - type: 'int32', - }, - ], - name: 'updateManagerParams', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'upperTick', - outputs: [ - { - internalType: 'int24', - name: '', - type: 'int24', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'version', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'withdrawArrakisBalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'withdrawManagerBalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address payable", + name: "_gelato", + type: "address", + }, + { + internalType: "address", + name: "_arrakisTreasury", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "receiver", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "burnAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount0Out", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount1Out", + type: "uint256", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityBurned", + type: "uint128", + }, + ], + name: "Burned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "feesEarned0", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "feesEarned1", + type: "uint256", + }, + ], + name: "FeesEarned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "receiver", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount0In", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount1In", + type: "uint256", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityMinted", + type: "uint128", + }, + ], + name: "Minted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousManager", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newManager", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int24", + name: "lowerTick_", + type: "int24", + }, + { + indexed: false, + internalType: "int24", + name: "upperTick_", + type: "int24", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityBefore", + type: "uint128", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityAfter", + type: "uint128", + }, + ], + name: "Rebalance", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint16", + name: "managerFeeBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "address", + name: "managerTreasury", + type: "address", + }, + { + indexed: false, + internalType: "uint16", + name: "gelatoRebalanceBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "uint16", + name: "gelatoSlippageBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "uint32", + name: "gelatoSlippageInterval", + type: "uint32", + }, + ], + name: "UpdateManagerParams", + type: "event", + }, + { + inputs: [], + name: "GELATO", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "RESTRICTED_MINT_ENABLED", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "arrakisBalance0", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisBalance1", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisFeeBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisTreasury", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "burnAmount", + type: "uint256", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + ], + name: "burn", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint128", + name: "liquidityBurned", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "subtractedValue", + type: "uint256", + }, + ], + name: "decreaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int24", + name: "newLowerTick", + type: "int24", + }, + { + internalType: "int24", + name: "newUpperTick", + type: "int24", + }, + { + internalType: "uint160", + name: "swapThresholdPrice", + type: "uint160", + }, + { + internalType: "uint256", + name: "swapAmountBPS", + type: "uint256", + }, + { + internalType: "bool", + name: "zeroForOne", + type: "bool", + }, + ], + name: "executiveRebalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "gelatoRebalanceBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "gelatoSlippageBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "gelatoSlippageInterval", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount0Max", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Max", + type: "uint256", + }, + ], + name: "getMintAmounts", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getPositionID", + outputs: [ + { + internalType: "bytes32", + name: "positionID", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getUnderlyingBalances", + outputs: [ + { + internalType: "uint256", + name: "amount0Current", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Current", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint160", + name: "sqrtRatioX96", + type: "uint160", + }, + ], + name: "getUnderlyingBalancesAtPrice", + outputs: [ + { + internalType: "uint256", + name: "amount0Current", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Current", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "addedValue", + type: "uint256", + }, + ], + name: "increaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "_name", + type: "string", + }, + { + internalType: "string", + name: "_symbol", + type: "string", + }, + { + internalType: "address", + name: "_pool", + type: "address", + }, + { + internalType: "uint16", + name: "_managerFeeBPS", + type: "uint16", + }, + { + internalType: "int24", + name: "_lowerTick", + type: "int24", + }, + { + internalType: "int24", + name: "_upperTick", + type: "int24", + }, + { + internalType: "address", + name: "_manager_", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "lowerTick", + outputs: [ + { + internalType: "int24", + name: "", + type: "int24", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "manager", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerBalance0", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerBalance1", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerFeeBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerTreasury", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + ], + name: "mint", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint128", + name: "liquidityMinted", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "pool", + outputs: [ + { + internalType: "contract IUniswapV3Pool", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint160", + name: "swapThresholdPrice", + type: "uint160", + }, + { + internalType: "uint256", + name: "swapAmountBPS", + type: "uint256", + }, + { + internalType: "bool", + name: "zeroForOne", + type: "bool", + }, + { + internalType: "uint256", + name: "feeAmount", + type: "uint256", + }, + { + internalType: "address", + name: "paymentToken", + type: "address", + }, + ], + name: "rebalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "restrictedMintToggle", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "toggleRestrictMint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token0", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token1", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount0Owed", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Owed", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "uniswapV3MintCallback", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int256", + name: "amount0Delta", + type: "int256", + }, + { + internalType: "int256", + name: "amount1Delta", + type: "int256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "uniswapV3SwapCallback", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int16", + name: "newManagerFeeBPS", + type: "int16", + }, + { + internalType: "address", + name: "newManagerTreasury", + type: "address", + }, + { + internalType: "int16", + name: "newRebalanceBPS", + type: "int16", + }, + { + internalType: "int16", + name: "newSlippageBPS", + type: "int16", + }, + { + internalType: "int32", + name: "newSlippageInterval", + type: "int32", + }, + ], + name: "updateManagerParams", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "upperTick", + outputs: [ + { + internalType: "int24", + name: "", + type: "int24", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "version", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "withdrawArrakisBalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "withdrawManagerBalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class KwentaArrakisVault__factory { - static readonly abi = _abi - static createInterface(): KwentaArrakisVaultInterface { - return new utils.Interface(_abi) as KwentaArrakisVaultInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): KwentaArrakisVault { - return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault - } + static readonly abi = _abi; + static createInterface(): KwentaArrakisVaultInterface { + return new utils.Interface(_abi) as KwentaArrakisVaultInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): KwentaArrakisVault { + return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault; + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts index 0f27fde552..e58d01b4fd 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts @@ -2,714 +2,724 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { KwentaStakingRewards, KwentaStakingRewardsInterface } from '../KwentaStakingRewards' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + KwentaStakingRewards, + KwentaStakingRewardsInterface, +} from "../KwentaStakingRewards"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - { - internalType: 'address', - name: '_supplySchedule', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'EscrowStaked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'EscrowUnstaked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'Paused', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'token', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Recovered', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardPaid', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'RewardsDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Staked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'Unpaused', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Unstaked', - type: 'event', - }, - { - inputs: [], - name: '_totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'earned', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'escrowedBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'exit', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'getReward', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'getRewardForDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastTimeRewardApplicable', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastUpdateTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'nonEscrowedBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'notifyRewardAmount', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'pauseStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'paused', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'periodFinish', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'tokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'tokenAmount', - type: 'uint256', - }, - ], - name: 'recoverERC20', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'contract IRewardEscrow', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardPerToken', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardPerTokenStored', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'rewards', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardsDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_rewardsDuration', - type: 'uint256', - }, - ], - name: 'setRewardsDuration', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stake', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'supplySchedule', - outputs: [ - { - internalType: 'contract ISupplySchedule', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'unpauseStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'unstake', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'unstakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'userRewardPerTokenPaid', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + { + internalType: "address", + name: "_supplySchedule", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "EscrowStaked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "EscrowUnstaked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Recovered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardPaid", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "RewardsDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Staked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Unstaked", + type: "event", + }, + { + inputs: [], + name: "_totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "earned", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "escrowedBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "exit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getReward", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getRewardForDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastTimeRewardApplicable", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastUpdateTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "nonEscrowedBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "notifyRewardAmount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "pauseStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "periodFinish", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "tokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "tokenAmount", + type: "uint256", + }, + ], + name: "recoverERC20", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "contract IRewardEscrow", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardPerToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardPerTokenStored", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rewards", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardsDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_rewardsDuration", + type: "uint256", + }, + ], + name: "setRewardsDuration", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stake", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "supplySchedule", + outputs: [ + { + internalType: "contract ISupplySchedule", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unpauseStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "unstake", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "unstakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "userRewardPerTokenPaid", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class KwentaStakingRewards__factory { - static readonly abi = _abi - static createInterface(): KwentaStakingRewardsInterface { - return new utils.Interface(_abi) as KwentaStakingRewardsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): KwentaStakingRewards { - return new Contract(address, _abi, signerOrProvider) as KwentaStakingRewards - } + static readonly abi = _abi; + static createInterface(): KwentaStakingRewardsInterface { + return new utils.Interface(_abi) as KwentaStakingRewardsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): KwentaStakingRewards { + return new Contract( + address, + _abi, + signerOrProvider + ) as KwentaStakingRewards; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts index 296bee68ea..e3baaedac2 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts @@ -2,310 +2,314 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributorOp, - MultipleMerkleDistributorOpInterface, -} from '../MultipleMerkleDistributorOp' + MultipleMerkleDistributorOp, + MultipleMerkleDistributorOpInterface, +} from "../MultipleMerkleDistributorOp"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootModified', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'merkleRoot', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'setMerkleRootForEpoch', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootModified", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "merkleRoot", + type: "bytes32", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "setMerkleRootForEpoch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributorOp__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorOpInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorOp { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorOp - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorOpInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorOp { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributorOp; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts index 24ee8ceffb..e65da0d3a8 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts @@ -2,328 +2,334 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributorPerpsV2, - MultipleMerkleDistributorPerpsV2Interface, -} from '../MultipleMerkleDistributorPerpsV2' + MultipleMerkleDistributorPerpsV2, + MultipleMerkleDistributorPerpsV2Interface, +} from "../MultipleMerkleDistributorPerpsV2"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootModified', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'merkleRoot', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'setMerkleRootForEpoch', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootModified", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "merkleRoot", + type: "bytes32", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "setMerkleRootForEpoch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributorPerpsV2__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorPerpsV2Interface { - return new utils.Interface(_abi) as MultipleMerkleDistributorPerpsV2Interface - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorPerpsV2 { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorPerpsV2 - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorPerpsV2Interface { + return new utils.Interface( + _abi + ) as MultipleMerkleDistributorPerpsV2Interface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorPerpsV2 { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributorPerpsV2; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts index 89ab35e9d6..e1759c2f52 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts @@ -2,333 +2,340 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributor, - MultipleMerkleDistributorInterface, -} from '../MultipleMerkleDistributor' + MultipleMerkleDistributor, + MultipleMerkleDistributorInterface, +} from "../MultipleMerkleDistributor"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'distributionEpoch', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_merkleRoot', - type: 'bytes32', - }, - ], - name: 'newMerkleRoot', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "distributionEpoch", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_merkleRoot", + type: "bytes32", + }, + ], + name: "newMerkleRoot", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributor__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): MultipleMerkleDistributor { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributor - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributor { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributor; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts index 2c3e2d57e2..762a6d7fa0 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts @@ -2,1164 +2,1170 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2MarketData, PerpsV2MarketDataInterface } from '../PerpsV2MarketData' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV2MarketData, + PerpsV2MarketDataInterface, +} from "../PerpsV2MarketData"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IAddressResolver', - name: '_resolverProxy', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'allMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'allProxiedMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'globals', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'minInitialMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationFeeRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minKeeperFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxKeeperFee', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FuturesGlobals', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IPerpsV2MarketViews', - name: 'market', - type: 'address', - }, - ], - name: 'marketDetails', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'marketDetailsForKey', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address[]', - name: 'markets', - type: 'address[]', - }, - ], - name: 'marketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'marketSummariesForKeys', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IPerpsV2MarketViews', - name: 'market', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetails', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetailsForMarketKey', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "contract IAddressResolver", + name: "_resolverProxy", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "allMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "allProxiedMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "globals", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "minInitialMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "minKeeperFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxKeeperFee", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FuturesGlobals", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IPerpsV2MarketViews", + name: "market", + type: "address", + }, + ], + name: "marketDetails", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "marketDetailsForKey", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address[]", + name: "markets", + type: "address[]", + }, + ], + name: "marketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "marketSummariesForKeys", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IPerpsV2MarketViews", + name: "market", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetails", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetailsForMarketKey", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketData__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketDataInterface { - return new utils.Interface(_abi) as PerpsV2MarketDataInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketData { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketDataInterface { + return new utils.Interface(_abi) as PerpsV2MarketDataInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketData { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts index 2f881d69e2..78f919de23 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts @@ -2,1658 +2,1665 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - PerpsV2MarketSettings, - PerpsV2MarketSettingsInterface, -} from '../PerpsV2MarketSettings' + PerpsV2MarketSettings, + PerpsV2MarketSettingsInterface, +} from "../PerpsV2MarketSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'keeperFee', - type: 'uint256', - }, - ], - name: 'KeeperLiquidationFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationBufferRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationFeeRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MaxKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minMargin', - type: 'uint256', - }, - ], - name: 'MinInitialMarginUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MinKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'ParameterUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'value', - type: 'bytes32', - }, - ], - name: 'ParameterUpdatedBytes32', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'delayedOrderConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'keeperLiquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'liquidationBufferRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationFeeRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'liquidationPremiumMultiplier', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeOffchainDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxDelayTimeDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxFundingVelocity', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'maxKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLeverage', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLiquidationDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxMarketValue', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxPD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'minDelayTimeDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minInitialMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'nextPriceConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainDelayedOrderMaxAge', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainDelayedOrderMinAge', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainMarketKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainPriceDivergence', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_delayedOrderConfirmWindow', - type: 'uint256', - }, - ], - name: 'setDelayedOrderConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_keeperFee', - type: 'uint256', - }, - ], - name: 'setKeeperLiquidationFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationBufferRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationFeeRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_liquidationPremiumMultiplier', - type: 'uint256', - }, - ], - name: 'setLiquidationPremiumMultiplier', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - ], - name: 'setMakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeDelayedOrder', - type: 'uint256', - }, - ], - name: 'setMakerFeeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - name: 'setMakerFeeOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxDelayTimeDelta', - type: 'uint256', - }, - ], - name: 'setMaxDelayTimeDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxFundingVelocity', - type: 'uint256', - }, - ], - name: 'setMaxFundingVelocity', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMaxKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - ], - name: 'setMaxLeverage', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLiquidationDelta', - type: 'uint256', - }, - ], - name: 'setMaxLiquidationDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxMarketValue', - type: 'uint256', - }, - ], - name: 'setMaxMarketValue', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxPD', - type: 'uint256', - }, - ], - name: 'setMaxPD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_minDelayTimeDelta', - type: 'uint256', - }, - ], - name: 'setMinDelayTimeDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_minMargin', - type: 'uint256', - }, - ], - name: 'setMinInitialMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMinKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - ], - name: 'setNextPriceConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainDelayedOrderMaxAge', - type: 'uint256', - }, - ], - name: 'setOffchainDelayedOrderMaxAge', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainDelayedOrderMinAge', - type: 'uint256', - }, - ], - name: 'setOffchainDelayedOrderMinAge', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: '_offchainMarketKey', - type: 'bytes32', - }, - ], - name: 'setOffchainMarketKey', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainPriceDivergence', - type: 'uint256', - }, - ], - name: 'setOffchainPriceDivergence', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '_parameters', - type: 'tuple', - }, - ], - name: 'setParameters', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_skewScale', - type: 'uint256', - }, - ], - name: 'setSkewScale', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - ], - name: 'setTakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeDelayedOrder', - type: 'uint256', - }, - ], - name: 'setTakerFeeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - name: 'setTakerFeeOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'skewScale', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeOffchainDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "keeperFee", + type: "uint256", + }, + ], + name: "KeeperLiquidationFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationBufferRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationFeeRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MaxKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "MinInitialMarginUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MinKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "ParameterUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "value", + type: "bytes32", + }, + ], + name: "ParameterUpdatedBytes32", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "delayedOrderConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "keeperLiquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "liquidationBufferRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationFeeRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "liquidationPremiumMultiplier", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeOffchainDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxDelayTimeDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxFundingVelocity", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "maxKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLeverage", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLiquidationDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxMarketValue", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxPD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "minDelayTimeDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minInitialMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "nextPriceConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainDelayedOrderMaxAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainDelayedOrderMinAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainMarketKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainPriceDivergence", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_delayedOrderConfirmWindow", + type: "uint256", + }, + ], + name: "setDelayedOrderConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_keeperFee", + type: "uint256", + }, + ], + name: "setKeeperLiquidationFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationBufferRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationFeeRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_liquidationPremiumMultiplier", + type: "uint256", + }, + ], + name: "setLiquidationPremiumMultiplier", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + ], + name: "setMakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeDelayedOrder", + type: "uint256", + }, + ], + name: "setMakerFeeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + name: "setMakerFeeOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxDelayTimeDelta", + type: "uint256", + }, + ], + name: "setMaxDelayTimeDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxFundingVelocity", + type: "uint256", + }, + ], + name: "setMaxFundingVelocity", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMaxKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + ], + name: "setMaxLeverage", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLiquidationDelta", + type: "uint256", + }, + ], + name: "setMaxLiquidationDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxMarketValue", + type: "uint256", + }, + ], + name: "setMaxMarketValue", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxPD", + type: "uint256", + }, + ], + name: "setMaxPD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_minDelayTimeDelta", + type: "uint256", + }, + ], + name: "setMinDelayTimeDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_minMargin", + type: "uint256", + }, + ], + name: "setMinInitialMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMinKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + ], + name: "setNextPriceConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainDelayedOrderMaxAge", + type: "uint256", + }, + ], + name: "setOffchainDelayedOrderMaxAge", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainDelayedOrderMinAge", + type: "uint256", + }, + ], + name: "setOffchainDelayedOrderMinAge", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "_offchainMarketKey", + type: "bytes32", + }, + ], + name: "setOffchainMarketKey", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainPriceDivergence", + type: "uint256", + }, + ], + name: "setOffchainPriceDivergence", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "_parameters", + type: "tuple", + }, + ], + name: "setParameters", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_skewScale", + type: "uint256", + }, + ], + name: "setSkewScale", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + ], + name: "setTakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeDelayedOrder", + type: "uint256", + }, + ], + name: "setTakerFeeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + name: "setTakerFeeOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "skewScale", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeOffchainDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketSettings__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketSettingsInterface { - return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketSettings { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketSettings - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketSettingsInterface { + return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketSettings { + return new Contract( + address, + _abi, + signerOrProvider + ) as PerpsV2MarketSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts index 7941d38dd3..e4e9388878 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts @@ -2,800 +2,806 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2MarketViews, PerpsV2MarketViewsInterface } from '../PerpsV2MarketViews' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV2MarketViews, + PerpsV2MarketViewsInterface, +} from "../PerpsV2MarketViews"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_marketState', - type: 'address', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingVelocity', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'fillPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: '', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketState', - outputs: [ - { - internalType: 'contract IPerpsV2MarketState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'tradePrice', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_marketState", + type: "address", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketState", + outputs: [ + { + internalType: "contract IPerpsV2MarketState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "tradePrice", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketViews__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketViewsInterface { - return new utils.Interface(_abi) as PerpsV2MarketViewsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketViews { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketViewsInterface { + return new utils.Interface(_abi) as PerpsV2MarketViewsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketViews { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts index 1c026889a7..c1c7d09c76 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts @@ -2,1432 +2,1435 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2Market, PerpsV2MarketInterface } from '../PerpsV2Market' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { PerpsV2Market, PerpsV2MarketInterface } from "../PerpsV2Market"; const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - indexed: false, - internalType: 'uint256', - name: 'currentRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'DelayedOrderRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'DelayedOrderSubmitted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'fundingRate', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'FundingRecomputed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'MarginTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PerpsTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'flagger', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'PositionFlagged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'flaggerFee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'liquidatorFee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'stakersFee', - type: 'uint256', - }, - ], - name: 'PositionLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'tradeSize', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastPrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fundingIndex', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'skew', - type: 'int256', - }, - ], - name: 'PositionModified', - type: 'event', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'closePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'closePositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: 'fundingRate', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingVelocity', - outputs: [ - { - internalType: 'int256', - name: 'fundingVelocity', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'delayedOrders', - outputs: [ - { - components: [ - { - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'desiredFillPrice', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'executeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes[]', - name: 'priceUpdateData', - type: 'bytes[]', - }, - ], - name: 'executeOffchainDelayedOrder', - outputs: [], - payable: true, - stateMutability: 'payable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'fillPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'flagPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'forceLiquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: 'timestamp', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingRateLastRecomputed', - outputs: [ - { - internalType: 'int128', - name: 'fundingRate', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: 'netFunding', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: 'length', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'isFlagged', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'isInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: 'size', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: 'skew', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'modifyPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'modifyPositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.Position', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'tradePrice', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketConsolidated.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'recomputeFunding', - outputs: [ - { - internalType: 'uint256', - name: 'lastIndex', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitCloseDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitCloseOffchainDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'submitDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'submitOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitOffchainDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'transferMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'withdrawAllMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + indexed: false, + internalType: "uint256", + name: "currentRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "DelayedOrderRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "DelayedOrderSubmitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int256", + name: "funding", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "fundingRate", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "FundingRecomputed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "MarginTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PerpsTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "flagger", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "PositionFlagged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "liquidator", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "flaggerFee", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "liquidatorFee", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "stakersFee", + type: "uint256", + }, + ], + name: "PositionLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "tradeSize", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fundingIndex", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "skew", + type: "int256", + }, + ], + name: "PositionModified", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "closePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "closePositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "fundingRate", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "fundingVelocity", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "delayedOrders", + outputs: [ + { + components: [ + { + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "desiredFillPrice", + type: "uint128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "executeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes[]", + name: "priceUpdateData", + type: "bytes[]", + }, + ], + name: "executeOffchainDelayedOrder", + outputs: [], + payable: true, + stateMutability: "payable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "flagPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "forceLiquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "timestamp", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingRateLastRecomputed", + outputs: [ + { + internalType: "int128", + name: "fundingRate", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "netFunding", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "length", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isFlagged", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "isInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "size", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "skew", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "modifyPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "modifyPositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.Position", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "tradePrice", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketConsolidated.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "recomputeFunding", + outputs: [ + { + internalType: "uint256", + name: "lastIndex", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitCloseDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitCloseOffchainDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "submitDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "submitOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitOffchainDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "transferMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "withdrawAllMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class PerpsV2Market__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketInterface { - return new utils.Interface(_abi) as PerpsV2MarketInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2Market { - return new Contract(address, _abi, signerOrProvider) as PerpsV2Market - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketInterface { + return new utils.Interface(_abi) as PerpsV2MarketInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2Market { + return new Contract(address, _abi, signerOrProvider) as PerpsV2Market; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts new file mode 100644 index 0000000000..7124b48074 --- /dev/null +++ b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts @@ -0,0 +1,3389 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ + +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV3MarketProxy, + PerpsV3MarketProxyInterface, +} from "../PerpsV3MarketProxy"; + +const _abi = [ + { + inputs: [ + { + internalType: "bytes32", + name: "which", + type: "bytes32", + }, + ], + name: "FeatureUnavailable", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "InvalidAccountId", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + ], + name: "InvalidPermission", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "origin", + type: "address", + }, + ], + name: "OnlyAccountTokenProxy", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "target", + type: "address", + }, + ], + name: "PermissionDenied", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "PermissionNotGranted", + type: "error", + }, + { + inputs: [], + name: "PositionOutOfBounds", + type: "error", + }, + { + inputs: [], + name: "ValueAlreadyInSet", + type: "error", + }, + { + inputs: [], + name: "ValueNotInSet", + type: "error", + }, + { + inputs: [], + name: "ZeroAddress", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "AccountCreated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "PermissionGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "PermissionRevoked", + type: "event", + }, + { + inputs: [], + name: "createAccount", + outputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "requestedAccountId", + type: "uint128", + }, + ], + name: "createAccount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountLastInteraction", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountPermissions", + outputs: [ + { + components: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes32[]", + name: "permissions", + type: "bytes32[]", + }, + ], + internalType: "struct IAccountModule.AccountPermissions[]", + name: "accountPerms", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getAccountTokenAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "grantPermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "hasPermission", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "isAuthorized", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "notifyAccountTransfer", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + ], + name: "renouncePermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "revokePermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "expected", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "actual", + type: "bytes32", + }, + ], + name: "MismatchAssociatedSystemKind", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "MissingAssociatedSystem", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "Unauthorized", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "kind", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "proxy", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "AssociatedSystemSet", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getAssociatedSystem", + outputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "bytes32", + name: "kind", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + { + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "initOrUpgradeNft", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "uint8", + name: "decimals", + type: "uint8", + }, + { + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "initOrUpgradeToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "address", + name: "endpoint", + type: "address", + }, + ], + name: "registerUnmanagedSystem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "ImplementationIsSterile", + type: "error", + }, + { + inputs: [], + name: "NoChange", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "contr", + type: "address", + }, + ], + name: "NotAContract", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "NotNominated", + type: "error", + }, + { + inputs: [], + name: "UpgradeSimulationFailed", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "self", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getImplementation", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceNomination", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "simulateUpgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "upgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "InvalidMarketOwner", + type: "error", + }, + { + inputs: [], + name: "OverflowInt256ToUint256", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "MarketOwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "MarketOwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + ], + name: "MarketPriceDataUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: true, + internalType: "address", + name: "marketOwner", + type: "address", + }, + { + indexed: false, + internalType: "string", + name: "marketName", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "marketSymbol", + type: "string", + }, + ], + name: "MarketRegistered", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "acceptMarketOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "marketName", + type: "string", + }, + { + internalType: "string", + name: "marketSymbol", + type: "string", + }, + { + internalType: "address", + name: "marketOwner", + type: "address", + }, + ], + name: "createMarket", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "getMarketOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "minimumCredit", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "nominateMarketOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "reportedDebt", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract ISpotMarketSystem", + name: "spotMarket", + type: "address", + }, + ], + name: "setSpotMarket", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract ISynthetixSystem", + name: "synthetix", + type: "address", + }, + ], + name: "setSynthetix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + ], + name: "updatePriceData", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "AccountLiquidatable", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "AccountNotFound", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "withdrawAmount", + type: "uint256", + }, + ], + name: "InsufficientCollateral", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "available", + type: "uint256", + }, + { + internalType: "uint256", + name: "required", + type: "uint256", + }, + ], + name: "InsufficientCollateralAvailableForWithdraw", + type: "error", + }, + { + inputs: [ + { + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + ], + name: "InvalidAmountDelta", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "InvalidMarket", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "maxAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "depositAmount", + type: "uint256", + }, + ], + name: "MaxCollateralExceeded", + type: "error", + }, + { + inputs: [], + name: "OverflowUint128ToInt128", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToInt256", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToUint128", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "PriceFeedNotSet", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + ], + name: "SynthNotEnabledForCollateral", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + indexed: true, + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "CollateralModified", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getAsyncOrderClaim", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAvailableMargin", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getOpenPosition", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + { + internalType: "int256", + name: "", + type: "int256", + }, + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + ], + name: "modifyCollateral", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "totalAccountOpenInterest", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "totalCollateralValue", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int256", + name: "orderSize", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getMarketSummary", + outputs: [ + { + components: [ + { + internalType: "int256", + name: "skew", + type: "int256", + }, + { + internalType: "uint256", + name: "size", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxOpenInterest", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + internalType: "uint256", + name: "indexPrice", + type: "uint256", + }, + ], + internalType: "struct IPerpsMarketModule.MarketSummary", + name: "summary", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "indexPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "maxOpenInterest", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "size", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "skew", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fillPrice", + type: "uint256", + }, + ], + name: "AcceptablePriceExceeded", + type: "error", + }, + { + inputs: [ + { + internalType: "int256", + name: "availableMargin", + type: "int256", + }, + { + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "InsufficientMargin", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "leftover", + type: "uint256", + }, + ], + name: "InsufficientMarginError", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + ], + name: "InvalidSettlementStrategy", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "string[]", + name: "urls", + type: "string[]", + }, + { + internalType: "bytes", + name: "callData", + type: "bytes", + }, + { + internalType: "bytes4", + name: "callbackFunction", + type: "bytes4", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "OffchainLookup", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "OrderAlreadyCommitted", + type: "error", + }, + { + inputs: [], + name: "OrderNotValid", + type: "error", + }, + { + inputs: [], + name: "OverflowInt256ToInt128", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToUint64", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "deviation", + type: "uint256", + }, + { + internalType: "uint256", + name: "tolerance", + type: "uint256", + }, + ], + name: "PriceDeviationToleranceExceeded", + type: "error", + }, + { + inputs: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + ], + name: "SettlementStrategyNotFound", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementExpiration", + type: "uint256", + }, + ], + name: "SettlementWindowExpired", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementExpiration", + type: "uint256", + }, + ], + name: "SettlementWindowNotExpired", + type: "error", + }, + { + inputs: [], + name: "ZeroSizeOrder", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + ], + name: "OrderCanceled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "enum SettlementStrategy.Type", + name: "orderType", + type: "uint8", + }, + { + indexed: false, + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + indexed: false, + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expirationTime", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "OrderCommitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "fillPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "accountPnlRealized", + type: "int256", + }, + { + indexed: false, + internalType: "int128", + name: "newSize", + type: "int128", + }, + { + indexed: false, + internalType: "uint256", + name: "collectedFees", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "settelementReward", + type: "uint256", + }, + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "settler", + type: "address", + }, + ], + name: "OrderSettled", + type: "event", + }, + { + inputs: [], + name: "PRECISION", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "cancelOrder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.OrderCommitmentRequest", + name: "commitment", + type: "tuple", + }, + ], + name: "commitOrder", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "retOrder", + type: "tuple", + }, + { + internalType: "uint256", + name: "fees", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getOrder", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "settle", + outputs: [], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "result", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "settlePythOrder", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "allowAll", + type: "bool", + }, + ], + name: "FeatureFlagAllowAllSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "FeatureFlagAllowlistAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "FeatureFlagAllowlistRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address[]", + name: "deniers", + type: "address[]", + }, + ], + name: "FeatureFlagDeniersReset", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "denyAll", + type: "bool", + }, + ], + name: "FeatureFlagDenyAllSet", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addToFeatureFlagAllowlist", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getDeniers", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagAllowAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagAllowlist", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagDenyAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isFeatureAllowed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeFromFeatureFlagAllowlist", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address[]", + name: "deniers", + type: "address[]", + }, + ], + name: "setDeniers", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "bool", + name: "allowAll", + type: "bool", + }, + ], + name: "setFeatureFlagAllowAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "bool", + name: "denyAll", + type: "bool", + }, + ], + name: "setFeatureFlagDenyAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "NotEligibleForLiquidation", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "liquidate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "liquidateFlagged", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "marketOwner", + type: "address", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "OnlyMarketOwner", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + name: "FundingParametersSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + name: "LiquidationParametersSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "lockedOiPercent", + type: "uint256", + }, + ], + name: "LockedOiPercentSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + name: "MaxMarketValueSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "makerFeeRatio", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "takerFeeRatio", + type: "uint256", + }, + ], + name: "OrderFeesSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + indexed: false, + internalType: "struct SettlementStrategy.Data", + name: "strategy", + type: "tuple", + }, + { + indexed: true, + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + name: "SettlementStrategyAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "SettlementStrategyEnabled", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + internalType: "struct SettlementStrategy.Data", + name: "strategy", + type: "tuple", + }, + ], + name: "addSettlementStrategy", + outputs: [ + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getFundingParameters", + outputs: [ + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getLiquidationParameters", + outputs: [ + { + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getLockedOiPercent", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getMaxMarketValue", + outputs: [ + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getOrderFees", + outputs: [ + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + name: "getSettlementStrategy", + outputs: [ + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + internalType: "struct SettlementStrategy.Data", + name: "settlementStrategy", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + name: "setFundingParameters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + name: "setLiquidationParameters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "lockedOiPercent", + type: "uint256", + }, + ], + name: "setLockedOiPercent", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + name: "setMaxMarketValue", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "makerFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeRatio", + type: "uint256", + }, + ], + name: "setOrderFees", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + { + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "setSettlementStrategyEnabled", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + name: "LiquidationRewardGuardsSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + ], + name: "MaxCollateralAmountSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128[]", + name: "newSynthDeductionPriority", + type: "uint128[]", + }, + ], + name: "SynthDeductionPrioritySet", + type: "event", + }, + { + inputs: [], + name: "getLiquidationRewardGuards", + outputs: [ + { + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + ], + name: "getMaxCollateralAmount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getSynthDeductionPriority", + outputs: [ + { + internalType: "uint128[]", + name: "", + type: "uint128[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + name: "setLiquidationRewardGuards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + ], + name: "setMaxCollateralAmount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128[]", + name: "newSynthDeductionPriority", + type: "uint128[]", + }, + ], + name: "setSynthDeductionPriority", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; + +export class PerpsV3MarketProxy__factory { + static readonly abi = _abi; + static createInterface(): PerpsV3MarketProxyInterface { + return new utils.Interface(_abi) as PerpsV3MarketProxyInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV3MarketProxy { + return new Contract(address, _abi, signerOrProvider) as PerpsV3MarketProxy; + } +} diff --git a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts index 287d49b9b0..7b5560e72c 100644 --- a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts @@ -2,488 +2,488 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Pyth, PythInterface } from '../Pyth' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Pyth, PythInterface } from "../Pyth"; const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint16', - name: 'chainId', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint64', - name: 'sequenceNumber', - type: 'uint64', - }, - ], - name: 'BatchPriceFeedUpdate', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint64', - name: 'publishTime', - type: 'uint64', - }, - { - indexed: false, - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - indexed: false, - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - ], - name: 'PriceFeedUpdate', - type: 'event', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getEmaPrice', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'age', - type: 'uint256', - }, - ], - name: 'getEmaPriceNoOlderThan', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getEmaPriceUnsafe', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getPrice', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'age', - type: 'uint256', - }, - ], - name: 'getPriceNoOlderThan', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getPriceUnsafe', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - ], - name: 'getUpdateFee', - outputs: [ - { - internalType: 'uint256', - name: 'feeAmount', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getValidTimePeriod', - outputs: [ - { - internalType: 'uint256', - name: 'validTimePeriod', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - { - internalType: 'bytes32[]', - name: 'priceIds', - type: 'bytes32[]', - }, - { - internalType: 'uint64', - name: 'minPublishTime', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'maxPublishTime', - type: 'uint64', - }, - ], - name: 'parsePriceFeedUpdates', - outputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'emaPrice', - type: 'tuple', - }, - ], - internalType: 'struct PythStructs.PriceFeed[]', - name: 'priceFeeds', - type: 'tuple[]', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - ], - name: 'updatePriceFeeds', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - { - internalType: 'bytes32[]', - name: 'priceIds', - type: 'bytes32[]', - }, - { - internalType: 'uint64[]', - name: 'publishTimes', - type: 'uint64[]', - }, - ], - name: 'updatePriceFeedsIfNecessary', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, -] + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint16", + name: "chainId", + type: "uint16", + }, + { + indexed: false, + internalType: "uint64", + name: "sequenceNumber", + type: "uint64", + }, + ], + name: "BatchPriceFeedUpdate", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "publishTime", + type: "uint64", + }, + { + indexed: false, + internalType: "int64", + name: "price", + type: "int64", + }, + { + indexed: false, + internalType: "uint64", + name: "conf", + type: "uint64", + }, + ], + name: "PriceFeedUpdate", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getEmaPrice", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "uint256", + name: "age", + type: "uint256", + }, + ], + name: "getEmaPriceNoOlderThan", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getEmaPriceUnsafe", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getPrice", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "uint256", + name: "age", + type: "uint256", + }, + ], + name: "getPriceNoOlderThan", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getPriceUnsafe", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + ], + name: "getUpdateFee", + outputs: [ + { + internalType: "uint256", + name: "feeAmount", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getValidTimePeriod", + outputs: [ + { + internalType: "uint256", + name: "validTimePeriod", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + { + internalType: "bytes32[]", + name: "priceIds", + type: "bytes32[]", + }, + { + internalType: "uint64", + name: "minPublishTime", + type: "uint64", + }, + { + internalType: "uint64", + name: "maxPublishTime", + type: "uint64", + }, + ], + name: "parsePriceFeedUpdates", + outputs: [ + { + components: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "emaPrice", + type: "tuple", + }, + ], + internalType: "struct PythStructs.PriceFeed[]", + name: "priceFeeds", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + ], + name: "updatePriceFeeds", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + { + internalType: "bytes32[]", + name: "priceIds", + type: "bytes32[]", + }, + { + internalType: "uint64[]", + name: "publishTimes", + type: "uint64[]", + }, + ], + name: "updatePriceFeedsIfNecessary", + outputs: [], + stateMutability: "payable", + type: "function", + }, +] as const; export class Pyth__factory { - static readonly abi = _abi - static createInterface(): PythInterface { - return new utils.Interface(_abi) as PythInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Pyth { - return new Contract(address, _abi, signerOrProvider) as Pyth - } + static readonly abi = _abi; + static createInterface(): PythInterface { + return new utils.Interface(_abi) as PythInterface; + } + static connect(address: string, signerOrProvider: Signer | Provider): Pyth { + return new Contract(address, _abi, signerOrProvider) as Pyth; + } } diff --git a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts index 9047b44b59..a3621db7f5 100644 --- a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts @@ -2,49 +2,55 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ReverseRecords, ReverseRecordsInterface } from '../ReverseRecords' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + ReverseRecords, + ReverseRecordsInterface, +} from "../ReverseRecords"; const _abi = [ - { - inputs: [ - { - internalType: 'contract ENS', - name: '_ens', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [ - { - internalType: 'address[]', - name: 'addresses', - type: 'address[]', - }, - ], - name: 'getNames', - outputs: [ - { - internalType: 'string[]', - name: 'r', - type: 'string[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "address[]", + name: "addresses", + type: "address[]", + }, + ], + name: "getNames", + outputs: [ + { + internalType: "string[]", + name: "r", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class ReverseRecords__factory { - static readonly abi = _abi - static createInterface(): ReverseRecordsInterface { - return new utils.Interface(_abi) as ReverseRecordsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): ReverseRecords { - return new Contract(address, _abi, signerOrProvider) as ReverseRecords - } + static readonly abi = _abi; + static createInterface(): ReverseRecordsInterface { + return new utils.Interface(_abi) as ReverseRecordsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ReverseRecords { + return new Contract(address, _abi, signerOrProvider) as ReverseRecords; + } } diff --git a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts index 34c0b08799..735698c0ce 100644 --- a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts +++ b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts @@ -2,679 +2,682 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { RewardEscrow, RewardEscrowInterface } from '../RewardEscrow' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { RewardEscrow, RewardEscrowInterface } from "../RewardEscrow"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_kwenta', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'rewardEscrow', - type: 'address', - }, - ], - name: 'StakingRewardsSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'treasuryDAO', - type: 'address', - }, - ], - name: 'TreasuryDAOSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Vested', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'VestingEntryCreated', - type: 'event', - }, - { - inputs: [], - name: 'MAX_DURATION', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'accountVestingEntryIDs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'quantity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'appendVestingEntry', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - internalType: 'uint256', - name: 'deposit', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'createEscrowEntry', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', - }, - ], - name: 'getAccountVestingEntryIDs', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getKwentaAddress', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'getVestingEntry', - outputs: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'getVestingEntryClaimable', - outputs: [ - { - internalType: 'uint256', - name: 'quantity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256[]', - name: 'entryIDs', - type: 'uint256[]', - }, - ], - name: 'getVestingQuantity', - outputs: [ - { - internalType: 'uint256', - name: 'total', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'totalFee', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', - }, - ], - name: 'getVestingSchedules', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - internalType: 'struct VestingEntries.VestingEntryWithID[]', - name: '', - type: 'tuple[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'nextEntryId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'numVestingEntries', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_stakingRewards', - type: 'address', - }, - ], - name: 'setStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - name: 'setTreasuryDAO', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - ], - name: 'stakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'stakingRewards', - outputs: [ - { - internalType: 'contract IStakingRewards', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'totalEscrowedAccountBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalEscrowedBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'totalVestedAccountBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDAO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - ], - name: 'unstakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256[]', - name: 'entryIDs', - type: 'uint256[]', - }, - ], - name: 'vest', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'vestingSchedules', - outputs: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_kwenta", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "rewardEscrow", + type: "address", + }, + ], + name: "StakingRewardsSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "treasuryDAO", + type: "address", + }, + ], + name: "TreasuryDAOSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Vested", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "VestingEntryCreated", + type: "event", + }, + { + inputs: [], + name: "MAX_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "accountVestingEntryIDs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "quantity", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "appendVestingEntry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + internalType: "uint256", + name: "deposit", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "createEscrowEntry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "pageSize", + type: "uint256", + }, + ], + name: "getAccountVestingEntryIDs", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getKwentaAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "getVestingEntry", + outputs: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "getVestingEntryClaimable", + outputs: [ + { + internalType: "uint256", + name: "quantity", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256[]", + name: "entryIDs", + type: "uint256[]", + }, + ], + name: "getVestingQuantity", + outputs: [ + { + internalType: "uint256", + name: "total", + type: "uint256", + }, + { + internalType: "uint256", + name: "totalFee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "pageSize", + type: "uint256", + }, + ], + name: "getVestingSchedules", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + internalType: "struct VestingEntries.VestingEntryWithID[]", + name: "", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "nextEntryId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "numVestingEntries", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_stakingRewards", + type: "address", + }, + ], + name: "setStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + name: "setTreasuryDAO", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "stakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "stakingRewards", + outputs: [ + { + internalType: "contract IStakingRewards", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "totalEscrowedAccountBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalEscrowedBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "totalVestedAccountBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDAO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "unstakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "entryIDs", + type: "uint256[]", + }, + ], + name: "vest", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "vestingSchedules", + outputs: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class RewardEscrow__factory { - static readonly abi = _abi - static createInterface(): RewardEscrowInterface { - return new utils.Interface(_abi) as RewardEscrowInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): RewardEscrow { - return new Contract(address, _abi, signerOrProvider) as RewardEscrow - } + static readonly abi = _abi; + static createInterface(): RewardEscrowInterface { + return new utils.Interface(_abi) as RewardEscrowInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): RewardEscrow { + return new Contract(address, _abi, signerOrProvider) as RewardEscrow; + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts index 90db1de559..070e290ea7 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts @@ -2,292 +2,299 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - SmartMarginAccountFactory, - SmartMarginAccountFactoryInterface, -} from '../SmartMarginAccountFactory' + SmartMarginAccountFactory, + SmartMarginAccountFactoryInterface, +} from "../SmartMarginAccountFactory"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [], - name: 'AccountDoesNotExist', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes', - name: 'data', - type: 'bytes', - }, - ], - name: 'AccountFailedToFetchVersion', - type: 'error', - }, - { - inputs: [], - name: 'CannotUpgrade', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes', - name: 'data', - type: 'bytes', - }, - ], - name: 'FailedToSetAcountOwner', - type: 'error', - }, - { - inputs: [], - name: 'OnlyAccount', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'implementation', - type: 'address', - }, - ], - name: 'AccountImplementationUpgraded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'creator', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'version', - type: 'bytes32', - }, - ], - name: 'NewAccount', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - inputs: [ - { - internalType: 'address', - name: 'accounts', - type: 'address', - }, - ], - name: 'accounts', - outputs: [ - { - internalType: 'bool', - name: 'exist', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'canUpgrade', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_account', - type: 'address', - }, - ], - name: 'getAccountOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'getAccountsOwnedBy', - outputs: [ - { - internalType: 'address[]', - name: '', - type: 'address[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'implementation', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'newAccount', - outputs: [ - { - internalType: 'address payable', - name: 'accountAddress', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'removeUpgradability', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_account', - type: 'address', - }, - { - internalType: 'address', - name: '_newOwner', - type: 'address', - }, - { - internalType: 'address', - name: '_oldOwner', - type: 'address', - }, - ], - name: 'updateAccountOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_implementation', - type: 'address', - }, - ], - name: 'upgradeAccountImplementation', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "AccountDoesNotExist", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "AccountFailedToFetchVersion", + type: "error", + }, + { + inputs: [], + name: "CannotUpgrade", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "FailedToSetAcountOwner", + type: "error", + }, + { + inputs: [], + name: "OnlyAccount", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "AccountImplementationUpgraded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "creator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "version", + type: "bytes32", + }, + ], + name: "NewAccount", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "accounts", + type: "address", + }, + ], + name: "accounts", + outputs: [ + { + internalType: "bool", + name: "exist", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "canUpgrade", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_account", + type: "address", + }, + ], + name: "getAccountOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "getAccountsOwnedBy", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "implementation", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "newAccount", + outputs: [ + { + internalType: "address payable", + name: "accountAddress", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "removeUpgradability", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_account", + type: "address", + }, + { + internalType: "address", + name: "_newOwner", + type: "address", + }, + { + internalType: "address", + name: "_oldOwner", + type: "address", + }, + ], + name: "updateAccountOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_implementation", + type: "address", + }, + ], + name: "upgradeAccountImplementation", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class SmartMarginAccountFactory__factory { - static readonly abi = _abi - static createInterface(): SmartMarginAccountFactoryInterface { - return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccountFactory { - return new Contract(address, _abi, signerOrProvider) as SmartMarginAccountFactory - } + static readonly abi = _abi; + static createInterface(): SmartMarginAccountFactoryInterface { + return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartMarginAccountFactory { + return new Contract( + address, + _abi, + signerOrProvider + ) as SmartMarginAccountFactory; + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts index 43a83e00d4..4b12d1022b 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts @@ -2,618 +2,624 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SmartMarginAccount, SmartMarginAccountInterface } from '../SmartMarginAccount' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SmartMarginAccount, + SmartMarginAccountInterface, +} from "../SmartMarginAccount"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_factory', - type: 'address', - }, - { - internalType: 'address', - name: '_events', - type: 'address', - }, - { - internalType: 'address', - name: '_marginAsset', - type: 'address', - }, - { - internalType: 'address', - name: '_futuresMarketManager', - type: 'address', - }, - { - internalType: 'address', - name: '_systemStatus', - type: 'address', - }, - { - internalType: 'address', - name: '_gelato', - type: 'address', - }, - { - internalType: 'address', - name: '_ops', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [], - name: 'EthWithdrawalFailed', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'available', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'required', - type: 'uint256', - }, - ], - name: 'InsufficientFreeMargin', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'commandType', - type: 'uint256', - }, - ], - name: 'InvalidCommandType', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'delegateAddress', - type: 'address', - }, - ], - name: 'InvalidDelegateAddress', - type: 'error', - }, - { - inputs: [], - name: 'InvalidPrice', - type: 'error', - }, - { - inputs: [], - name: 'LengthMismatch', - type: 'error', - }, - { - inputs: [], - name: 'OnlyOps', - type: 'error', - }, - { - inputs: [], - name: 'Unauthorized', - type: 'error', - }, - { - inputs: [], - name: 'ZeroSizeDelta', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'DelegatedAccountAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'DelegatedAccountRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - inputs: [], - name: 'ETH', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'GELATO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'OPS', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'VERSION', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_delegate', - type: 'address', - }, - ], - name: 'addDelegate', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'checker', - outputs: [ - { - internalType: 'bool', - name: 'canExec', - type: 'bool', - }, - { - internalType: 'bytes', - name: 'execPayload', - type: 'bytes', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'committedMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'conditionalOrderId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'delegates', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'enum IAccount.Command[]', - name: '_commands', - type: 'uint8[]', - }, - { - internalType: 'bytes[]', - name: '_inputs', - type: 'bytes[]', - }, - ], - name: 'execute', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'executeConditionalOrder', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'freeMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'getConditionalOrder', - outputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'targetPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'gelatoTaskId', - type: 'bytes32', - }, - { - internalType: 'enum IAccount.ConditionalOrderTypes', - name: 'conditionalOrderType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'reduceOnly', - type: 'bool', - }, - ], - internalType: 'struct IAccount.ConditionalOrder', - name: '', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'getDelayedOrder', - outputs: [ - { - components: [ - { - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'desiredFillPrice', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', - name: 'order', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'getPosition', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.Position', - name: 'position', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isAuth', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isOwner', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_delegate', - type: 'address', - }, - ], - name: 'removeDelegate', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'setInitialOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - stateMutability: 'payable', - type: 'receive', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_factory", + type: "address", + }, + { + internalType: "address", + name: "_events", + type: "address", + }, + { + internalType: "address", + name: "_marginAsset", + type: "address", + }, + { + internalType: "address", + name: "_futuresMarketManager", + type: "address", + }, + { + internalType: "address", + name: "_systemStatus", + type: "address", + }, + { + internalType: "address", + name: "_gelato", + type: "address", + }, + { + internalType: "address", + name: "_ops", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "EthWithdrawalFailed", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "available", + type: "uint256", + }, + { + internalType: "uint256", + name: "required", + type: "uint256", + }, + ], + name: "InsufficientFreeMargin", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "commandType", + type: "uint256", + }, + ], + name: "InvalidCommandType", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "delegateAddress", + type: "address", + }, + ], + name: "InvalidDelegateAddress", + type: "error", + }, + { + inputs: [], + name: "InvalidPrice", + type: "error", + }, + { + inputs: [], + name: "LengthMismatch", + type: "error", + }, + { + inputs: [], + name: "OnlyOps", + type: "error", + }, + { + inputs: [], + name: "Unauthorized", + type: "error", + }, + { + inputs: [], + name: "ZeroSizeDelta", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "DelegatedAccountAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "DelegatedAccountRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "ETH", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "GELATO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "OPS", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_delegate", + type: "address", + }, + ], + name: "addDelegate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "checker", + outputs: [ + { + internalType: "bool", + name: "canExec", + type: "bool", + }, + { + internalType: "bytes", + name: "execPayload", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "committedMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "conditionalOrderId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "delegates", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "enum IAccount.Command[]", + name: "_commands", + type: "uint8[]", + }, + { + internalType: "bytes[]", + name: "_inputs", + type: "bytes[]", + }, + ], + name: "execute", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "executeConditionalOrder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "freeMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "getConditionalOrder", + outputs: [ + { + components: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "targetPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "gelatoTaskId", + type: "bytes32", + }, + { + internalType: "enum IAccount.ConditionalOrderTypes", + name: "conditionalOrderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "reduceOnly", + type: "bool", + }, + ], + internalType: "struct IAccount.ConditionalOrder", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "getDelayedOrder", + outputs: [ + { + components: [ + { + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "desiredFillPrice", + type: "uint128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", + name: "order", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "getPosition", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.Position", + name: "position", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isAuth", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_delegate", + type: "address", + }, + ], + name: "removeDelegate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "setInitialOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +] as const; export class SmartMarginAccount__factory { - static readonly abi = _abi - static createInterface(): SmartMarginAccountInterface { - return new utils.Interface(_abi) as SmartMarginAccountInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccount { - return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount - } + static readonly abi = _abi; + static createInterface(): SmartMarginAccountInterface { + return new utils.Interface(_abi) as SmartMarginAccountInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartMarginAccount { + return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount; + } } diff --git a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts index 344aa83aac..f83039634d 100644 --- a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts @@ -2,669 +2,675 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { StakingRewards, StakingRewardsInterface } from '../StakingRewards' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + StakingRewards, + StakingRewardsInterface, +} from "../StakingRewards"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardsDistribution', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardsToken', - type: 'address', - }, - { - internalType: 'address', - name: '_stakingToken', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'PauseChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'token', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Recovered', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardPaid', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'RewardsDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Staked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Withdrawn', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'earned', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'exit', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'getReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'getRewardForDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastPauseTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastTimeRewardApplicable', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastUpdateTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'notifyRewardAmount', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'paused', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'periodFinish', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'tokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'tokenAmount', - type: 'uint256', - }, - ], - name: 'recoverERC20', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardPerToken', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardPerTokenStored', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'rewards', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsDistribution', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsToken', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: '_paused', - type: 'bool', - }, - ], - name: 'setPaused', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_rewardsDistribution', - type: 'address', - }, - ], - name: 'setRewardsDistribution', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rewardsDuration', - type: 'uint256', - }, - ], - name: 'setRewardsDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stake', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'stakingToken', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'userRewardPerTokenPaid', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'withdraw', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_rewardsDistribution", + type: "address", + }, + { + internalType: "address", + name: "_rewardsToken", + type: "address", + }, + { + internalType: "address", + name: "_stakingToken", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "PauseChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Recovered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardPaid", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "RewardsDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Staked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Withdrawn", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "earned", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "exit", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "getReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "getRewardForDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastPauseTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastTimeRewardApplicable", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastUpdateTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "notifyRewardAmount", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "periodFinish", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "tokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "tokenAmount", + type: "uint256", + }, + ], + name: "recoverERC20", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardPerToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardPerTokenStored", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rewards", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsDistribution", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsToken", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "_paused", + type: "bool", + }, + ], + name: "setPaused", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_rewardsDistribution", + type: "address", + }, + ], + name: "setRewardsDistribution", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rewardsDuration", + type: "uint256", + }, + ], + name: "setRewardsDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stake", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "stakingToken", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "userRewardPerTokenPaid", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "withdraw", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class StakingRewards__factory { - static readonly abi = _abi - static createInterface(): StakingRewardsInterface { - return new utils.Interface(_abi) as StakingRewardsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): StakingRewards { - return new Contract(address, _abi, signerOrProvider) as StakingRewards - } + static readonly abi = _abi; + static createInterface(): StakingRewardsInterface { + return new utils.Interface(_abi) as StakingRewardsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): StakingRewards { + return new Contract(address, _abi, signerOrProvider) as StakingRewards; + } } diff --git a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts index 2dc09bcec6..67e0bbae89 100644 --- a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts @@ -2,656 +2,662 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SupplySchedule, SupplyScheduleInterface } from '../SupplySchedule' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SupplySchedule, + SupplyScheduleInterface, +} from "../SupplySchedule"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'KwentaUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRewardAmount', - type: 'uint256', - }, - ], - name: 'MinterRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'StakingRewardsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'supplyMinted', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'numberOfWeeksIssued', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastMintEvent', - type: 'uint256', - }, - ], - name: 'SupplyMinted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPercentage', - type: 'uint256', - }, - ], - name: 'TradingRewardsDiversionUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'TradingRewardsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'treasuryDAO', - type: 'address', - }, - ], - name: 'TreasuryDAOSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPercentage', - type: 'uint256', - }, - ], - name: 'TreasuryDiversionUpdated', - type: 'event', - }, - { - inputs: [], - name: 'DECAY_RATE', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'INITIAL_SUPPLY', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'INITIAL_WEEKLY_SUPPLY', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MAX_MINTER_REWARD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MINT_BUFFER', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MINT_PERIOD_DURATION', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'SUPPLY_DECAY_END', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'SUPPLY_DECAY_START', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'TERMINAL_SUPPLY_RATE_ANNUAL', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'inflationStartDate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isMintable', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'kwenta', - outputs: [ - { - internalType: 'contract IKwenta', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastMintEvent', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'mint', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'mintableSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'minterReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract IKwenta', - name: '_kwenta', - type: 'address', - }, - ], - name: 'setKwenta', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'setMinterReward', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_stakingRewards', - type: 'address', - }, - ], - name: 'setStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_tradingRewards', - type: 'address', - }, - ], - name: 'setTradingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_tradingRewardsDiversion', - type: 'uint256', - }, - ], - name: 'setTradingRewardsDiversion', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - name: 'setTreasuryDAO', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_treasuryDiversion', - type: 'uint256', - }, - ], - name: 'setTreasuryDiversion', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'stakingRewards', - outputs: [ - { - internalType: 'contract IStakingRewards', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'totalSupply', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numOfWeeks', - type: 'uint256', - }, - ], - name: 'terminalInflationSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'pure', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'counter', - type: 'uint256', - }, - ], - name: 'tokenDecaySupplyForWeek', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'pure', - type: 'function', - }, - { - inputs: [], - name: 'tradingRewards', - outputs: [ - { - internalType: 'contract IMultipleMerkleDistributor', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'tradingRewardsDiversion', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDAO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDiversion', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'weekCounter', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'weeksSinceLastIssuance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "KwentaUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRewardAmount", + type: "uint256", + }, + ], + name: "MinterRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "StakingRewardsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "supplyMinted", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "numberOfWeeksIssued", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastMintEvent", + type: "uint256", + }, + ], + name: "SupplyMinted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPercentage", + type: "uint256", + }, + ], + name: "TradingRewardsDiversionUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "TradingRewardsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "treasuryDAO", + type: "address", + }, + ], + name: "TreasuryDAOSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPercentage", + type: "uint256", + }, + ], + name: "TreasuryDiversionUpdated", + type: "event", + }, + { + inputs: [], + name: "DECAY_RATE", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "INITIAL_SUPPLY", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "INITIAL_WEEKLY_SUPPLY", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MAX_MINTER_REWARD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINT_BUFFER", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINT_PERIOD_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "SUPPLY_DECAY_END", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "SUPPLY_DECAY_START", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "TERMINAL_SUPPLY_RATE_ANNUAL", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "inflationStartDate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isMintable", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "kwenta", + outputs: [ + { + internalType: "contract IKwenta", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastMintEvent", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "mintableSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "minterReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IKwenta", + name: "_kwenta", + type: "address", + }, + ], + name: "setKwenta", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "setMinterReward", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_stakingRewards", + type: "address", + }, + ], + name: "setStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_tradingRewards", + type: "address", + }, + ], + name: "setTradingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_tradingRewardsDiversion", + type: "uint256", + }, + ], + name: "setTradingRewardsDiversion", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + name: "setTreasuryDAO", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_treasuryDiversion", + type: "uint256", + }, + ], + name: "setTreasuryDiversion", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "stakingRewards", + outputs: [ + { + internalType: "contract IStakingRewards", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "totalSupply", + type: "uint256", + }, + { + internalType: "uint256", + name: "numOfWeeks", + type: "uint256", + }, + ], + name: "terminalInflationSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "counter", + type: "uint256", + }, + ], + name: "tokenDecaySupplyForWeek", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "tradingRewards", + outputs: [ + { + internalType: "contract IMultipleMerkleDistributor", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "tradingRewardsDiversion", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDAO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDiversion", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "weekCounter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "weeksSinceLastIssuance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class SupplySchedule__factory { - static readonly abi = _abi - static createInterface(): SupplyScheduleInterface { - return new utils.Interface(_abi) as SupplyScheduleInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SupplySchedule { - return new Contract(address, _abi, signerOrProvider) as SupplySchedule - } + static readonly abi = _abi; + static createInterface(): SupplyScheduleInterface { + return new utils.Interface(_abi) as SupplyScheduleInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SupplySchedule { + return new Contract(address, _abi, signerOrProvider) as SupplySchedule; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts index 42794bdec5..d33d0b0dad 100644 --- a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts @@ -2,319 +2,322 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthRedeemer, SynthRedeemerInterface } from '../SynthRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthRedeemer, SynthRedeemerInterface } from "../SynthRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'synth', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'rateToRedeem', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'totalSynthSupply', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'supplyInsUSD', - type: 'uint256', - }, - ], - name: 'SynthDeprecated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'synth', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountOfSynth', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountInsUSD', - type: 'uint256', - }, - ], - name: 'SynthRedeemed', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: 'balanceInsUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'uint256', - name: 'rateToRedeem', - type: 'uint256', - }, - ], - name: 'deprecate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - ], - name: 'redeem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20[]', - name: 'synthProxies', - type: 'address[]', - }, - ], - name: 'redeemAll', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amountOfSynth', - type: 'uint256', - }, - ], - name: 'redeemPartial', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'redemptions', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - ], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: 'supplyInsUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "synth", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "rateToRedeem", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "totalSynthSupply", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "supplyInsUSD", + type: "uint256", + }, + ], + name: "SynthDeprecated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "synth", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountOfSynth", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amountInsUSD", + type: "uint256", + }, + ], + name: "SynthRedeemed", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balanceInsUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "uint256", + name: "rateToRedeem", + type: "uint256", + }, + ], + name: "deprecate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + ], + name: "redeem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20[]", + name: "synthProxies", + type: "address[]", + }, + ], + name: "redeemAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "uint256", + name: "amountOfSynth", + type: "uint256", + }, + ], + name: "redeemPartial", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "redemptions", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + ], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "supplyInsUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SynthRedeemer__factory { - static readonly abi = _abi - static createInterface(): SynthRedeemerInterface { - return new utils.Interface(_abi) as SynthRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthRedeemer { - return new Contract(address, _abi, signerOrProvider) as SynthRedeemer - } + static readonly abi = _abi; + static createInterface(): SynthRedeemerInterface { + return new utils.Interface(_abi) as SynthRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthRedeemer { + return new Contract(address, _abi, signerOrProvider) as SynthRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts index 646ccc1a5a..ed9e6d6e7f 100644 --- a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts @@ -2,333 +2,336 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthSwap, SynthSwapInterface } from '../SynthSwap' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthSwap, SynthSwapInterface } from "../SynthSwap"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_sUSD', - type: 'address', - }, - { - internalType: 'address', - name: '_aggregationRouterV4', - type: 'address', - }, - { - internalType: 'address', - name: '_addressResolver', - type: 'address', - }, - { - internalType: 'address', - name: '_volumeRewards', - type: 'address', - }, - { - internalType: 'address', - name: '_treasury', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'Received', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'SwapInto', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'SwapOutOf', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract IERC20', - name: 'token', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'rescueFunds', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_destSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'swapInto', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_sourceSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'swapOutOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_destSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_sourceTokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'uniswapSwapInto', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_sourceSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_destTokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: '_amountOfSynth', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_expectedAmountOfSUSDFromSwap', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'uniswapSwapOutOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - stateMutability: 'payable', - type: 'receive', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_sUSD", + type: "address", + }, + { + internalType: "address", + name: "_aggregationRouterV4", + type: "address", + }, + { + internalType: "address", + name: "_addressResolver", + type: "address", + }, + { + internalType: "address", + name: "_volumeRewards", + type: "address", + }, + { + internalType: "address", + name: "_treasury", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "Received", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "SwapInto", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "SwapOutOf", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IERC20", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "rescueFunds", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_destSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "swapInto", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_sourceSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_sourceAmount", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "swapOutOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_destSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_sourceTokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "uniswapSwapInto", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_sourceSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_destTokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "_amountOfSynth", + type: "uint256", + }, + { + internalType: "uint256", + name: "_expectedAmountOfSUSDFromSwap", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "uniswapSwapOutOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +] as const; export class SynthSwap__factory { - static readonly abi = _abi - static createInterface(): SynthSwapInterface { - return new utils.Interface(_abi) as SynthSwapInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthSwap { - return new Contract(address, _abi, signerOrProvider) as SynthSwap - } + static readonly abi = _abi; + static createInterface(): SynthSwapInterface { + return new utils.Interface(_abi) as SynthSwapInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthSwap { + return new Contract(address, _abi, signerOrProvider) as SynthSwap; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts index f1ab6eb85c..640e7cf4d0 100644 --- a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts @@ -2,148 +2,151 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthUtil, SynthUtilInterface } from '../SynthUtil' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthUtil, SynthUtilInterface } from "../SynthUtil"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: 'resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'addressResolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'synthsBalances', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'synthsRates', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'synthsTotalSupplies', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalSynthsInKey', - outputs: [ - { - internalType: 'uint256', - name: 'total', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "addressResolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "synthsBalances", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "synthsRates", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "synthsTotalSupplies", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalSynthsInKey", + outputs: [ + { + internalType: "uint256", + name: "total", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SynthUtil__factory { - static readonly abi = _abi - static createInterface(): SynthUtilInterface { - return new utils.Interface(_abi) as SynthUtilInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthUtil { - return new Contract(address, _abi, signerOrProvider) as SynthUtil - } + static readonly abi = _abi; + static createInterface(): SynthUtilInterface { + return new utils.Interface(_abi) as SynthUtilInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthUtil { + return new Contract(address, _abi, signerOrProvider) as SynthUtil; + } } diff --git a/packages/sdk/src/contracts/types/factories/Synth__factory.ts b/packages/sdk/src/contracts/types/factories/Synth__factory.ts index e100ace557..7a9411a1c5 100644 --- a/packages/sdk/src/contracts/types/factories/Synth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synth__factory.ts @@ -2,812 +2,812 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Synth, SynthInterface } from '../Synth' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Synth, SynthInterface } from "../Synth"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - { - internalType: 'string', - name: '_tokenName', - type: 'string', - }, - { - internalType: 'string', - name: '_tokenSymbol', - type: 'string', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_totalSupply', - type: 'uint256', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Burned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Issued', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'proxyAddress', - type: 'address', - }, - ], - name: 'ProxyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newTokenState', - type: 'address', - }, - ], - name: 'TokenStateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'DECIMALS', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'FEE_ADDRESS', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burn', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currencyKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issue', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'messageSender', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'proxy', - outputs: [ - { - internalType: 'contract Proxy', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'setMessageSender', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - ], - name: 'setProxy', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - ], - name: 'setTokenState', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'setTotalSupply', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tokenState', - outputs: [ - { - internalType: 'contract TokenState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferAndSettle', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFromAndSettle', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'transferableSynths', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + { + internalType: "string", + name: "_tokenName", + type: "string", + }, + { + internalType: "string", + name: "_tokenSymbol", + type: "string", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_totalSupply", + type: "uint256", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Burned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Issued", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "proxyAddress", + type: "address", + }, + ], + name: "ProxyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newTokenState", + type: "address", + }, + ], + name: "TokenStateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "DECIMALS", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "FEE_ADDRESS", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currencyKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issue", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "messageSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "proxy", + outputs: [ + { + internalType: "contract Proxy", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "setMessageSender", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + ], + name: "setProxy", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + ], + name: "setTokenState", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "setTotalSupply", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tokenState", + outputs: [ + { + internalType: "contract TokenState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferAndSettle", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFromAndSettle", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "transferableSynths", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Synth__factory { - static readonly abi = _abi - static createInterface(): SynthInterface { - return new utils.Interface(_abi) as SynthInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Synth { - return new Contract(address, _abi, signerOrProvider) as Synth - } + static readonly abi = _abi; + static createInterface(): SynthInterface { + return new utils.Interface(_abi) as SynthInterface; + } + static connect(address: string, signerOrProvider: Signer | Provider): Synth { + return new Contract(address, _abi, signerOrProvider) as Synth; + } } diff --git a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts index 9c6710db39..8992e24beb 100644 --- a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts @@ -2,1908 +2,1911 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Synthetix, SynthetixInterface } from '../Synthetix' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Synthetix, SynthetixInterface } from "../Synthetix"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'uint256', - name: '_totalSupply', - type: 'uint256', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'snxRedeemed', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountLiquidated', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - ], - name: 'AccountLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'AtomicSynthExchange', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'ExchangeRebate', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'ExchangeReclaim', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'ExchangeTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'proxyAddress', - type: 'address', - }, - ], - name: 'ProxyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'SynthExchange', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newTokenState', - type: 'address', - }, - ], - name: 'TokenStateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'DECIMALS', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'TOKEN_NAME', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'TOKEN_SYMBOL', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'anySynthOrSNXRateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: 'anyRateInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'availableCurrencyKeys', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'availableSynthCount', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'availableSynths', - outputs: [ - { - internalType: 'contract ISynth', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'burnSecondary', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burnSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'burnForAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burnSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'burnSynthsToTarget', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'burnForAddress', - type: 'address', - }, - ], - name: 'burnSynthsToTargetOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'collateral', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '_issuer', - type: 'address', - }, - ], - name: 'collateralisationRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'debtBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'emitAtomicSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'emitExchangeRebate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'emitExchangeReclaim', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'emitExchangeTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'emitSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'exchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'minAmount', - type: 'uint256', - }, - ], - name: 'exchangeAtomically', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'exchangeOnBehalf', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeOnBehalfWithTracking', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithTracking', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithTrackingForInitiator', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithVirtual', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'contract IVirtualSynth', - name: 'vSynth', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'getFirstNonZeroEscrowIndex', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'isWaitingPeriod', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'issueMaxSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'issueForAddress', - type: 'address', - }, - ], - name: 'issueMaxSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issueSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'issueForAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issueSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidateDelinquentAccount', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'escrowStartIndex', - type: 'uint256', - }, - ], - name: 'liquidateDelinquentAccountEscrowIndex', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'liquidateSelf', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'maxIssuableSynths', - outputs: [ - { - internalType: 'uint256', - name: 'maxIssuable', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'messageSender', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'migrateEscrowBalanceToRewardEscrowV2', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'migrateEscrowContractBalance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'mint', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'mintSecondary', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'mintSecondaryRewards', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'proxy', - outputs: [ - { - internalType: 'contract Proxy', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingIssuableSynths', - outputs: [ - { - internalType: 'uint256', - name: 'maxIssuable', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'alreadyIssued', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'totalSystemDebt', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'sUSD', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'setMessageSender', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - ], - name: 'setProxy', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - ], - name: 'setTokenState', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settle', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntriesSettled', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'synths', - outputs: [ - { - internalType: 'contract ISynth', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'synthAddress', - type: 'address', - }, - ], - name: 'synthsByAddress', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tokenState', - outputs: [ - { - internalType: 'contract TokenState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalIssuedSynths', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalIssuedSynthsExcludeOtherCollateral', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'transferableSynthetix', - outputs: [ - { - internalType: 'uint256', - name: 'transferable', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "uint256", + name: "_totalSupply", + type: "uint256", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "snxRedeemed", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amountLiquidated", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "liquidator", + type: "address", + }, + ], + name: "AccountLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "AtomicSynthExchange", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "ExchangeRebate", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "ExchangeReclaim", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "ExchangeTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "proxyAddress", + type: "address", + }, + ], + name: "ProxyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "SynthExchange", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newTokenState", + type: "address", + }, + ], + name: "TokenStateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "DECIMALS", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "TOKEN_NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "TOKEN_SYMBOL", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "anySynthOrSNXRateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "anyRateInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "availableCurrencyKeys", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "availableSynthCount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "availableSynths", + outputs: [ + { + internalType: "contract ISynth", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "burnSecondary", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burnSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "burnForAddress", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burnSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "burnSynthsToTarget", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "burnForAddress", + type: "address", + }, + ], + name: "burnSynthsToTargetOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "collateral", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "_issuer", + type: "address", + }, + ], + name: "collateralisationRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "debtBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "emitAtomicSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "emitExchangeRebate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "emitExchangeReclaim", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "emitExchangeTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "emitSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "exchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + internalType: "uint256", + name: "minAmount", + type: "uint256", + }, + ], + name: "exchangeAtomically", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "exchangeOnBehalf", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeOnBehalfWithTracking", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithTracking", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithTrackingForInitiator", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithVirtual", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "contract IVirtualSynth", + name: "vSynth", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "getFirstNonZeroEscrowIndex", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "isWaitingPeriod", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "issueMaxSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "issueForAddress", + type: "address", + }, + ], + name: "issueMaxSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issueSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "issueForAddress", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issueSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidateDelinquentAccount", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "escrowStartIndex", + type: "uint256", + }, + ], + name: "liquidateDelinquentAccountEscrowIndex", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "liquidateSelf", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "maxIssuableSynths", + outputs: [ + { + internalType: "uint256", + name: "maxIssuable", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "messageSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "migrateEscrowBalanceToRewardEscrowV2", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "migrateEscrowContractBalance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "mint", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "mintSecondary", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "mintSecondaryRewards", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "proxy", + outputs: [ + { + internalType: "contract Proxy", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingIssuableSynths", + outputs: [ + { + internalType: "uint256", + name: "maxIssuable", + type: "uint256", + }, + { + internalType: "uint256", + name: "alreadyIssued", + type: "uint256", + }, + { + internalType: "uint256", + name: "totalSystemDebt", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "sUSD", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "setMessageSender", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + ], + name: "setProxy", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + ], + name: "setTokenState", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settle", + outputs: [ + { + internalType: "uint256", + name: "reclaimed", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntriesSettled", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "synths", + outputs: [ + { + internalType: "contract ISynth", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "synthAddress", + type: "address", + }, + ], + name: "synthsByAddress", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tokenState", + outputs: [ + { + internalType: "contract TokenState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalIssuedSynths", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalIssuedSynthsExcludeOtherCollateral", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "transferableSynthetix", + outputs: [ + { + internalType: "uint256", + name: "transferable", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Synthetix__factory { - static readonly abi = _abi - static createInterface(): SynthetixInterface { - return new utils.Interface(_abi) as SynthetixInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Synthetix { - return new Contract(address, _abi, signerOrProvider) as Synthetix - } + static readonly abi = _abi; + static createInterface(): SynthetixInterface { + return new utils.Interface(_abi) as SynthetixInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Synthetix { + return new Contract(address, _abi, signerOrProvider) as Synthetix; + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts index a07b13374d..723fd00b3c 100644 --- a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts @@ -2,2139 +2,2145 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SystemSettings, SystemSettingsInterface } from '../SystemSettings' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SystemSettings, + SystemSettingsInterface, +} from "../SystemSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'flags', - type: 'address', - }, - ], - name: 'AggregatorWarningFlagsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'equivalent', - type: 'address', - }, - ], - name: 'AtomicEquivalentForDexPricingUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newExchangeFeeRate', - type: 'uint256', - }, - ], - name: 'AtomicExchangeFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newMaxVolume', - type: 'uint256', - }, - ], - name: 'AtomicMaxVolumePerBlockUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newWindow', - type: 'uint256', - }, - ], - name: 'AtomicTwapWindowUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newVolatilityConsiderationWindow', - type: 'uint256', - }, - ], - name: 'AtomicVolatilityConsiderationWindowUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newVolatilityUpdateThreshold', - type: 'uint256', - }, - ], - name: 'AtomicVolatilityUpdateThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'collapseFeeRate', - type: 'uint256', - }, - ], - name: 'CollapseFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'CrossChainSynthTransferEnabledUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: 'gasLimitType', - type: 'uint8', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newLimit', - type: 'uint256', - }, - ], - name: 'CrossDomainMessageGasLimitChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'debtSnapshotStaleTime', - type: 'uint256', - }, - ], - name: 'DebtSnapshotStaleTimeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - ], - name: 'EtherWrapperBurnFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'maxETH', - type: 'uint256', - }, - ], - name: 'EtherWrapperMaxETHUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - ], - name: 'EtherWrapperMintFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeRounds', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeRoundsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeThreshold', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeWeightDecay', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeWeightDecayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newExchangeFeeRate', - type: 'uint256', - }, - ], - name: 'ExchangeFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'maxDynamicFee', - type: 'uint256', - }, - ], - name: 'ExchangeMaxDynamicFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newFeePeriodDuration', - type: 'uint256', - }, - ], - name: 'FeePeriodDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newReward', - type: 'uint256', - }, - ], - name: 'FlagRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'interactionDelay', - type: 'uint256', - }, - ], - name: 'InteractionDelayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRatio', - type: 'uint256', - }, - ], - name: 'IssuanceRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newReward', - type: 'uint256', - }, - ], - name: 'LiquidateRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDelay', - type: 'uint256', - }, - ], - name: 'LiquidationDelayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'LiquidationEscrowDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'LiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRatio', - type: 'uint256', - }, - ], - name: 'LiquidationRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minimumStakeTime', - type: 'uint256', - }, - ], - name: 'MinimumStakeTimeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'threshold', - type: 'uint256', - }, - ], - name: 'PriceDeviationThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'PureChainlinkPriceForAtomicSwapsEnabledUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rateStalePeriod', - type: 'uint256', - }, - ], - name: 'RateStalePeriodUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'SelfLiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'SnxLiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newTargetThreshold', - type: 'uint256', - }, - ], - name: 'TargetThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'TradingRewardsEnabled', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'waitingPeriodSecs', - type: 'uint256', - }, - ], - name: 'WaitingPeriodSecsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'rate', - type: 'int256', - }, - ], - name: 'WrapperBurnFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxTokenAmount', - type: 'uint256', - }, - ], - name: 'WrapperMaxTokenAmountUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'rate', - type: 'int256', - }, - ], - name: 'WrapperMintFeeRateUpdated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'aggregatorWarningFlags', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicEquivalentForDexPricing', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicExchangeFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'atomicMaxVolumePerBlock', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'atomicTwapWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicVolatilityConsiderationWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicVolatilityUpdateThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'collateral', - type: 'address', - }, - ], - name: 'collapseFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'crossChainSynthTransferEnabled', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: 'gasLimitType', - type: 'uint8', - }, - ], - name: 'crossDomainMessageGasLimit', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'debtSnapshotStaleTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperBurnFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperMaxETH', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperMintFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeRounds', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeWeightDecay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'exchangeFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeMaxDynamicFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'feePeriodDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'flagReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'collateral', - type: 'address', - }, - ], - name: 'interactionDelay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'issuanceRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidateReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationDelay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationEscrowDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minimumStakeTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'priceDeviationThresholdFactor', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'pureChainlinkPriceForAtomicSwapsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rateStalePeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'selfLiquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_flags', - type: 'address', - }, - ], - name: 'setAggregatorWarningFlags', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_equivalent', - type: 'address', - }, - ], - name: 'setAtomicEquivalentForDexPricing', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_exchangeFeeRate', - type: 'uint256', - }, - ], - name: 'setAtomicExchangeFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_maxVolume', - type: 'uint256', - }, - ], - name: 'setAtomicMaxVolumePerBlock', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_window', - type: 'uint256', - }, - ], - name: 'setAtomicTwapWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_window', - type: 'uint256', - }, - ], - name: 'setAtomicVolatilityConsiderationWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_threshold', - type: 'uint256', - }, - ], - name: 'setAtomicVolatilityUpdateThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_collateral', - type: 'address', - }, - { - internalType: 'uint256', - name: '_collapseFeeRate', - type: 'uint256', - }, - ], - name: 'setCollapseFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_value', - type: 'uint256', - }, - ], - name: 'setCrossChainSynthTransferEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: '_gasLimitType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: '_crossDomainMessageGasLimit', - type: 'uint256', - }, - ], - name: 'setCrossDomainMessageGasLimit', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_seconds', - type: 'uint256', - }, - ], - name: 'setDebtSnapshotStaleTime', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rate', - type: 'uint256', - }, - ], - name: 'setEtherWrapperBurnFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_maxETH', - type: 'uint256', - }, - ], - name: 'setEtherWrapperMaxETH', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rate', - type: 'uint256', - }, - ], - name: 'setEtherWrapperMintFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'rounds', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeRounds', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'threshold', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'weightDecay', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeWeightDecay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synthKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: 'exchangeFeeRates', - type: 'uint256[]', - }, - ], - name: 'setExchangeFeeRateForSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'maxFee', - type: 'uint256', - }, - ], - name: 'setExchangeMaxDynamicFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_feePeriodDuration', - type: 'uint256', - }, - ], - name: 'setFeePeriodDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'setFlagReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_collateral', - type: 'address', - }, - { - internalType: 'uint256', - name: '_interactionDelay', - type: 'uint256', - }, - ], - name: 'setInteractionDelay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'ratio', - type: 'uint256', - }, - ], - name: 'setIssuanceRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'setLiquidateReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - name: 'setLiquidationDelay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'setLiquidationEscrowDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_liquidationRatio', - type: 'uint256', - }, - ], - name: 'setLiquidationRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_seconds', - type: 'uint256', - }, - ], - name: 'setMinimumStakeTime', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_priceDeviationThresholdFactor', - type: 'uint256', - }, - ], - name: 'setPriceDeviationThresholdFactor', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'bool', - name: '_enabled', - type: 'bool', - }, - ], - name: 'setPureChainlinkPriceForAtomicSwapsEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'period', - type: 'uint256', - }, - ], - name: 'setRateStalePeriod', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setSelfLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setSnxLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'percent', - type: 'uint256', - }, - ], - name: 'setTargetThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: '_tradingRewardsEnabled', - type: 'bool', - }, - ], - name: 'setTradingRewardsEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_waitingPeriodSecs', - type: 'uint256', - }, - ], - name: 'setWaitingPeriodSecs', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'int256', - name: '_rate', - type: 'int256', - }, - ], - name: 'setWrapperBurnFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'uint256', - name: '_maxTokenAmount', - type: 'uint256', - }, - ], - name: 'setWrapperMaxTokenAmount', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'int256', - name: '_rate', - type: 'int256', - }, - ], - name: 'setWrapperMintFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'snxLiquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'targetThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tradingRewardsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'waitingPeriodSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperBurnFeeRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperMaxTokenAmount', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperMintFeeRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "flags", + type: "address", + }, + ], + name: "AggregatorWarningFlagsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "equivalent", + type: "address", + }, + ], + name: "AtomicEquivalentForDexPricingUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newExchangeFeeRate", + type: "uint256", + }, + ], + name: "AtomicExchangeFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newMaxVolume", + type: "uint256", + }, + ], + name: "AtomicMaxVolumePerBlockUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newWindow", + type: "uint256", + }, + ], + name: "AtomicTwapWindowUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newVolatilityConsiderationWindow", + type: "uint256", + }, + ], + name: "AtomicVolatilityConsiderationWindowUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newVolatilityUpdateThreshold", + type: "uint256", + }, + ], + name: "AtomicVolatilityUpdateThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "collapseFeeRate", + type: "uint256", + }, + ], + name: "CollapseFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "CrossChainSynthTransferEnabledUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "gasLimitType", + type: "uint8", + }, + { + indexed: false, + internalType: "uint256", + name: "newLimit", + type: "uint256", + }, + ], + name: "CrossDomainMessageGasLimitChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "debtSnapshotStaleTime", + type: "uint256", + }, + ], + name: "DebtSnapshotStaleTimeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rate", + type: "uint256", + }, + ], + name: "EtherWrapperBurnFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "maxETH", + type: "uint256", + }, + ], + name: "EtherWrapperMaxETHUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rate", + type: "uint256", + }, + ], + name: "EtherWrapperMintFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeRounds", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeRoundsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeThreshold", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeWeightDecay", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeWeightDecayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newExchangeFeeRate", + type: "uint256", + }, + ], + name: "ExchangeFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "maxDynamicFee", + type: "uint256", + }, + ], + name: "ExchangeMaxDynamicFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newFeePeriodDuration", + type: "uint256", + }, + ], + name: "FeePeriodDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newReward", + type: "uint256", + }, + ], + name: "FlagRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "interactionDelay", + type: "uint256", + }, + ], + name: "InteractionDelayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRatio", + type: "uint256", + }, + ], + name: "IssuanceRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newReward", + type: "uint256", + }, + ], + name: "LiquidateRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDelay", + type: "uint256", + }, + ], + name: "LiquidationDelayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "LiquidationEscrowDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "LiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRatio", + type: "uint256", + }, + ], + name: "LiquidationRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minimumStakeTime", + type: "uint256", + }, + ], + name: "MinimumStakeTimeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "threshold", + type: "uint256", + }, + ], + name: "PriceDeviationThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "PureChainlinkPriceForAtomicSwapsEnabledUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rateStalePeriod", + type: "uint256", + }, + ], + name: "RateStalePeriodUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "SelfLiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "SnxLiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newTargetThreshold", + type: "uint256", + }, + ], + name: "TargetThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "TradingRewardsEnabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "waitingPeriodSecs", + type: "uint256", + }, + ], + name: "WaitingPeriodSecsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "rate", + type: "int256", + }, + ], + name: "WrapperBurnFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "maxTokenAmount", + type: "uint256", + }, + ], + name: "WrapperMaxTokenAmountUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "rate", + type: "int256", + }, + ], + name: "WrapperMintFeeRateUpdated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "aggregatorWarningFlags", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicEquivalentForDexPricing", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicExchangeFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "atomicMaxVolumePerBlock", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "atomicTwapWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicVolatilityConsiderationWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicVolatilityUpdateThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "collateral", + type: "address", + }, + ], + name: "collapseFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "crossChainSynthTransferEnabled", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "gasLimitType", + type: "uint8", + }, + ], + name: "crossDomainMessageGasLimit", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "debtSnapshotStaleTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperBurnFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperMaxETH", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperMintFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeRounds", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeWeightDecay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "exchangeFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeMaxDynamicFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "feePeriodDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "flagReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "collateral", + type: "address", + }, + ], + name: "interactionDelay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "issuanceRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidateReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationDelay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationEscrowDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minimumStakeTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "priceDeviationThresholdFactor", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "pureChainlinkPriceForAtomicSwapsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rateStalePeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "selfLiquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_flags", + type: "address", + }, + ], + name: "setAggregatorWarningFlags", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_equivalent", + type: "address", + }, + ], + name: "setAtomicEquivalentForDexPricing", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_exchangeFeeRate", + type: "uint256", + }, + ], + name: "setAtomicExchangeFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_maxVolume", + type: "uint256", + }, + ], + name: "setAtomicMaxVolumePerBlock", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_window", + type: "uint256", + }, + ], + name: "setAtomicTwapWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_window", + type: "uint256", + }, + ], + name: "setAtomicVolatilityConsiderationWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_threshold", + type: "uint256", + }, + ], + name: "setAtomicVolatilityUpdateThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_collateral", + type: "address", + }, + { + internalType: "uint256", + name: "_collapseFeeRate", + type: "uint256", + }, + ], + name: "setCollapseFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_value", + type: "uint256", + }, + ], + name: "setCrossChainSynthTransferEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "_gasLimitType", + type: "uint8", + }, + { + internalType: "uint256", + name: "_crossDomainMessageGasLimit", + type: "uint256", + }, + ], + name: "setCrossDomainMessageGasLimit", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_seconds", + type: "uint256", + }, + ], + name: "setDebtSnapshotStaleTime", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rate", + type: "uint256", + }, + ], + name: "setEtherWrapperBurnFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_maxETH", + type: "uint256", + }, + ], + name: "setEtherWrapperMaxETH", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rate", + type: "uint256", + }, + ], + name: "setEtherWrapperMintFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "rounds", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeRounds", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "threshold", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "weightDecay", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeWeightDecay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "synthKeys", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "exchangeFeeRates", + type: "uint256[]", + }, + ], + name: "setExchangeFeeRateForSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "maxFee", + type: "uint256", + }, + ], + name: "setExchangeMaxDynamicFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_feePeriodDuration", + type: "uint256", + }, + ], + name: "setFeePeriodDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "setFlagReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_collateral", + type: "address", + }, + { + internalType: "uint256", + name: "_interactionDelay", + type: "uint256", + }, + ], + name: "setInteractionDelay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "ratio", + type: "uint256", + }, + ], + name: "setIssuanceRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "setLiquidateReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + name: "setLiquidationDelay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "setLiquidationEscrowDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_liquidationRatio", + type: "uint256", + }, + ], + name: "setLiquidationRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_seconds", + type: "uint256", + }, + ], + name: "setMinimumStakeTime", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_priceDeviationThresholdFactor", + type: "uint256", + }, + ], + name: "setPriceDeviationThresholdFactor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "bool", + name: "_enabled", + type: "bool", + }, + ], + name: "setPureChainlinkPriceForAtomicSwapsEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "period", + type: "uint256", + }, + ], + name: "setRateStalePeriod", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setSelfLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setSnxLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "percent", + type: "uint256", + }, + ], + name: "setTargetThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "_tradingRewardsEnabled", + type: "bool", + }, + ], + name: "setTradingRewardsEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_waitingPeriodSecs", + type: "uint256", + }, + ], + name: "setWaitingPeriodSecs", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "int256", + name: "_rate", + type: "int256", + }, + ], + name: "setWrapperBurnFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "uint256", + name: "_maxTokenAmount", + type: "uint256", + }, + ], + name: "setWrapperMaxTokenAmount", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "int256", + name: "_rate", + type: "int256", + }, + ], + name: "setWrapperMintFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "snxLiquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "targetThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tradingRewardsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "waitingPeriodSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperBurnFeeRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperMaxTokenAmount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperMintFeeRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SystemSettings__factory { - static readonly abi = _abi - static createInterface(): SystemSettingsInterface { - return new utils.Interface(_abi) as SystemSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SystemSettings { - return new Contract(address, _abi, signerOrProvider) as SystemSettings - } + static readonly abi = _abi; + static createInterface(): SystemSettingsInterface { + return new utils.Interface(_abi) as SystemSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SystemSettings { + return new Contract(address, _abi, signerOrProvider) as SystemSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts index 5c5a07e9b6..55d7c02f4c 100644 --- a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts @@ -2,1291 +2,1294 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SystemStatus, SystemStatusInterface } from '../SystemStatus' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SystemStatus, SystemStatusInterface } from "../SystemStatus"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'section', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - indexed: false, - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - name: 'AccessControlUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'ExchangeResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'ExchangeSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesMarketResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesMarketSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'IssuanceResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'IssuanceSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthExchangeResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthExchangeSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SystemResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SystemSuspended', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_EXCHANGE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_FUTURES', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_ISSUANCE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYNTH', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYNTH_EXCHANGE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYSTEM', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SUSPENSION_REASON_UPGRADE', - outputs: [ - { - internalType: 'uint248', - name: '', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'accessControl', - outputs: [ - { - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'futuresMarketSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'futuresSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'getFuturesMarketSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'suspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synths', - type: 'bytes32[]', - }, - ], - name: 'getSynthExchangeSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'exchangeSuspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synths', - type: 'bytes32[]', - }, - ], - name: 'getSynthSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'suspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isSystemUpgrading', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'issuanceSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireExchangeActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'requireExchangeBetweenSynthsAllowed', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireFuturesActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'requireFuturesMarketActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireIssuanceActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthExchangeActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthsActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireSystemActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeFutures', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'resumeFuturesMarket', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeFuturesMarkets', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeIssuance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'resumeSynth', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'resumeSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeSynthsExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeSystem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFutures', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFuturesMarket', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFuturesMarkets', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendIssuance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynth', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynthsExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSystem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthExchangeSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'synthSuspended', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'systemSuspended', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'systemSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'section', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - name: 'updateAccessControl', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'sections', - type: 'bytes32[]', - }, - { - internalType: 'address[]', - name: 'accounts', - type: 'address[]', - }, - { - internalType: 'bool[]', - name: 'canSuspends', - type: 'bool[]', - }, - { - internalType: 'bool[]', - name: 'canResumes', - type: 'bool[]', - }, - ], - name: 'updateAccessControls', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "section", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + indexed: false, + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + name: "AccessControlUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "ExchangeResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "ExchangeSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesMarketResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesMarketSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "IssuanceResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "IssuanceSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthExchangeResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthExchangeSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SystemResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SystemSuspended", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_EXCHANGE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_FUTURES", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_ISSUANCE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYNTH", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYNTH_EXCHANGE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYSTEM", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SUSPENSION_REASON_UPGRADE", + outputs: [ + { + internalType: "uint248", + name: "", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "accessControl", + outputs: [ + { + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "futuresMarketSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "futuresSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "getFuturesMarketSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "suspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "synths", + type: "bytes32[]", + }, + ], + name: "getSynthExchangeSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "exchangeSuspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "synths", + type: "bytes32[]", + }, + ], + name: "getSynthSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "suspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isSystemUpgrading", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "issuanceSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireExchangeActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "requireExchangeBetweenSynthsAllowed", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireFuturesActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "requireFuturesMarketActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireIssuanceActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "requireSynthActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "requireSynthExchangeActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "requireSynthsActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireSystemActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeFutures", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "resumeFuturesMarket", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "resumeFuturesMarkets", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeIssuance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "resumeSynth", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "resumeSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "resumeSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "resumeSynthsExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeSystem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFutures", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFuturesMarket", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFuturesMarkets", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendIssuance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynth", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynthsExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSystem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthExchangeSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "synthSuspended", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "systemSuspended", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "systemSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "section", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + name: "updateAccessControl", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "sections", + type: "bytes32[]", + }, + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "bool[]", + name: "canSuspends", + type: "bool[]", + }, + { + internalType: "bool[]", + name: "canResumes", + type: "bool[]", + }, + ], + name: "updateAccessControls", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class SystemStatus__factory { - static readonly abi = _abi - static createInterface(): SystemStatusInterface { - return new utils.Interface(_abi) as SystemStatusInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SystemStatus { - return new Contract(address, _abi, signerOrProvider) as SystemStatus - } + static readonly abi = _abi; + static createInterface(): SystemStatusInterface { + return new utils.Interface(_abi) as SystemStatusInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SystemStatus { + return new Contract(address, _abi, signerOrProvider) as SystemStatus; + } } diff --git a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts index 3e081462f5..b845b05363 100644 --- a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts @@ -2,87 +2,93 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { VKwentaRedeemer, VKwentaRedeemerInterface } from '../VKwentaRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + VKwentaRedeemer, + VKwentaRedeemerInterface, +} from "../VKwentaRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_vToken', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'redeemer', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'redeemedAmount', - type: 'uint256', - }, - ], - name: 'Redeemed', - type: 'event', - }, - { - inputs: [], - name: 'redeem', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'vToken', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_vToken", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "redeemer", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "redeemedAmount", + type: "uint256", + }, + ], + name: "Redeemed", + type: "event", + }, + { + inputs: [], + name: "redeem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "vToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class VKwentaRedeemer__factory { - static readonly abi = _abi - static createInterface(): VKwentaRedeemerInterface { - return new utils.Interface(_abi) as VKwentaRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): VKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer - } + static readonly abi = _abi; + static createInterface(): VKwentaRedeemerInterface { + return new utils.Interface(_abi) as VKwentaRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): VKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts index 0f9c40b207..0f70b6c656 100644 --- a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts @@ -2,155 +2,161 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { VeKwentaRedeemer, VeKwentaRedeemerInterface } from '../VeKwentaRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + VeKwentaRedeemer, + VeKwentaRedeemerInterface, +} from "../VeKwentaRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_veKwenta', - type: 'address', - }, - { - internalType: 'address', - name: '_kwenta', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [ - { - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - internalType: 'uint256', - name: 'callerBalance', - type: 'uint256', - }, - ], - name: 'InvalidCallerBalance', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'contractBalance', - type: 'uint256', - }, - ], - name: 'InvalidContractBalance', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'caller', - type: 'address', - }, - ], - name: 'TransferFailed', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'redeemer', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'redeemedAmount', - type: 'uint256', - }, - ], - name: 'Redeemed', - type: 'event', - }, - { - inputs: [], - name: 'kwenta', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_beneficiary', - type: 'address', - }, - ], - name: 'redeem', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'veKwenta', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] + { + inputs: [ + { + internalType: "address", + name: "_veKwenta", + type: "address", + }, + { + internalType: "address", + name: "_kwenta", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "address", + name: "caller", + type: "address", + }, + { + internalType: "uint256", + name: "callerBalance", + type: "uint256", + }, + ], + name: "InvalidCallerBalance", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "contractBalance", + type: "uint256", + }, + ], + name: "InvalidContractBalance", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "caller", + type: "address", + }, + ], + name: "TransferFailed", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "redeemer", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "redeemedAmount", + type: "uint256", + }, + ], + name: "Redeemed", + type: "event", + }, + { + inputs: [], + name: "kwenta", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_beneficiary", + type: "address", + }, + ], + name: "redeem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "veKwenta", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class VeKwentaRedeemer__factory { - static readonly abi = _abi - static createInterface(): VeKwentaRedeemerInterface { - return new utils.Interface(_abi) as VeKwentaRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): VeKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer - } + static readonly abi = _abi; + static createInterface(): VeKwentaRedeemerInterface { + return new utils.Interface(_abi) as VeKwentaRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): VeKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/index.ts b/packages/sdk/src/contracts/types/factories/index.ts index 594fc1bbf6..5516690741 100644 --- a/packages/sdk/src/contracts/types/factories/index.ts +++ b/packages/sdk/src/contracts/types/factories/index.ts @@ -1,36 +1,37 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { BatchClaimer__factory } from './BatchClaimer__factory' -export { DappMaintenance__factory } from './DappMaintenance__factory' -export { ERC20__factory } from './ERC20__factory' -export { ExchangeRates__factory } from './ExchangeRates__factory' -export { Exchanger__factory } from './Exchanger__factory' -export { FuturesMarket__factory } from './FuturesMarket__factory' -export { FuturesMarketData__factory } from './FuturesMarketData__factory' -export { FuturesMarketSettings__factory } from './FuturesMarketSettings__factory' -export { KwentaArrakisVault__factory } from './KwentaArrakisVault__factory' -export { KwentaStakingRewards__factory } from './KwentaStakingRewards__factory' -export { MultipleMerkleDistributor__factory } from './MultipleMerkleDistributor__factory' -export { MultipleMerkleDistributorOp__factory } from './MultipleMerkleDistributorOp__factory' -export { MultipleMerkleDistributorPerpsV2__factory } from './MultipleMerkleDistributorPerpsV2__factory' -export { PerpsV2Market__factory } from './PerpsV2Market__factory' -export { PerpsV2MarketData__factory } from './PerpsV2MarketData__factory' -export { PerpsV2MarketSettings__factory } from './PerpsV2MarketSettings__factory' -export { PerpsV2MarketViews__factory } from './PerpsV2MarketViews__factory' -export { Pyth__factory } from './Pyth__factory' -export { ReverseRecords__factory } from './ReverseRecords__factory' -export { RewardEscrow__factory } from './RewardEscrow__factory' -export { SmartMarginAccount__factory } from './SmartMarginAccount__factory' -export { SmartMarginAccountFactory__factory } from './SmartMarginAccountFactory__factory' -export { StakingRewards__factory } from './StakingRewards__factory' -export { SupplySchedule__factory } from './SupplySchedule__factory' -export { Synth__factory } from './Synth__factory' -export { SynthRedeemer__factory } from './SynthRedeemer__factory' -export { SynthSwap__factory } from './SynthSwap__factory' -export { SynthUtil__factory } from './SynthUtil__factory' -export { Synthetix__factory } from './Synthetix__factory' -export { SystemSettings__factory } from './SystemSettings__factory' -export { SystemStatus__factory } from './SystemStatus__factory' -export { VKwentaRedeemer__factory } from './VKwentaRedeemer__factory' -export { VeKwentaRedeemer__factory } from './VeKwentaRedeemer__factory' +export { BatchClaimer__factory } from "./BatchClaimer__factory"; +export { DappMaintenance__factory } from "./DappMaintenance__factory"; +export { ERC20__factory } from "./ERC20__factory"; +export { ExchangeRates__factory } from "./ExchangeRates__factory"; +export { Exchanger__factory } from "./Exchanger__factory"; +export { FuturesMarket__factory } from "./FuturesMarket__factory"; +export { FuturesMarketData__factory } from "./FuturesMarketData__factory"; +export { FuturesMarketSettings__factory } from "./FuturesMarketSettings__factory"; +export { KwentaArrakisVault__factory } from "./KwentaArrakisVault__factory"; +export { KwentaStakingRewards__factory } from "./KwentaStakingRewards__factory"; +export { MultipleMerkleDistributor__factory } from "./MultipleMerkleDistributor__factory"; +export { MultipleMerkleDistributorOp__factory } from "./MultipleMerkleDistributorOp__factory"; +export { MultipleMerkleDistributorPerpsV2__factory } from "./MultipleMerkleDistributorPerpsV2__factory"; +export { PerpsV2Market__factory } from "./PerpsV2Market__factory"; +export { PerpsV2MarketData__factory } from "./PerpsV2MarketData__factory"; +export { PerpsV2MarketSettings__factory } from "./PerpsV2MarketSettings__factory"; +export { PerpsV2MarketViews__factory } from "./PerpsV2MarketViews__factory"; +export { PerpsV3MarketProxy__factory } from "./PerpsV3MarketProxy__factory"; +export { Pyth__factory } from "./Pyth__factory"; +export { ReverseRecords__factory } from "./ReverseRecords__factory"; +export { RewardEscrow__factory } from "./RewardEscrow__factory"; +export { SmartMarginAccount__factory } from "./SmartMarginAccount__factory"; +export { SmartMarginAccountFactory__factory } from "./SmartMarginAccountFactory__factory"; +export { StakingRewards__factory } from "./StakingRewards__factory"; +export { SupplySchedule__factory } from "./SupplySchedule__factory"; +export { Synth__factory } from "./Synth__factory"; +export { SynthRedeemer__factory } from "./SynthRedeemer__factory"; +export { SynthSwap__factory } from "./SynthSwap__factory"; +export { SynthUtil__factory } from "./SynthUtil__factory"; +export { Synthetix__factory } from "./Synthetix__factory"; +export { SystemSettings__factory } from "./SystemSettings__factory"; +export { SystemStatus__factory } from "./SystemStatus__factory"; +export { VKwentaRedeemer__factory } from "./VKwentaRedeemer__factory"; +export { VeKwentaRedeemer__factory } from "./VeKwentaRedeemer__factory"; diff --git a/packages/sdk/src/contracts/types/index.ts b/packages/sdk/src/contracts/types/index.ts index 5c87a2f066..d626faeb08 100644 --- a/packages/sdk/src/contracts/types/index.ts +++ b/packages/sdk/src/contracts/types/index.ts @@ -1,70 +1,72 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { BatchClaimer } from './BatchClaimer' -export type { DappMaintenance } from './DappMaintenance' -export type { ERC20 } from './ERC20' -export type { ExchangeRates } from './ExchangeRates' -export type { Exchanger } from './Exchanger' -export type { FuturesMarket } from './FuturesMarket' -export type { FuturesMarketData } from './FuturesMarketData' -export type { FuturesMarketSettings } from './FuturesMarketSettings' -export type { KwentaArrakisVault } from './KwentaArrakisVault' -export type { KwentaStakingRewards } from './KwentaStakingRewards' -export type { MultipleMerkleDistributor } from './MultipleMerkleDistributor' -export type { MultipleMerkleDistributorOp } from './MultipleMerkleDistributorOp' -export type { MultipleMerkleDistributorPerpsV2 } from './MultipleMerkleDistributorPerpsV2' -export type { PerpsV2Market } from './PerpsV2Market' -export type { PerpsV2MarketData } from './PerpsV2MarketData' -export type { PerpsV2MarketSettings } from './PerpsV2MarketSettings' -export type { PerpsV2MarketViews } from './PerpsV2MarketViews' -export type { Pyth } from './Pyth' -export type { ReverseRecords } from './ReverseRecords' -export type { RewardEscrow } from './RewardEscrow' -export type { SmartMarginAccount } from './SmartMarginAccount' -export type { SmartMarginAccountFactory } from './SmartMarginAccountFactory' -export type { StakingRewards } from './StakingRewards' -export type { SupplySchedule } from './SupplySchedule' -export type { Synth } from './Synth' -export type { SynthRedeemer } from './SynthRedeemer' -export type { SynthSwap } from './SynthSwap' -export type { SynthUtil } from './SynthUtil' -export type { Synthetix } from './Synthetix' -export type { SystemSettings } from './SystemSettings' -export type { SystemStatus } from './SystemStatus' -export type { VKwentaRedeemer } from './VKwentaRedeemer' -export type { VeKwentaRedeemer } from './VeKwentaRedeemer' -export * as factories from './factories' -export { BatchClaimer__factory } from './factories/BatchClaimer__factory' -export { DappMaintenance__factory } from './factories/DappMaintenance__factory' -export { ERC20__factory } from './factories/ERC20__factory' -export { Exchanger__factory } from './factories/Exchanger__factory' -export { ExchangeRates__factory } from './factories/ExchangeRates__factory' -export { FuturesMarket__factory } from './factories/FuturesMarket__factory' -export { FuturesMarketData__factory } from './factories/FuturesMarketData__factory' -export { FuturesMarketSettings__factory } from './factories/FuturesMarketSettings__factory' -export { KwentaArrakisVault__factory } from './factories/KwentaArrakisVault__factory' -export { KwentaStakingRewards__factory } from './factories/KwentaStakingRewards__factory' -export { MultipleMerkleDistributor__factory } from './factories/MultipleMerkleDistributor__factory' -export { MultipleMerkleDistributorOp__factory } from './factories/MultipleMerkleDistributorOp__factory' -export { MultipleMerkleDistributorPerpsV2__factory } from './factories/MultipleMerkleDistributorPerpsV2__factory' -export { PerpsV2Market__factory } from './factories/PerpsV2Market__factory' -export { PerpsV2MarketData__factory } from './factories/PerpsV2MarketData__factory' -export { PerpsV2MarketSettings__factory } from './factories/PerpsV2MarketSettings__factory' -export { PerpsV2MarketViews__factory } from './factories/PerpsV2MarketViews__factory' -export { Pyth__factory } from './factories/Pyth__factory' -export { ReverseRecords__factory } from './factories/ReverseRecords__factory' -export { RewardEscrow__factory } from './factories/RewardEscrow__factory' -export { SmartMarginAccount__factory } from './factories/SmartMarginAccount__factory' -export { SmartMarginAccountFactory__factory } from './factories/SmartMarginAccountFactory__factory' -export { StakingRewards__factory } from './factories/StakingRewards__factory' -export { SupplySchedule__factory } from './factories/SupplySchedule__factory' -export { Synth__factory } from './factories/Synth__factory' -export { Synthetix__factory } from './factories/Synthetix__factory' -export { SynthRedeemer__factory } from './factories/SynthRedeemer__factory' -export { SynthSwap__factory } from './factories/SynthSwap__factory' -export { SynthUtil__factory } from './factories/SynthUtil__factory' -export { SystemSettings__factory } from './factories/SystemSettings__factory' -export { SystemStatus__factory } from './factories/SystemStatus__factory' -export { VeKwentaRedeemer__factory } from './factories/VeKwentaRedeemer__factory' -export { VKwentaRedeemer__factory } from './factories/VKwentaRedeemer__factory' +export type { BatchClaimer } from "./BatchClaimer"; +export type { DappMaintenance } from "./DappMaintenance"; +export type { ERC20 } from "./ERC20"; +export type { ExchangeRates } from "./ExchangeRates"; +export type { Exchanger } from "./Exchanger"; +export type { FuturesMarket } from "./FuturesMarket"; +export type { FuturesMarketData } from "./FuturesMarketData"; +export type { FuturesMarketSettings } from "./FuturesMarketSettings"; +export type { KwentaArrakisVault } from "./KwentaArrakisVault"; +export type { KwentaStakingRewards } from "./KwentaStakingRewards"; +export type { MultipleMerkleDistributor } from "./MultipleMerkleDistributor"; +export type { MultipleMerkleDistributorOp } from "./MultipleMerkleDistributorOp"; +export type { MultipleMerkleDistributorPerpsV2 } from "./MultipleMerkleDistributorPerpsV2"; +export type { PerpsV2Market } from "./PerpsV2Market"; +export type { PerpsV2MarketData } from "./PerpsV2MarketData"; +export type { PerpsV2MarketSettings } from "./PerpsV2MarketSettings"; +export type { PerpsV2MarketViews } from "./PerpsV2MarketViews"; +export type { PerpsV3MarketProxy } from "./PerpsV3MarketProxy"; +export type { Pyth } from "./Pyth"; +export type { ReverseRecords } from "./ReverseRecords"; +export type { RewardEscrow } from "./RewardEscrow"; +export type { SmartMarginAccount } from "./SmartMarginAccount"; +export type { SmartMarginAccountFactory } from "./SmartMarginAccountFactory"; +export type { StakingRewards } from "./StakingRewards"; +export type { SupplySchedule } from "./SupplySchedule"; +export type { Synth } from "./Synth"; +export type { SynthRedeemer } from "./SynthRedeemer"; +export type { SynthSwap } from "./SynthSwap"; +export type { SynthUtil } from "./SynthUtil"; +export type { Synthetix } from "./Synthetix"; +export type { SystemSettings } from "./SystemSettings"; +export type { SystemStatus } from "./SystemStatus"; +export type { VKwentaRedeemer } from "./VKwentaRedeemer"; +export type { VeKwentaRedeemer } from "./VeKwentaRedeemer"; +export * as factories from "./factories"; +export { BatchClaimer__factory } from "./factories/BatchClaimer__factory"; +export { DappMaintenance__factory } from "./factories/DappMaintenance__factory"; +export { ERC20__factory } from "./factories/ERC20__factory"; +export { Exchanger__factory } from "./factories/Exchanger__factory"; +export { ExchangeRates__factory } from "./factories/ExchangeRates__factory"; +export { FuturesMarket__factory } from "./factories/FuturesMarket__factory"; +export { FuturesMarketData__factory } from "./factories/FuturesMarketData__factory"; +export { FuturesMarketSettings__factory } from "./factories/FuturesMarketSettings__factory"; +export { KwentaArrakisVault__factory } from "./factories/KwentaArrakisVault__factory"; +export { KwentaStakingRewards__factory } from "./factories/KwentaStakingRewards__factory"; +export { MultipleMerkleDistributor__factory } from "./factories/MultipleMerkleDistributor__factory"; +export { MultipleMerkleDistributorOp__factory } from "./factories/MultipleMerkleDistributorOp__factory"; +export { MultipleMerkleDistributorPerpsV2__factory } from "./factories/MultipleMerkleDistributorPerpsV2__factory"; +export { PerpsV2Market__factory } from "./factories/PerpsV2Market__factory"; +export { PerpsV2MarketData__factory } from "./factories/PerpsV2MarketData__factory"; +export { PerpsV2MarketSettings__factory } from "./factories/PerpsV2MarketSettings__factory"; +export { PerpsV2MarketViews__factory } from "./factories/PerpsV2MarketViews__factory"; +export { PerpsV3MarketProxy__factory } from "./factories/PerpsV3MarketProxy__factory"; +export { Pyth__factory } from "./factories/Pyth__factory"; +export { ReverseRecords__factory } from "./factories/ReverseRecords__factory"; +export { RewardEscrow__factory } from "./factories/RewardEscrow__factory"; +export { SmartMarginAccount__factory } from "./factories/SmartMarginAccount__factory"; +export { SmartMarginAccountFactory__factory } from "./factories/SmartMarginAccountFactory__factory"; +export { StakingRewards__factory } from "./factories/StakingRewards__factory"; +export { SupplySchedule__factory } from "./factories/SupplySchedule__factory"; +export { Synth__factory } from "./factories/Synth__factory"; +export { Synthetix__factory } from "./factories/Synthetix__factory"; +export { SynthRedeemer__factory } from "./factories/SynthRedeemer__factory"; +export { SynthSwap__factory } from "./factories/SynthSwap__factory"; +export { SynthUtil__factory } from "./factories/SynthUtil__factory"; +export { SystemSettings__factory } from "./factories/SystemSettings__factory"; +export { SystemStatus__factory } from "./factories/SystemStatus__factory"; +export { VeKwentaRedeemer__factory } from "./factories/VeKwentaRedeemer__factory"; +export { VKwentaRedeemer__factory } from "./factories/VKwentaRedeemer__factory"; diff --git a/packages/sdk/src/index.ts b/packages/sdk/src/index.ts index 5283fee325..bc31f35294 100644 --- a/packages/sdk/src/index.ts +++ b/packages/sdk/src/index.ts @@ -3,6 +3,7 @@ import { ethers } from 'ethers' import Context, { IContext } from './context' import ExchangeService from './services/exchange' import FuturesService from './services/futures' +import PerpsV3 from './services/perpsV3' import KwentaTokenService from './services/kwentaToken' import PricesService from './services/prices' import SynthsService from './services/synths' @@ -14,6 +15,7 @@ export default class KwentaSDK { public exchange: ExchangeService public futures: FuturesService + public perpsV3: PerpsV3 public synths: SynthsService public transactions: TransactionsService public kwentaToken: KwentaTokenService @@ -29,6 +31,7 @@ export default class KwentaSDK { this.transactions = new TransactionsService(this) this.kwentaToken = new KwentaTokenService(this) this.system = new SystemService(this) + this.perpsV3 = new PerpsV3(this) } public setProvider(provider: ethers.providers.Provider) { diff --git a/packages/sdk/src/queries/perpsV3.ts b/packages/sdk/src/queries/perpsV3.ts new file mode 100644 index 0000000000..f828d5f01b --- /dev/null +++ b/packages/sdk/src/queries/perpsV3.ts @@ -0,0 +1,63 @@ +import request, { gql } from 'graphql-request' + +import KwentaSDK from '..' +import { PerpsV3Market } from '../types' + +export const getPerpsV3Markets = async (sdk: KwentaSDK): Promise => { + const response: any = await request( + sdk.perpsV3.subgraphUrl, + gql` + query { + markets { + id + perpsMarketId + marketOwner + marketName + marketSymbol + feedId + owner + maxFundingVelocity + skewScale + initialMarginFraction + maintenanceMarginFraction + liquidationRewardRatioD18 + maxLiquidationLimitAccumulationMultiplier + lockedOiPercent + makerFee + takerFee + } + } + ` + ) + + return response.markets +} + +export const queryPerpsV3Accounts = async ( + sdk: KwentaSDK, + walletAddress: string +): Promise< + { + id: string + accountId: string + owner: string + }[] +> => { + const response: any = await request( + sdk.perpsV3.subgraphUrl, + gql` + query GetAccounts($owner: String) { + accounts(where: { owner_contains: $owner }) { + id + accountId + owner + } + } + `, + { + owner: walletAddress, + } + ) + + return response.accounts +} diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts new file mode 100644 index 0000000000..b9550bd5ac --- /dev/null +++ b/packages/sdk/src/services/perpsV3.ts @@ -0,0 +1,599 @@ +import { BigNumber } from '@ethersproject/bignumber' +import { formatBytes32String } from '@ethersproject/strings' +import Wei, { wei } from '@synthetixio/wei' +import { Contract as EthCallContract } from 'ethcall' +import { ethers } from 'ethers' + +import KwentaSDK from '..' +import { UNSUPPORTED_NETWORK } from '../common/errors' +import { KWENTA_TRACKING_CODE } from '../constants/futures' +import { Period, PERIOD_IN_SECONDS } from '../constants/period' +import { getPerpsV2MarketMulticall } from '../contracts' +import PerpsMarketABI from '../contracts/abis/PerpsV2Market.json' +import PerpsV2MarketInternal from '../contracts/PerpsV2MarketInternalV2' +import { PerpsV2Market__factory } from '../contracts/types' +import { IPerpsV2MarketConsolidated } from '../contracts/types/PerpsV2Market' +import { + queryFuturesTrades, + queryIsolatedMarginTransfers, + queryPositionHistory, + queryTrades, + queryFundingRateHistory, +} from '../queries/futures' +import { NetworkId, NetworkOverrideOptions } from '../types/common' +import { + FuturesMarket, + FuturesMarketAsset, + FuturesMarketKey, + FuturesVolumes, + MarketClosureReason, + ContractOrderType, + PositionDetail, + PositionSide, + MarginTransfer, + FuturesAccountType, +} from '../types/futures' +import { PricesMap } from '../types/prices' +import { + appAdjustedLeverage, + formatDelayedOrder, + mapFuturesPosition, + mapFuturesPositions, + mapTrades, + getPerpsV3SubgraphUrl, +} from '../utils/futures' +import { getReasonFromCode } from '../utils/synths' +import { getPerpsV3Markets, queryPerpsV3Accounts } from '../queries/perpsV3' +import { weiFromWei } from '../utils' + +export default class PerpsV3Service { + private sdk: KwentaSDK + public markets: FuturesMarket[] | undefined + public internalFuturesMarkets: Partial< + Record + > = {} + + constructor(sdk: KwentaSDK) { + this.sdk = sdk + } + + get subgraphUrl() { + return getPerpsV3SubgraphUrl(this.sdk.context.networkId) + } + + public async getMarkets(networkOverride?: NetworkOverrideOptions) { + const perpsV3Markets = await getPerpsV3Markets(this.sdk) + // const enabledMarkets = marketsForNetwork( + // networkOverride?.networkId || this.sdk.context.networkId, + // this.sdk.context.logError + // ) + // const contracts = + // networkOverride && networkOverride?.networkId !== this.sdk.context.networkId + // ? getContractsByNetwork(networkOverride.networkId, networkOverride.provider) + // : this.sdk.context.contracts + + // const { SystemStatus } = contracts + // const { + // ExchangeRates, + // PerpsV2MarketData, + // PerpsV2MarketSettings, + // } = this.sdk.context.multicallContracts + + // if (!SystemStatus || !ExchangeRates || !PerpsV2MarketData || !PerpsV2MarketSettings) { + // throw new Error(UNSUPPORTED_NETWORK) + // } + + // const futuresData = await this.sdk.context.multicallProvider.all([ + // PerpsV2MarketData.allProxiedMarketSummaries(), + // PerpsV2MarketSettings.minInitialMargin(), + // PerpsV2MarketSettings.minKeeperFee(), + // ]) + + // const { markets, minInitialMargin, minKeeperFee } = { + // markets: futuresData[0] as PerpsV2MarketData.MarketSummaryStructOutput[], + // minInitialMargin: futuresData[1] as BigNumber, + // minKeeperFee: futuresData[2] as BigNumber, + // } + + // const filteredMarkets = markets.filter((m) => { + // const marketKey = parseBytes32String(m.key) as FuturesMarketKey + // const market = enabledMarkets.find((market) => { + // return marketKey === market.key + // }) + // return !!market + // }) + + // const marketKeys = filteredMarkets.map((m) => { + // return m.key + // }) + + // const parametersCalls = marketKeys.map((key: string) => PerpsV2MarketSettings.parameters(key)) + + // let marketParameters: IPerpsV2MarketSettings.ParametersStructOutput[] = [] + + // if (this.sdk.context.isMainnet) { + // marketParameters = await this.sdk.context.multicallProvider.all(parametersCalls) + // } else { + // const firstResponses = await this.sdk.context.multicallProvider.all( + // parametersCalls.slice(0, 20) + // ) + // const secondResponses = await this.sdk.context.multicallProvider.all( + // parametersCalls.slice(20, parametersCalls.length) + // ) + // marketParameters = [ + // ...firstResponses, + // ...secondResponses, + // ] as IPerpsV2MarketSettings.ParametersStructOutput[] + // } + + // const { suspensions, reasons } = await SystemStatus.getFuturesMarketSuspensions(marketKeys) + + const futuresMarkets = perpsV3Markets.map( + ( + { + perpsMarketId, + marketSymbol, + marketName, + marketOwner, + maxFundingVelocity, + makerFee, + takerFee, + skewScale, + }, + i: number + ): FuturesMarket => ({ + market: marketOwner, + marketKey: marketSymbol as FuturesMarketKey, + marketName: marketName, // TODO: Map asset + asset: marketSymbol as FuturesMarketAsset, // TODO: Map asset + assetHex: '', // TODO: Probably remove hex + currentFundingRate: wei(0.0001), // TODO: Funding rate + currentFundingVelocity: wei(maxFundingVelocity).div(24 * 24), // TODO: Current not max? + feeRates: { + makerFee: weiFromWei(makerFee), + takerFee: weiFromWei(takerFee), + makerFeeDelayedOrder: weiFromWei(makerFee), + takerFeeDelayedOrder: weiFromWei(takerFee), + makerFeeOffchainDelayedOrder: weiFromWei(makerFee), + takerFeeOffchainDelayedOrder: weiFromWei(takerFee), + }, + openInterest: { + // TODO: Assign open interest + shortPct: 0, + longPct: 0, + shortUSD: wei(0), + longUSD: wei(0), + long: wei(0), + short: wei(0), + }, + marketDebt: wei(0), + marketSkew: wei(0), + contractMaxLeverage: wei(25), // TODO: Assign leverage + appMaxLeverage: appAdjustedLeverage(wei(25)), + marketSize: wei(0), + marketLimitUsd: wei(1000000), // TODO: Assign limits + marketLimitNative: wei(100), + minInitialMargin: wei(50), // TODO: Is this still relevant in v3 + keeperDeposit: wei(4), // TODO: Assign min keeper fee + isSuspended: false, // TODO: Assign suspensions + marketClosureReason: getReasonFromCode(2) as MarketClosureReason, // TODO: Map closure reason + settings: { + maxMarketValue: wei(1000), // TODO: Max market value + skewScale: weiFromWei(skewScale), + delayedOrderConfirmWindow: 20000, // TODO: assign + offchainDelayedOrderMinAge: 20000, // TODO: assign + offchainDelayedOrderMaxAge: 20000, // TODO: assign + minDelayTimeDelta: 100, // TODO: assign + maxDelayTimeDelta: 100, // TODO: assign + }, + }) + ) + return futuresMarkets + } + + // TODO: types + // TODO: Improve the API for fetching positions + public async getFuturesPositions( + address: string, // Cross margin or EOA address + futuresMarkets: { asset: FuturesMarketAsset; marketKey: FuturesMarketKey; address: string }[] + ) { + const marketDataContract = this.sdk.context.multicallContracts.PerpsV2MarketData + + if (!this.sdk.context.isL2 || !marketDataContract) { + throw new Error(UNSUPPORTED_NETWORK) + } + + const positionCalls = [] + const liquidationCalls = [] + + for (const { address: marketAddress, marketKey } of futuresMarkets) { + positionCalls.push( + marketDataContract.positionDetailsForMarketKey(formatBytes32String(marketKey), address) + ) + const marketContract = new EthCallContract(marketAddress, PerpsMarketABI) + liquidationCalls.push(marketContract.canLiquidate(address)) + } + + // TODO: Combine these two? + const positionDetails = (await this.sdk.context.multicallProvider.all( + positionCalls + )) as PositionDetail[] + const canLiquidateState = (await this.sdk.context.multicallProvider.all( + liquidationCalls + )) as boolean[] + + // map the positions using the results + const positions = await Promise.all( + positionDetails.map(async (position, ind) => { + const canLiquidate = canLiquidateState[ind] + const marketKey = futuresMarkets[ind].marketKey + const asset = futuresMarkets[ind].asset + + return mapFuturesPosition(position, canLiquidate, asset, marketKey) + }) + ) + + return positions + } + + public async getMarketFundingRatesHistory( + marketAsset: FuturesMarketAsset, + periodLength = PERIOD_IN_SECONDS.TWO_WEEKS + ) { + const minTimestamp = Math.floor(Date.now() / 1000) - periodLength + return queryFundingRateHistory(this.sdk, marketAsset, minTimestamp) + } + + public async getAverageFundingRates(markets: FuturesMarket[], prices: PricesMap, period: Period) { + return [] + // const fundingRateInputs: FundingRateInput[] = markets.map( + // ({ asset, market, currentFundingRate }) => { + // const price = prices[asset] + // return { + // marketAddress: market, + // marketKey: MarketKeyByAsset[asset], + // price: price, + // currentFundingRate: currentFundingRate, + // } + // } + // ) + + // const fundingRateQueries = fundingRateInputs.map(({ marketAddress, marketKey }) => { + // return gql` + // # last before timestamp + // ${marketKey}_first: fundingRateUpdates( + // first: 1 + // where: { market: "${marketAddress}", timestamp_lt: $minTimestamp } + // orderBy: sequenceLength + // orderDirection: desc + // ) { + // timestamp + // funding + // } + + // # first after timestamp + // ${marketKey}_next: fundingRateUpdates( + // first: 1 + // where: { market: "${marketAddress}", timestamp_gt: $minTimestamp } + // orderBy: sequenceLength + // orderDirection: asc + // ) { + // timestamp + // funding + // } + + // # latest update + // ${marketKey}_latest: fundingRateUpdates( + // first: 1 + // where: { market: "${marketAddress}" } + // orderBy: sequenceLength + // orderDirection: desc + // ) { + // timestamp + // funding + // } + // ` + // }) + // const periodLength = PERIOD_IN_SECONDS[period] + // const minTimestamp = Math.floor(Date.now() / 1000) - periodLength + + // const marketFundingResponses: Record = await request( + // this.futuresGqlEndpoint, + // gql` + // query fundingRateUpdates($minTimestamp: BigInt!) { + // ${fundingRateQueries.reduce((acc: string, curr: string) => { + // return acc + curr + // })} + // } + // `, + // { minTimestamp: minTimestamp } + // ) + + // const periodTitle = period === Period.ONE_HOUR ? '1H Funding Rate' : 'Funding Rate' + + // const fundingRateResponses = fundingRateInputs.map( + // ({ marketKey, currentFundingRate, price }) => { + // if (!price) return null + // const marketResponses = [ + // marketFundingResponses[`${marketKey}_first`], + // marketFundingResponses[`${marketKey}_next`], + // marketFundingResponses[`${marketKey}_latest`], + // ] + + // const responseFilt = marketResponses + // .filter((value: FundingRateUpdate[]) => value.length > 0) + // .map((entry: FundingRateUpdate[]): FundingRateUpdate => entry[0]) + // .sort((a: FundingRateUpdate, b: FundingRateUpdate) => a.timestamp - b.timestamp) + + // const fundingRate = + // responseFilt && !!currentFundingRate + // ? calculateFundingRate( + // minTimestamp, + // periodLength, + // responseFilt, + // price, + // currentFundingRate + // ) + // : currentFundingRate ?? null + + // const fundingPeriod = + // responseFilt && !!currentFundingRate ? periodTitle : 'Inst. Funding Rate' + + // const fundingRateResponse: FundingRateResponse = { + // asset: marketKey, + // fundingTitle: fundingPeriod, + // fundingRate: fundingRate, + // } + // return fundingRateResponse + // } + // ) + + // return fundingRateResponses.filter((funding): funding is FundingRateResponse => !!funding) + } + + public async getDailyVolumes(): Promise { + return {} + // const minTimestamp = Math.floor(calculateTimestampForPeriod(PERIOD_IN_HOURS.ONE_DAY) / 1000) + // const response = await getFuturesAggregateStats( + // this.futuresGqlEndpoint, + // { + // first: 999999, + // where: { + // period: `${PERIOD_IN_SECONDS.ONE_HOUR}`, + // timestamp_gte: `${minTimestamp}`, + // }, + // }, + // { + // id: true, + // marketKey: true, + // asset: true, + // volume: true, + // trades: true, + // timestamp: true, + // period: true, + // feesCrossMarginAccounts: true, + // feesKwenta: true, + // feesSynthetix: true, + // } + // ) + // return response ? calculateVolumes(response) : {} + } + + public async getPerpsV3AccountIds(walletAddress?: string | null): Promise { + if (!walletAddress) return [] + const accounts = await queryPerpsV3Accounts(this.sdk, walletAddress.toLowerCase()) + return accounts.map((a) => a.id) + } + + public async getAccountOwner(id: number): Promise { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + return marketProxy.getAccountOwner(id) + } + + public async getMarginTransfers(walletAddress?: string | null): Promise { + const address = walletAddress ?? this.sdk.context.walletAddress + return queryIsolatedMarginTransfers(this.sdk, address) + } + + public async getAccountCollateral(crossMarginAddress: string) { + // TODO: Get collateral balances + return {} + } + + public async getAvailableMargin(walletAddress: string, crossMarginAddress: string) { + return wei(0) + } + + // Perps V2 read functions + public async getDelayedOrder(account: string, marketAddress: string) { + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.provider) + const order = await market.delayedOrders(account) + return formatDelayedOrder(account, marketAddress, order) + } + + public async getDelayedOrders(account: string, marketAddresses: string[]) { + const marketContracts = marketAddresses.map(getPerpsV2MarketMulticall) + + const orders = (await this.sdk.context.multicallProvider.all( + marketContracts.map((market) => market.delayedOrders(account)) + )) as IPerpsV2MarketConsolidated.DelayedOrderStructOutput[] + return orders.map((order, ind) => { + return formatDelayedOrder(account, marketAddresses[ind], order) + }) + } + + public async getIsolatedTradePreview( + marketAddress: string, + marketKey: FuturesMarketKey, + orderType: ContractOrderType, + inputs: { + sizeDelta: Wei + price: Wei + leverageSide: PositionSide + } + ) { + const fillPrice = wei(0) + const liqPrice = wei(0) + const leverage = wei(0) + + return { + fillPrice, + liqPrice, + leverage, + } + } + + public async getPositionHistory(walletAddress: string) { + const response = await queryPositionHistory(this.sdk, walletAddress) + return response ? mapFuturesPositions(response) : [] + } + + // TODO: Support pagination + + public async getTradesForMarket( + marketAsset: FuturesMarketAsset, + walletAddress: string, + accountType: FuturesAccountType, + pageLength: number = 16 + ) { + const response = await queryTrades(this.sdk, { + marketAsset, + walletAddress, + accountType, + pageLength, + }) + return response ? mapTrades(response) : [] + } + + public async getAllTrades( + walletAddress: string, + accountType: FuturesAccountType, + pageLength: number = 16 + ) { + const response = await queryTrades(this.sdk, { + walletAddress, + accountType, + pageLength, + }) + return response ? mapTrades(response) : [] + } + + // This is on an interval of 15 seconds. + public async getFuturesTrades(marketKey: FuturesMarketKey, minTs: number, maxTs: number) { + const response = await queryFuturesTrades(this.sdk, marketKey, minTs, maxTs) + return response ? mapTrades(response) : null + } + + // TODO: Get delayed order fee + public async getOrderFee(marketAddress: string, size: Wei) { + const marketContract = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + const orderFee = await marketContract.orderFee(size.toBN(), 0) + return wei(orderFee.fee) + } + + // Contract mutations + + public async approveDeposit( + crossMarginAddress: string, + amount: BigNumber = BigNumber.from(ethers.constants.MaxUint256) + ) { + if (!this.sdk.context.contracts.SUSD) throw new Error(UNSUPPORTED_NETWORK) + return this.sdk.transactions.createContractTxn(this.sdk.context.contracts.SUSD, 'approve', [ + crossMarginAddress, + amount, + ]) + } + + public async depositToAccount(marketAddress: string, amount: Wei) { + // TODO: Accept account + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + const txn = this.sdk.transactions.createContractTxn(market, 'transferMargin', [amount.toBN()]) + return txn + } + + public async withdrawFromAccount(marketAddress: string, amount: Wei) { + // TODO: Accept account + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + const txn = this.sdk.transactions.createContractTxn(market, 'transferMargin', [ + amount.neg().toBN(), + ]) + return txn + } + + public async closePosition(marketAddress: string, priceImpactDelta: Wei) { + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + return market.closePositionWithTracking(priceImpactDelta.toBN(), KWENTA_TRACKING_CODE) + } + + public async submitOrder( + marketId: string, + accountId: string, + sizeDelta: Wei, + acceptablePrice: Wei + ) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + + const commitment = { + marketId: marketId, + accountId, + sizeDelta: sizeDelta.toBN, + settlementStrategyId: 0, + acceptablePrice: acceptablePrice.toBN(), + trackingCode: ethers.constants.HashZero, + } + + return this.sdk.transactions.createContractTxn(marketProxy, 'commitOrder', [commitment]) + } + + public async cancelDelayedOrder(marketAddress: string, account: string, isOffchain: boolean) { + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + return isOffchain + ? market.cancelOffchainDelayedOrder(account) + : market.cancelDelayedOrder(account) + } + + public async executeDelayedOrder(marketAddress: string, account: string) { + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + return market.executeDelayedOrder(account) + } + + public async executeDelayedOffchainOrder( + marketKey: FuturesMarketKey, + marketAddress: string, + account: string + ) { + const { Pyth } = this.sdk.context.contracts + const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) + if (!Pyth) throw new Error(UNSUPPORTED_NETWORK) + + // get price update data + const priceUpdateData = await this.sdk.prices.getPythPriceUpdateData(marketKey) + const updateFee = await Pyth.getUpdateFee(priceUpdateData) + + return market.executeOffchainDelayedOrder(account, priceUpdateData, { value: updateFee }) + } + + public async createPerpsV3Account(requestedId: number) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + return this.sdk.transactions.createContractTxn(marketProxy, 'createAccount', [requestedId]) + } + + public getSkewAdjustedPrice = async (price: Wei, marketAddress: string, marketKey: string) => { + const marketContract = new EthCallContract(marketAddress, PerpsMarketABI) + const { PerpsV2MarketSettings } = this.sdk.context.multicallContracts + if (!PerpsV2MarketSettings) throw new Error(UNSUPPORTED_NETWORK) + + const [marketSkew, skewScale] = await this.sdk.context.multicallProvider.all([ + marketContract.marketSkew(), + PerpsV2MarketSettings.skewScale(formatBytes32String(marketKey)), + ]) + + const skewWei = wei(marketSkew) + const scaleWei = wei(skewScale) + + return price.mul(skewWei.div(scaleWei).add(1)) + } +} diff --git a/packages/sdk/src/types/futures.ts b/packages/sdk/src/types/futures.ts index 7127635015..e511dd1103 100644 --- a/packages/sdk/src/types/futures.ts +++ b/packages/sdk/src/types/futures.ts @@ -116,6 +116,9 @@ export enum FuturesMarketKey { sFLOKIPERP = 'sFLOKIPERP', sINJPERP = 'sINJPERP', sSTETHPERP = 'sSTETHPERP', + + // Perps V3 + ETH = 'ETH', } export enum FuturesMarketAsset { @@ -161,6 +164,9 @@ export enum FuturesMarketAsset { FLOKI = 'FLOKI', INJ = 'INJ', STETH = 'STETH', + + // Perps V3 (Temporary) + ETH = 'ETH', } export interface FuturesMarketConfig { @@ -208,7 +214,7 @@ export enum PositionSide { SHORT = 'short', } -export type FuturesAccountType = 'cross_margin' | 'smart_margin' | 'isolated_margin' +export type FuturesAccountType = 'cross_margin' | 'smart_margin' | 'isolated_margin' | 'perps_v3' export enum ContractOrderType { MARKET = 0, @@ -487,3 +493,22 @@ export type SLTPOrderInputs = { isCancelled?: boolean } } + +export type PerpsV3Market = { + id: string + perpsMarketId: string + marketOwner: string + marketName: string + marketSymbol: string + feedId: string + owner: string + maxFundingVelocity: string + skewScale: string + initialMarginFraction: string + maintenanceMarginFraction: string + liquidationRewardRatioD18: string + maxLiquidationLimitAccumulationMultiplier: string + lockedOiPercent: string + makerFee: string + takerFee: string +} diff --git a/packages/sdk/src/utils/futures.ts b/packages/sdk/src/utils/futures.ts index 21bc649fa5..4b97df18ba 100644 --- a/packages/sdk/src/utils/futures.ts +++ b/packages/sdk/src/utils/futures.ts @@ -14,6 +14,7 @@ import { KWENTA_PYTH_SERVER, PUBLIC_PYTH_SERVER, DEFAULT_PRICE_IMPACT_DELTA_PERCENT, + PERPS_V3_SUBGRAPH_URLS, } from '../constants/futures' import { ZERO_WEI } from '../constants/number' import { SECONDS_PER_DAY } from '../constants/period' @@ -56,6 +57,10 @@ export const getFuturesEndpoint = (networkId: number) => { return FUTURES_ENDPOINTS[networkId] || FUTURES_ENDPOINTS[10] } +export const getPerpsV3SubgraphUrl = (networkId: NetworkId): string => { + return PERPS_V3_SUBGRAPH_URLS[networkId] ?? PERPS_V3_SUBGRAPH_URLS[420] +} + export const getMainEndpoint = (networkId: number) => { return MAIN_ENDPOINTS[networkId] || MAIN_ENDPOINTS[10] } @@ -643,6 +648,7 @@ export const appAdjustedLeverage = (marketLeverage: Wei) => { export const MarketAssetByKey: Record = { [FuturesMarketKey.sBTCPERP]: FuturesMarketAsset.sBTC, [FuturesMarketKey.sETHPERP]: FuturesMarketAsset.sETH, + [FuturesMarketKey.ETH]: FuturesMarketAsset.ETH, [FuturesMarketKey.sLINKPERP]: FuturesMarketAsset.LINK, [FuturesMarketKey.sSOLPERP]: FuturesMarketAsset.SOL, [FuturesMarketKey.sAVAXPERP]: FuturesMarketAsset.AVAX, @@ -688,6 +694,7 @@ export const MarketAssetByKey: Record = { export const MarketKeyByAsset: Record = { [FuturesMarketAsset.sBTC]: FuturesMarketKey.sBTCPERP, [FuturesMarketAsset.sETH]: FuturesMarketKey.sETHPERP, + [FuturesMarketAsset.ETH]: FuturesMarketKey.ETH, [FuturesMarketAsset.LINK]: FuturesMarketKey.sLINKPERP, [FuturesMarketAsset.SOL]: FuturesMarketKey.sSOLPERP, [FuturesMarketAsset.AVAX]: FuturesMarketKey.sAVAXPERP, @@ -733,6 +740,7 @@ export const MarketKeyByAsset: Record = { export const AssetDisplayByAsset: Record = { [FuturesMarketAsset.sBTC]: 'Bitcoin', [FuturesMarketAsset.sETH]: 'Ether', + [FuturesMarketAsset.ETH]: 'Ether', [FuturesMarketAsset.LINK]: 'Chainlink', [FuturesMarketAsset.SOL]: 'Solana', [FuturesMarketAsset.AVAX]: 'Avalanche', diff --git a/packages/sdk/src/utils/subgraph.ts b/packages/sdk/src/utils/subgraph.ts index 4c498858c7..725d60100a 100644 --- a/packages/sdk/src/utils/subgraph.ts +++ b/packages/sdk/src/utils/subgraph.ts @@ -2962,7 +2962,7 @@ export const getSmartMarginAccounts = async function Date: Fri, 7 Jul 2023 14:33:32 +0100 Subject: [PATCH 02/43] Margin types refactor part 1 --- .../app/src/__tests__/pages/market.test.tsx | 2 +- .../app/src/components/Nav/FuturesIcon.tsx | 6 +- .../components/SocketBridge/SocketBridge.tsx | 3 +- packages/app/src/constants/defaults.ts | 4 +- packages/app/src/constants/futures.ts | 6 + packages/app/src/constants/queryKeys.ts | 21 +- packages/app/src/constants/routes.ts | 24 +- packages/app/src/pages/market.tsx | 44 +- packages/app/src/queries/futures/types.ts | 5 - .../FuturesPositionsTable.tsx | 22 +- .../MobileDashboard/OpenPositions.tsx | 8 +- .../app/src/sections/dashboard/Overview.tsx | 28 +- .../src/sections/dashboard/PortfolioChart.tsx | 24 +- .../ClosePositionModal/ClosePositionModal.tsx | 10 +- .../futures/CreatePerpsV3AccountModal.tsx | 17 +- .../CrossMarginOnboard/CrossMarginOnboard.tsx | 16 +- .../EditPositionMarginInput.tsx | 4 +- .../EditPositionMarginModal.tsx | 8 +- .../EditPositionSizeInput.tsx | 7 +- .../EditPositionSizeModal.tsx | 8 +- .../src/sections/futures/LeverageInput.tsx | 11 +- .../MobileTrade/OverviewTabs/AccountTab.tsx | 5 +- .../MobileTrade/UserTabs/PositionsTab.tsx | 23 +- .../MobileTrade/UserTabs/TransfersTab.tsx | 6 +- .../futures/OrderSizing/OrderSizeSlider.tsx | 8 +- .../futures/OrderSizing/OrderSizing.tsx | 8 +- .../sections/futures/Trade/ManagePosition.tsx | 23 +- .../src/sections/futures/Trade/SLTPInputs.tsx | 10 +- .../futures/Trade/SwitchToSmartMargin.tsx | 81 - .../sections/futures/Trade/TradeBalance.tsx | 34 +- .../src/sections/futures/Trade/TradePanel.tsx | 10 +- .../futures/Trade/TradePanelPriceInput.tsx | 4 +- .../Trade/TransferIsolatedMarginModal.tsx | 6 +- .../DelayedOrderConfirmationModal.tsx | 8 +- .../TradeConfirmationModal.tsx | 8 +- .../ManageKeeperBalanceModal.tsx | 4 +- .../SmartMarginInfoBox.tsx} | 10 +- .../WithdrawSmartMargin.tsx | 11 +- .../app/src/sections/futures/Transfers.tsx | 5 +- .../futures/UserInfo/PositionsTable.tsx | 29 +- .../sections/futures/UserInfo/UserInfo.tsx | 16 +- .../Layout/AppLayout/Header/constants.tsx | 5 +- packages/app/src/state/crossMargin/actions.ts | 364 + .../state/{perpsV3 => crossMargin}/reducer.ts | 208 +- .../app/src/state/crossMargin/selectors.ts | 119 + .../state/{perpsV3 => crossMargin}/types.ts | 8 +- packages/app/src/state/futures/actions.ts | 1069 +-- packages/app/src/state/futures/hooks.ts | 95 +- packages/app/src/state/futures/reducer.ts | 453 +- packages/app/src/state/futures/selectors.ts | 477 +- packages/app/src/state/futures/types.ts | 96 +- packages/app/src/state/helpers.ts | 6 +- packages/app/src/state/migrations.ts | 3 +- packages/app/src/state/perpsV3/actions.ts | 174 - packages/app/src/state/perpsV3/selectors.ts | 24 - packages/app/src/state/store.ts | 6 +- packages/app/src/utils/futures.ts | 14 +- packages/app/testing/unit/mocks/data/app.ts | 2 +- .../app/testing/unit/mocks/data/futures.ts | 4 +- packages/sdk/src/constants/futures.ts | 12 - .../sdk/src/contracts/types/BatchClaimer.ts | 218 +- .../src/contracts/types/DappMaintenance.ts | 510 +- packages/sdk/src/contracts/types/ERC20.ts | 816 +- .../sdk/src/contracts/types/ExchangeRates.ts | 2789 +++---- packages/sdk/src/contracts/types/Exchanger.ts | 1934 ++--- .../sdk/src/contracts/types/FuturesMarket.ts | 2624 +++--- .../src/contracts/types/FuturesMarketData.ts | 1141 ++- .../contracts/types/FuturesMarketSettings.ts | 10 +- .../src/contracts/types/KwentaArrakisVault.ts | 12 +- .../contracts/types/KwentaStakingRewards.ts | 1456 ++-- .../types/MultipleMerkleDistributor.ts | 858 +- .../types/MultipleMerkleDistributorOp.ts | 807 +- .../types/MultipleMerkleDistributorPerpsV2.ts | 844 +- .../sdk/src/contracts/types/PerpsV2Market.ts | 3560 ++++---- .../src/contracts/types/PerpsV2MarketData.ts | 1290 ++- .../contracts/types/PerpsV2MarketSettings.ts | 15 +- .../src/contracts/types/PerpsV2MarketViews.ts | 1601 ++-- .../src/contracts/types/PerpsV3MarketProxy.ts | 7250 ++++++++--------- packages/sdk/src/contracts/types/Pyth.ts | 968 +-- .../sdk/src/contracts/types/ReverseRecords.ts | 118 +- .../sdk/src/contracts/types/RewardEscrow.ts | 1955 ++--- .../src/contracts/types/SmartMarginAccount.ts | 1146 ++- .../types/SmartMarginAccountFactory.ts | 5 +- .../sdk/src/contracts/types/StakingRewards.ts | 1234 ++- .../sdk/src/contracts/types/SupplySchedule.ts | 5 +- packages/sdk/src/contracts/types/Synth.ts | 1596 ++-- .../sdk/src/contracts/types/SynthRedeemer.ts | 804 +- packages/sdk/src/contracts/types/SynthSwap.ts | 835 +- packages/sdk/src/contracts/types/SynthUtil.ts | 355 +- packages/sdk/src/contracts/types/Synthetix.ts | 4759 +++++------ .../sdk/src/contracts/types/SystemSettings.ts | 100 +- .../sdk/src/contracts/types/SystemStatus.ts | 3671 ++++----- .../src/contracts/types/VKwentaRedeemer.ts | 183 +- .../src/contracts/types/VeKwentaRedeemer.ts | 247 +- packages/sdk/src/contracts/types/common.ts | 45 +- .../types/factories/BatchClaimer__factory.ts | 115 +- .../factories/DappMaintenance__factory.ts | 426 +- .../types/factories/ERC20__factory.ts | 690 +- .../types/factories/ExchangeRates__factory.ts | 2192 +++-- .../types/factories/Exchanger__factory.ts | 1563 ++-- .../factories/FuturesMarketData__factory.ts | 1850 +++-- .../FuturesMarketSettings__factory.ts | 1759 ++-- .../types/factories/FuturesMarket__factory.ts | 2239 +++-- .../factories/KwentaArrakisVault__factory.ts | 2278 +++--- .../KwentaStakingRewards__factory.ts | 1422 ++-- .../MultipleMerkleDistributorOp__factory.ts | 606 +- ...ltipleMerkleDistributorPerpsV2__factory.ts | 644 +- .../MultipleMerkleDistributor__factory.ts | 655 +- .../factories/PerpsV2MarketData__factory.ts | 2318 +++--- .../PerpsV2MarketSettings__factory.ts | 3305 ++++---- .../factories/PerpsV2MarketViews__factory.ts | 1590 ++-- .../types/factories/PerpsV2Market__factory.ts | 2851 ++++--- .../factories/PerpsV3MarketProxy__factory.ts | 6754 ++++++++------- .../types/factories/Pyth__factory.ts | 960 +-- .../factories/ReverseRecords__factory.ts | 88 +- .../types/factories/RewardEscrow__factory.ts | 1345 ++- .../SmartMarginAccountFactory__factory.ts | 573 +- .../factories/SmartMarginAccount__factory.ts | 1226 ++- .../factories/StakingRewards__factory.ts | 1328 ++- .../factories/SupplySchedule__factory.ts | 1302 ++- .../types/factories/SynthRedeemer__factory.ts | 625 +- .../types/factories/SynthSwap__factory.ts | 653 +- .../types/factories/SynthUtil__factory.ts | 283 +- .../types/factories/Synth__factory.ts | 1608 ++-- .../types/factories/Synthetix__factory.ts | 3803 +++++---- .../factories/SystemSettings__factory.ts | 4268 +++++----- .../types/factories/SystemStatus__factory.ts | 2569 +++--- .../factories/VKwentaRedeemer__factory.ts | 164 +- .../factories/VeKwentaRedeemer__factory.ts | 300 +- .../src/contracts/types/factories/index.ts | 68 +- packages/sdk/src/contracts/types/index.ts | 138 +- packages/sdk/src/queries/futures.ts | 58 +- packages/sdk/src/services/futures.ts | 261 +- packages/sdk/src/services/perpsV3.ts | 128 +- packages/sdk/src/types/futures.ts | 16 +- packages/sdk/src/types/stats.ts | 5 - packages/sdk/src/utils/futures.ts | 111 +- packages/sdk/src/utils/subgraph.ts | 2 +- 138 files changed, 48831 insertions(+), 55795 deletions(-) create mode 100644 packages/app/src/constants/futures.ts delete mode 100644 packages/app/src/sections/futures/Trade/SwitchToSmartMargin.tsx rename packages/app/src/sections/futures/{TradeCrossMargin => TradeSmartMargin}/ManageKeeperBalanceModal.tsx (98%) rename packages/app/src/sections/futures/{TradeCrossMargin/CrossMarginInfoBox.tsx => TradeSmartMargin/SmartMarginInfoBox.tsx} (87%) rename packages/app/src/sections/futures/{TradeCrossMargin => TradeSmartMargin}/WithdrawSmartMargin.tsx (92%) create mode 100644 packages/app/src/state/crossMargin/actions.ts rename packages/app/src/state/{perpsV3 => crossMargin}/reducer.ts (64%) create mode 100644 packages/app/src/state/crossMargin/selectors.ts rename packages/app/src/state/{perpsV3 => crossMargin}/types.ts (97%) delete mode 100644 packages/app/src/state/perpsV3/actions.ts delete mode 100644 packages/app/src/state/perpsV3/selectors.ts diff --git a/packages/app/src/__tests__/pages/market.test.tsx b/packages/app/src/__tests__/pages/market.test.tsx index 6cfeb239a9..e45e820989 100644 --- a/packages/app/src/__tests__/pages/market.test.tsx +++ b/packages/app/src/__tests__/pages/market.test.tsx @@ -1,4 +1,4 @@ -import { FuturesMarket } from '@kwenta/sdk/dist/types' +import { FuturesMarket } from '@kwenta/sdk/types' import { wei } from '@synthetixio/wei' import { fireEvent, render, waitFor } from '@testing-library/react' import { ReactNode } from 'react' diff --git a/packages/app/src/components/Nav/FuturesIcon.tsx b/packages/app/src/components/Nav/FuturesIcon.tsx index 28725c691e..7568808f8b 100644 --- a/packages/app/src/components/Nav/FuturesIcon.tsx +++ b/packages/app/src/components/Nav/FuturesIcon.tsx @@ -1,4 +1,4 @@ -import { FuturesAccountType } from '@kwenta/sdk/utils' +import { FuturesMarginType } from '@kwenta/sdk/types' import CrossMarginIconDark from 'assets/svg/futures/cross-margin-icon-dark.svg' import CrossMarginIconLight from 'assets/svg/futures/cross-margin-icon-light.svg' @@ -8,7 +8,7 @@ import { useAppSelector } from 'state/hooks' import { selectCurrentTheme } from 'state/preferences/selectors' type IconProps = { - type: FuturesAccountType + type: FuturesMarginType } export default function FuturesIcon(props: IconProps) { @@ -17,7 +17,7 @@ export default function FuturesIcon(props: IconProps) { const CrossMarginIcon = currentTheme === 'dark' ? CrossMarginIconDark : CrossMarginIconLight const IsolatedMarginIcon = currentTheme === 'dark' ? IsolatedMarginIconDark : IsolatedMarginIconLight - return props.type === 'cross_margin' || props.type === 'smart_margin' ? ( + return props.type === FuturesMarginType.SMART_MARGIN ? ( ) : ( diff --git a/packages/app/src/components/SocketBridge/SocketBridge.tsx b/packages/app/src/components/SocketBridge/SocketBridge.tsx index cab0e2c5b4..7ee33806b0 100644 --- a/packages/app/src/components/SocketBridge/SocketBridge.tsx +++ b/packages/app/src/components/SocketBridge/SocketBridge.tsx @@ -1,3 +1,4 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import { Bridge } from '@socket.tech/plugin' import { useCallback } from 'react' import styled, { useTheme } from 'styled-components' @@ -42,7 +43,7 @@ const SocketBridge = () => { enableSameChainSwaps={true} onBridgeSuccess={onBridgeSuccess} /> - {accountType === 'isolated_margin' && ( + {accountType === FuturesMarginType.CROSS_MARGIN && ( diff --git a/packages/app/src/constants/defaults.ts b/packages/app/src/constants/defaults.ts index 62c7e47883..ea613a01c7 100644 --- a/packages/app/src/constants/defaults.ts +++ b/packages/app/src/constants/defaults.ts @@ -1,3 +1,5 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' + import { Language } from 'translations/constants' // app defaults @@ -35,6 +37,6 @@ export const DEFAULT_DELAYED_CANCEL_BUFFER = 15 export const CROSS_MARGIN_ENABLED = true -export const DEFAULT_FUTURES_MARGIN_TYPE = 'cross_margin' +export const DEFAULT_FUTURES_MARGIN_TYPE = FuturesMarginType.SMART_MARGIN export const DEFAULT_LEVERAGE = '1' diff --git a/packages/app/src/constants/futures.ts b/packages/app/src/constants/futures.ts new file mode 100644 index 0000000000..62d3cd72ef --- /dev/null +++ b/packages/app/src/constants/futures.ts @@ -0,0 +1,6 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' + +export const SUPPORTED_PERPS_TYPES = + process.env.NODE_ENV !== 'production' + ? [FuturesMarginType.SMART_MARGIN] + : [FuturesMarginType.SMART_MARGIN, FuturesMarginType.CROSS_MARGIN] diff --git a/packages/app/src/constants/queryKeys.ts b/packages/app/src/constants/queryKeys.ts index b40b34c9a0..4c3259f02e 100644 --- a/packages/app/src/constants/queryKeys.ts +++ b/packages/app/src/constants/queryKeys.ts @@ -1,5 +1,5 @@ import { Period } from '@kwenta/sdk/constants' -import { NetworkId, FuturesAccountType, FuturesMarketAsset } from '@kwenta/sdk/types' +import { NetworkId, FuturesMarketAsset } from '@kwenta/sdk/types' import { CurrencyKey } from './currency' @@ -239,25 +239,6 @@ export const QUERY_KEYS = { TotalLiquidations: ['futures', 'totalLiquidations'], TotalTrades: (networkId: NetworkId) => ['futures', 'totalTrades', networkId], TotalVolume: ['futures', 'totalVolume'], - PotentialTrade: ( - networkId: NetworkId, - market: string | null, - tradeSize: string, - walletAddress: string, - selectedAccountType: FuturesAccountType, - marginDelta: string, - leverageSide: string - ) => [ - 'futures', - 'potentialTrade', - tradeSize, - networkId, - market, - walletAddress, - selectedAccountType, - marginDelta, - leverageSide, - ], MarketLimit: (networkId: NetworkId, market: string | null) => [ 'futures', 'marketLimit', diff --git a/packages/app/src/constants/routes.ts b/packages/app/src/constants/routes.ts index 1696439923..4b741c05fa 100644 --- a/packages/app/src/constants/routes.ts +++ b/packages/app/src/constants/routes.ts @@ -1,4 +1,6 @@ -import { FuturesAccountType, FuturesMarketAsset } from '@kwenta/sdk/types' +import { FuturesMarketAsset } from '@kwenta/sdk/types' + +import { AppFuturesMarginType } from 'state/futures/types' import { EXTERNAL_LINKS } from './links' @@ -32,22 +34,23 @@ export const ROUTES = { Into: (currencyKey: string) => `/exchange/?quote=${currencyKey}`, }, Markets: { - Home: (accountType: FuturesAccountType) => formatUrl('/market', { accountType, asset: 'sETH' }), - MarketPair: (asset: FuturesMarketAsset | string, accountType: FuturesAccountType) => + Home: (accountType: AppFuturesMarginType) => + formatUrl('/market', { accountType, asset: 'sETH' }), + MarketPair: (asset: FuturesMarketAsset | string, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType }), - Position: (asset: FuturesMarketAsset, accountType: FuturesAccountType) => + Position: (asset: FuturesMarketAsset, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType, tab: 'position', }), - Orders: (asset: FuturesMarketAsset, accountType: FuturesAccountType) => + Orders: (asset: FuturesMarketAsset, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType, tab: 'orders' }), - ConditionalOrders: (asset: FuturesMarketAsset, accountType: FuturesAccountType) => + ConditionalOrders: (asset: FuturesMarketAsset, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType, tab: 'conditional_orders' }), - Trades: (asset: FuturesMarketAsset, accountType: FuturesAccountType) => + Trades: (asset: FuturesMarketAsset, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType, tab: 'trades' }), - Transfers: (asset: FuturesMarketAsset, accountType: FuturesAccountType) => + Transfers: (asset: FuturesMarketAsset, accountType: AppFuturesMarginType) => formatUrl('/market', { asset, accountType, tab: 'transfers' }), }, Stats: { @@ -75,7 +78,10 @@ export const SUB_MENUS = { ], } -export const setLastVisited = (baseCurrencyPair: string, accountType: FuturesAccountType): void => { +export const setLastVisited = ( + baseCurrencyPair: string, + accountType: AppFuturesMarginType +): void => { localStorage.setItem('lastVisited', ROUTES.Markets.MarketPair(baseCurrencyPair, accountType)) } diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index cbe55008bb..6c5941ee25 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -1,11 +1,12 @@ -import { FuturesMarketAsset } from '@kwenta/sdk/types' +import { FuturesMarginType, FuturesMarketAsset } from '@kwenta/sdk/types' import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { useRouter } from 'next/router' -import { useEffect, FC, useState, ReactNode } from 'react' +import { useEffect, FC, ReactNode, useMemo } from 'react' import styled from 'styled-components' import Loader from 'components/Loader' import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' +import { SUPPORTED_PERPS_TYPES } from 'constants/futures' import Connector from 'containers/Connector' import useIsL2 from 'hooks/useIsL2' import useWindowSize from 'hooks/useWindowSize' @@ -19,12 +20,11 @@ import MarketHead from 'sections/futures/MarketInfo/MarketHead' import MobileTrade from 'sections/futures/MobileTrade/MobileTrade' import { TRADE_PANEL_WIDTH_LG, TRADE_PANEL_WIDTH_MD } from 'sections/futures/styles' import FuturesUnsupportedNetwork from 'sections/futures/Trade/FuturesUnsupported' -import SwitchToSmartMargin from 'sections/futures/Trade/SwitchToSmartMargin' -import TradeIsolatedMargin from 'sections/futures/Trade/TradePanel' +import TradePanel from 'sections/futures/Trade/TradePanel' import TransferIsolatedMarginModal from 'sections/futures/Trade/TransferIsolatedMarginModal' import DelayedOrderConfirmationModal from 'sections/futures/TradeConfirmation/DelayedOrderConfirmationModal' import TradeConfirmationModalCrossMargin from 'sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin' -import WithdrawSmartMargin from 'sections/futures/TradeCrossMargin/WithdrawSmartMargin' +import WithdrawSmartMargin from 'sections/futures/TradeSmartMargin/WithdrawSmartMargin' import AppLayout from 'sections/shared/Layout/AppLayout' import { setOpenModal } from 'state/app/reducer' import { selectShowModal, selectShowPositionModal } from 'state/app/selectors' @@ -32,13 +32,13 @@ import { clearTradeInputs } from 'state/futures/actions' import { usePollMarketFuturesData } from 'state/futures/hooks' import { setFuturesAccountType, setMarketAsset } from 'state/futures/reducer' import { - selectActiveIsolatedPositionsCount, - selectCMAccountQueryStatus, - selectCrossMarginAccount, + selectSmartMarginAccountQueryStatus, + selectSmartMarginAccount, selectFuturesType, selectMarketAsset, - selectShowCrossMarginOnboard, + selectShowSmartMarginOnboard, } from 'state/futures/selectors' +import { AppFuturesMarginType } from 'state/futures/types' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { PageContent } from 'styles/common' @@ -56,14 +56,17 @@ const Market: MarketComponent = () => { const routerMarketAsset = router.query.asset as FuturesMarketAsset const setCurrentMarket = useAppSelector(selectMarketAsset) - const showOnboard = useAppSelector(selectShowCrossMarginOnboard) + const showOnboard = useAppSelector(selectShowSmartMarginOnboard) const openModal = useAppSelector(selectShowModal) const showPositionModal = useAppSelector(selectShowPositionModal) const accountType = useAppSelector(selectFuturesType) const selectedMarketAsset = useAppSelector(selectMarketAsset) - const routerAccountType = - router.query.accountType === 'cross_margin' ? 'cross_margin' : 'isolated_margin' + const routerAccountType = useMemo(() => { + if (SUPPORTED_PERPS_TYPES.includes(router.query.accountType as AppFuturesMarginType)) + return router.query.accountType as AppFuturesMarginType + return FuturesMarginType.SMART_MARGIN + }, [router.query.accountType]) useEffect(() => { if (router.isReady && accountType !== routerAccountType) { @@ -142,15 +145,8 @@ function TradePanelDesktop() { const isL2 = useIsL2() const { walletAddress } = Connector.useContainer() const accountType = useAppSelector(selectFuturesType) - const queryStatus = useAppSelector(selectCMAccountQueryStatus) - const crossMarginAccount = useAppSelector(selectCrossMarginAccount) - const isolatedPositionsCount = useAppSelector(selectActiveIsolatedPositionsCount) - const [open, setOpen] = useState(false) - - useEffect( - () => setOpen(accountType === 'isolated_margin' && isolatedPositionsCount === 0), - [accountType, isolatedPositionsCount] - ) + const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) + const smartMarginAccount = useAppSelector(selectSmartMarginAccount) if (walletAddress && !isL2) { return @@ -158,9 +154,9 @@ function TradePanelDesktop() { if ( !router.isReady || - (accountType === 'cross_margin' && + (accountType === FuturesMarginType.SMART_MARGIN && walletAddress && - !crossMarginAccount && + !smartMarginAccount && queryStatus.status === FetchStatus.Idle) ) { return ( @@ -170,7 +166,7 @@ function TradePanelDesktop() { ) } - return open ? setOpen(false)} /> : + return } Market.getLayout = (page) => {page} diff --git a/packages/app/src/queries/futures/types.ts b/packages/app/src/queries/futures/types.ts index 700e73fa7a..31a991e777 100644 --- a/packages/app/src/queries/futures/types.ts +++ b/packages/app/src/queries/futures/types.ts @@ -28,8 +28,3 @@ export type FuturesCumulativeStats = { totalLiquidations: string averageTradeSize: string } - -export enum FuturesAccountTypes { - ISOLATED_MARGIN = 'isolated_margin', - CROSS_MARGIN = 'cross_margin', -} diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx index 6aa4c0828d..a9f36ab0c7 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx @@ -1,4 +1,4 @@ -import { FuturesAccountType } from '@kwenta/sdk/utils' +import { FuturesMarginType } from '@kwenta/sdk/types' import Link from 'next/link' import { useRouter } from 'next/router' import { FC, useMemo } from 'react' @@ -18,19 +18,20 @@ import ROUTES from 'constants/routes' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' +import { selectCrossMarginPositions } from 'state/crossMargin/selectors' import { - selectCrossMarginPositions, - selectIsolatedMarginPositions, + selectSmartMarginPositions, selectMarkets, selectPositionHistory, } from 'state/futures/selectors' +import { AppFuturesMarginType } from 'state/futures/types' import { useAppSelector } from 'state/hooks' import { getSynthDescription } from 'utils/futures' import MobilePositionRow from './MobilePositionRow' type FuturesPositionTableProps = { - accountType: FuturesAccountType + accountType: AppFuturesMarginType showCurrentMarket?: boolean showEmptyTable?: boolean } @@ -46,13 +47,14 @@ const FuturesPositionsTable: FC = ({ const isL2 = useIsL2() - const isolatedPositions = useAppSelector(selectIsolatedMarginPositions) const crossMarginPositions = useAppSelector(selectCrossMarginPositions) + const smartMarginPositions = useAppSelector(selectSmartMarginPositions) const positionHistory = useAppSelector(selectPositionHistory) const futuresMarkets = useAppSelector(selectMarkets) let data = useMemo(() => { - const positions = accountType === 'cross_margin' ? crossMarginPositions : isolatedPositions + const positions = + accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions return positions .map((position) => { const market = futuresMarkets.find((market) => market.asset === position.asset) @@ -71,7 +73,7 @@ const FuturesPositionsTable: FC = ({ } }) .filter(({ position, market }) => !!position && !!market) - }, [accountType, isolatedPositions, crossMarginPositions, futuresMarkets, t, positionHistory]) + }, [accountType, crossMarginPositions, smartMarginPositions, futuresMarkets, t, positionHistory]) return ( <> @@ -79,7 +81,7 @@ const FuturesPositionsTable: FC = ({
router.push(ROUTES.Markets.MarketPair(row.original.market.asset, accountType)) } @@ -94,7 +96,7 @@ const FuturesPositionsTable: FC = ({ {!showCurrentMarket ? ( t('dashboard.overview.futures-positions-table.no-result') ) : ( - +
{t('common.perp-cta')}
)} @@ -293,7 +295,7 @@ const FuturesPositionsTable: FC = ({
{data.length === 0 ? ( - +
{t('common.perp-cta')}
diff --git a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx index 3942ad764e..7212b32446 100644 --- a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx +++ b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx @@ -1,3 +1,4 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import { formatDollars } from '@kwenta/sdk/utils' import Wei from '@synthetixio/wei' import { useMemo, useState } from 'react' @@ -6,7 +7,6 @@ import styled from 'styled-components' import TabButton from 'components/Button/TabButton' import { TabPanel } from 'components/Tab' -import { FuturesAccountTypes } from 'queries/futures/types' import { SectionHeader, SectionTitle } from 'sections/futures/mobile' import { selectBalances } from 'state/balances/selectors' import { selectFuturesPortfolio, selectActiveSmartPositionsCount } from 'state/futures/selectors' @@ -47,7 +47,7 @@ const OpenPositions: React.FC = ({ exchangeTokens, exchangeT label: t('dashboard.overview.positions-tabs.smart-margin'), badge: smartPositionsCount, active: activePositionsTab === PositionsTab.SMART_MARGIN, - detail: formatDollars(portfolio.crossMarginFutures), + detail: formatDollars(portfolio.smartMargin), disabled: false, onClick: () => setActivePositionsTab(PositionsTab.SMART_MARGIN), }, @@ -64,7 +64,7 @@ const OpenPositions: React.FC = ({ exchangeTokens, exchangeT t, activePositionsTab, smartPositionsCount, - portfolio.crossMarginFutures, + portfolio.smartMargin, balances.totalUSDBalance, exchangeTokenBalances, setActivePositionsTab, @@ -86,7 +86,7 @@ const OpenPositions: React.FC = ({ exchangeTokens, exchangeT
- + diff --git a/packages/app/src/sections/dashboard/Overview.tsx b/packages/app/src/sections/dashboard/Overview.tsx index 38a024710a..2b0fde4b03 100644 --- a/packages/app/src/sections/dashboard/Overview.tsx +++ b/packages/app/src/sections/dashboard/Overview.tsx @@ -1,5 +1,6 @@ import { ETH_ADDRESS, ETH_COINGECKO_ADDRESS, ZERO_WEI } from '@kwenta/sdk/constants' import { SynthSymbol } from '@kwenta/sdk/data' +import { FuturesMarginType } from '@kwenta/sdk/types' import { formatDollars, toWei } from '@kwenta/sdk/utils' import Wei from '@synthetixio/wei' import { FC, useEffect, useMemo, useState } from 'react' @@ -13,15 +14,10 @@ import { TabPanel } from 'components/Tab' import Search from 'components/Table/Search' import * as Text from 'components/Text' import Connector from 'containers/Connector' -import { FuturesAccountTypes } from 'queries/futures/types' import { selectBalances } from 'state/balances/selectors' import { fetchTokenList } from 'state/exchange/actions' import { setFuturesAccountType } from 'state/futures/reducer' -import { - selectActiveSmartPositionsCount, - selectFuturesPortfolio, - selectFuturesType, -} from 'state/futures/selectors' +import { selectActiveSmartPositionsCount, selectFuturesPortfolio } from 'state/futures/selectors' import { useAppDispatch, useAppSelector, useFetchAction } from 'state/hooks' import sdk from 'state/sdk' import { selectSynthsMap } from 'state/wallet/selectors' @@ -35,7 +31,6 @@ import SynthBalancesTable from './SynthBalancesTable' export enum PositionsTab { SMART_MARGIN = 'smart margin', - ISOLATED_MARGIN = 'isolated margin', SPOT = 'spot', } @@ -43,21 +38,14 @@ const Overview: FC = () => { const { t } = useTranslation() const dispatch = useAppDispatch() - const accountType = useAppSelector(selectFuturesType) const balances = useAppSelector(selectBalances) const portfolio = useAppSelector(selectFuturesPortfolio) const smartPositionsCount = useAppSelector(selectActiveSmartPositionsCount) const [activePositionsTab, setActivePositionsTab] = useState( - accountType === 'isolated_margin' ? PositionsTab.ISOLATED_MARGIN : PositionsTab.SMART_MARGIN + PositionsTab.SMART_MARGIN ) - useEffect(() => { - accountType === 'isolated_margin' - ? setActivePositionsTab(PositionsTab.ISOLATED_MARGIN) - : setActivePositionsTab(PositionsTab.SMART_MARGIN) - }, [accountType, setActivePositionsTab]) - const { network } = Connector.useContainer() const synthsMap = useAppSelector(selectSynthsMap) @@ -134,13 +122,13 @@ const Overview: FC = () => { name: PositionsTab.SMART_MARGIN, label: t('dashboard.overview.positions-tabs.smart-margin'), badge: smartPositionsCount, - titleIcon: , + titleIcon: , active: activePositionsTab === PositionsTab.SMART_MARGIN, - detail: formatDollars(portfolio.crossMarginFutures), + detail: formatDollars(portfolio.smartMargin), disabled: false, onClick: () => { setActivePositionsTab(PositionsTab.SMART_MARGIN) - dispatch(setFuturesAccountType(FuturesAccountTypes.CROSS_MARGIN)) + dispatch(setFuturesAccountType(FuturesMarginType.SMART_MARGIN)) }, }, { @@ -159,7 +147,7 @@ const Overview: FC = () => { exchangeTokens, balances.totalUSDBalance, activePositionsTab, - portfolio.crossMarginFutures, + portfolio.smartMargin, setActivePositionsTab, ]) @@ -174,7 +162,7 @@ const Overview: FC = () => { ))} - + diff --git a/packages/app/src/sections/dashboard/PortfolioChart.tsx b/packages/app/src/sections/dashboard/PortfolioChart.tsx index 3e54456904..4bf057c225 100644 --- a/packages/app/src/sections/dashboard/PortfolioChart.tsx +++ b/packages/app/src/sections/dashboard/PortfolioChart.tsx @@ -1,5 +1,6 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' import { Period } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' import { formatDollars, formatPercent } from '@kwenta/sdk/utils' import { formatChartDate, formatChartTime, formatShortDateWithTime } from '@kwenta/sdk/utils' import Link from 'next/link' @@ -53,12 +54,13 @@ const PriceChart: FC = ({ setHoverValue, setHoverTitle }) => { const theme = useTheme() const portfolioTimeframe = useAppSelector(selectSelectedPortfolioTimeframe) const accountType = useAppSelector(selectFuturesType) - const { isolated_margin: isolatedPortfolioData, cross_margin: smartPortfolioData } = + const { smart_margin: smartPortfolioData, cross_margin: crossPortfolioData } = useAppSelector(selectPortfolioChartData) const portfolioData = useMemo( - () => (accountType === 'isolated_margin' ? isolatedPortfolioData : smartPortfolioData), - [accountType, isolatedPortfolioData, smartPortfolioData] + () => + accountType === FuturesMarginType.CROSS_MARGIN ? crossPortfolioData : smartPortfolioData, + [accountType, crossPortfolioData, smartPortfolioData] ) const lineColor = useMemo(() => { @@ -112,8 +114,8 @@ const PriceChart: FC = ({ setHoverValue, setHoverTitle }) => { align="left" formatter={(value) => value === 'total' - ? accountType === 'isolated_margin' - ? 'Isolated Margin' + ? accountType === 'cross_margin' + ? 'Cross Margin' : 'Smart Margin' : value } @@ -132,10 +134,10 @@ const PriceChart: FC = ({ setHoverValue, setHoverTitle }) => { const PortfolioChart: FC = () => { const { t } = useTranslation() - const { isolatedMarginFutures: isolatedTotal, crossMarginFutures: smartTotal } = + const { crossMargin: crossTotal, smartMargin: smartTotal } = useAppSelector(selectFuturesPortfolio) const accountType = useAppSelector(selectFuturesType) - const { isolated_margin: isolatedPortfolioData, cross_margin: smartPortfolioData } = + const { cross_margin: crossPortfolioData, smart_margin: smartPortfolioData } = useAppSelector(selectPortfolioChartData) const buyingPower = useAppSelector(selectBuyingPower) @@ -145,13 +147,13 @@ const PortfolioChart: FC = () => { const [hoverTitle, setHoverTitle] = useState(null) const total = useMemo( - () => (accountType === 'isolated_margin' ? isolatedTotal : smartTotal), - [accountType, isolatedTotal, smartTotal] + () => (accountType === 'cross_margin' ? crossTotal : smartTotal), + [accountType, crossTotal, smartTotal] ) const portfolioData = useMemo(() => { - return accountType === 'isolated_margin' ? isolatedPortfolioData : smartPortfolioData - }, [accountType, isolatedPortfolioData, smartPortfolioData]) + return accountType === 'cross_margin' ? crossPortfolioData : smartPortfolioData + }, [accountType, crossPortfolioData, smartPortfolioData]) const changeValue = useMemo(() => { if (portfolioData.length < 2) { diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx index 06398e7556..6617b83c71 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx @@ -1,5 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' -import { PositionSide, PotentialTradeStatus } from '@kwenta/sdk/types' +import { FuturesMarginType, PositionSide, PotentialTradeStatus } from '@kwenta/sdk/types' import { floorNumber, formatDollars, @@ -24,10 +24,10 @@ import { Body } from 'components/Text' import { previewErrorI18n } from 'queries/futures/constants' import { setShowPositionModal } from 'state/app/reducer' import { selectTransaction } from 'state/app/selectors' +import { submitCrossMarginReducePositionOrder } from 'state/crossMargin/actions' import { editClosePositionPrice, editClosePositionSizeDelta, - submitIsolatedMarginReducePositionOrder, submitSmartMarginReducePositionOrder, } from 'state/futures/actions' import { setClosePositionOrderType } from 'state/futures/reducer' @@ -69,10 +69,10 @@ export default function ClosePositionModal() { const [overridePriceProtection, setOverridePriceProtection] = useState(false) const submitCloseOrder = useCallback(() => { - if (accountType === 'cross_margin') { + if (accountType === FuturesMarginType.SMART_MARGIN) { dispatch(submitSmartMarginReducePositionOrder(overridePriceProtection)) } else { - dispatch(submitIsolatedMarginReducePositionOrder()) + dispatch(submitCrossMarginReducePositionOrder()) } }, [dispatch, accountType, overridePriceProtection]) @@ -170,7 +170,7 @@ export default function ClosePositionModal() { return ( - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( <> diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 9d716ab11e..1d48254a62 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -9,18 +9,21 @@ import ErrorView from 'components/ErrorView' import Loader from 'components/Loader' import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' -import { approveCrossMargin, createCrossMarginAccount } from 'state/futures/actions' import { - selectCMAccountQueryStatus, + selectPerpsV3Account, + selectCrossMarginSupportedNetwork, +} from 'state/crossMargin/selectors' +import { approveCrossMargin, createSmartMarginAccount } from 'state/futures/actions' +import { + selectSmartMarginAccountQueryStatus, selectSmartMarginDepositApproved, - selectFuturesSupportedNetwork, selectSubmittingFuturesTx, selectTradePreview, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' + import CrossMarginFAQ from './CrossMarginOnboard/CrossMarginFAQ' -import { selectPerpsV3Account } from 'state/perpsV3/selectors' type Props = { isOpen: boolean @@ -29,9 +32,9 @@ type Props = { export default function CreatePerpsV3AccountModal({ isOpen }: Props) { const { t } = useTranslation() const dispatch = useAppDispatch() - const crossMarginAvailable = useAppSelector(selectFuturesSupportedNetwork) + const crossMarginAvailable = useAppSelector(selectCrossMarginSupportedNetwork) const perpsV3Account = useAppSelector(selectPerpsV3Account) - const queryStatus = useAppSelector(selectCMAccountQueryStatus) + const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) const depositApproved = useAppSelector(selectSmartMarginDepositApproved) const txProcessing = useAppSelector(selectSubmittingFuturesTx) const preview = useAppSelector(selectTradePreview) @@ -47,7 +50,7 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { } const createAccount = useCallback(async () => { - dispatch(createCrossMarginAccount()) + dispatch(createSmartMarginAccount()) }, [dispatch]) const onClickApprove = useCallback(async () => { diff --git a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx b/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx index fcb0063244..196d40238b 100644 --- a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx +++ b/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx @@ -9,12 +9,12 @@ import ErrorView from 'components/ErrorView' import Loader from 'components/Loader' import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' -import { approveCrossMargin, createCrossMarginAccount } from 'state/futures/actions' +import { approveCrossMargin, createSmartMarginAccount } from 'state/futures/actions' import { - selectCMAccountQueryStatus, + selectSmartMarginAccountQueryStatus, selectSmartMarginDepositApproved, - selectCrossMarginAccount, - selectFuturesSupportedNetwork, + selectSmartMarginAccount, + selectSmartMarginSupportedNetwork, selectSubmittingFuturesTx, selectTradePreview, } from 'state/futures/selectors' @@ -30,9 +30,9 @@ type Props = { export default function CrossMarginOnboard({ isOpen }: Props) { const { t } = useTranslation() const dispatch = useAppDispatch() - const crossMarginAvailable = useAppSelector(selectFuturesSupportedNetwork) - const crossMarginAccount = useAppSelector(selectCrossMarginAccount) - const queryStatus = useAppSelector(selectCMAccountQueryStatus) + const crossMarginAvailable = useAppSelector(selectSmartMarginSupportedNetwork) + const crossMarginAccount = useAppSelector(selectSmartMarginAccount) + const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) const depositApproved = useAppSelector(selectSmartMarginDepositApproved) const txProcessing = useAppSelector(selectSubmittingFuturesTx) const preview = useAppSelector(selectTradePreview) @@ -48,7 +48,7 @@ export default function CrossMarginOnboard({ isOpen }: Props) { } const createAccount = useCallback(async () => { - dispatch(createCrossMarginAccount()) + dispatch(createSmartMarginAccount()) }, [dispatch]) const onClickApprove = useCallback(async () => { diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx index 0d324abdfe..2bf087784a 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx @@ -11,7 +11,7 @@ import StyledSlider from 'components/Slider/StyledSlider' import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' import { editCrossMarginPositionMargin } from 'state/futures/actions' -import { selectEditPositionInputs } from 'state/futures/selectors' +import { selectSmartMarginEditPosInputs } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type OrderSizingProps = { @@ -24,7 +24,7 @@ const EditPositionMarginInput: React.FC = memo( ({ isMobile, type, maxUsdInput }) => { const dispatch = useAppDispatch() - const { marginDelta } = useAppSelector(selectEditPositionInputs) + const { marginDelta } = useAppSelector(selectSmartMarginEditPosInputs) const positionModal = useAppSelector(selectShowPositionModal) const onChangeMargin = useCallback( diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx index 43d5fa2621..5cb41e680c 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx @@ -21,11 +21,11 @@ import { approveCrossMargin, clearTradeInputs, editCrossMarginPositionMargin, - submitCrossMarginAdjustMargin, + submitSmartMarginAdjustMargin, } from 'state/futures/actions' import { selectEditMarginAllowanceValid, - selectEditPositionInputs, + selectSmartMarginEditPosInputs, selectEditPositionModalInfo, selectEditPositionPreview, selectIdleMargin, @@ -44,7 +44,7 @@ export default function EditPositionMarginModal() { const isSubmitting = useAppSelector(selectSubmittingFuturesTx) const isFetchingPreview = useAppSelector(selectIsFetchingTradePreview) const preview = useAppSelector(selectEditPositionPreview) - const { marginDelta } = useAppSelector(selectEditPositionInputs) + const { marginDelta } = useAppSelector(selectSmartMarginEditPosInputs) const idleMargin = useAppSelector(selectIdleMargin) const modal = useAppSelector(selectShowPositionModal) const { market, position } = useAppSelector(selectEditPositionModalInfo) @@ -113,7 +113,7 @@ export default function EditPositionMarginModal() { } const submitMarginChange = useCallback(() => { - dispatch(submitCrossMarginAdjustMargin()) + dispatch(submitSmartMarginAdjustMargin()) }, [dispatch]) const onClose = () => { diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx index 893295627a..97bd082c83 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx @@ -14,7 +14,10 @@ import StyledSlider from 'components/Slider/StyledSlider' import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' import { editCrossMarginPositionSize } from 'state/futures/actions' -import { selectEditPositionInputs, selectEditPositionModalInfo } from 'state/futures/selectors' +import { + selectSmartMarginEditPosInputs, + selectEditPositionModalInfo, +} from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type OrderSizingProps = { @@ -28,7 +31,7 @@ const EditPositionSizeInput: React.FC = memo( ({ isMobile, type, maxNativeValue, minNativeValue }) => { const dispatch = useAppDispatch() - const { nativeSizeDelta } = useAppSelector(selectEditPositionInputs) + const { nativeSizeDelta } = useAppSelector(selectSmartMarginEditPosInputs) const { position } = useAppSelector(selectEditPositionModalInfo) const modal = useAppSelector(selectShowPositionModal) diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx index 8f63da57ce..cb5c547ab2 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx @@ -19,10 +19,10 @@ import { selectTransaction } from 'state/app/selectors' import { clearTradeInputs, editCrossMarginPositionSize, - submitCrossMarginAdjustPositionSize, + submitSmartMarginAdjustPositionSize, } from 'state/futures/actions' import { - selectEditPositionInputs, + selectSmartMarginEditPosInputs, selectEditPositionModalInfo, selectEditPositionPreview, selectIsFetchingTradePreview, @@ -43,7 +43,7 @@ export default function EditPositionSizeModal() { const isSubmitting = useAppSelector(selectSubmittingFuturesTx) const isFetchingPreview = useAppSelector(selectIsFetchingTradePreview) const preview = useAppSelector(selectEditPositionPreview) - const { nativeSizeDelta } = useAppSelector(selectEditPositionInputs) + const { nativeSizeDelta } = useAppSelector(selectSmartMarginEditPosInputs) const { market, position, marketPrice } = useAppSelector(selectEditPositionModalInfo) const [overridePriceProtection, setOverridePriceProtection] = useState(false) @@ -62,7 +62,7 @@ export default function EditPositionSizeModal() { } const submitMarginChange = useCallback(() => { - dispatch(submitCrossMarginAdjustPositionSize(overridePriceProtection)) + dispatch(submitSmartMarginAdjustPositionSize(overridePriceProtection)) }, [dispatch, overridePriceProtection]) const isLoading = useMemo( diff --git a/packages/app/src/sections/futures/LeverageInput.tsx b/packages/app/src/sections/futures/LeverageInput.tsx index d9d8b675ed..f9c493ff31 100644 --- a/packages/app/src/sections/futures/LeverageInput.tsx +++ b/packages/app/src/sections/futures/LeverageInput.tsx @@ -1,4 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' import { floorNumber, truncateNumbers } from '@kwenta/sdk/utils' import { wei } from '@synthetixio/wei' import { Dispatch, FC, memo, SetStateAction, useCallback, useMemo, useState } from 'react' @@ -20,7 +21,7 @@ import { selectMaxLeverage, selectPosition, selectFuturesType, - selectCrossMarginMarginDelta, + selectSmartMarginMarginDelta, selectTradeSizeInputsDisabled, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' @@ -47,12 +48,14 @@ const LeverageInput: FC = memo(() => { const marketPrice = useAppSelector(selectMarketIndexPrice) const leverageInput = useAppSelector(selectLeverageInput) const futuresType = useAppSelector(selectFuturesType) - const crossMarginMarginDelta = useAppSelector(selectCrossMarginMarginDelta) + const smartMarginMarginDelta = useAppSelector(selectSmartMarginMarginDelta) const isDisabled = useAppSelector(selectTradeSizeInputsDisabled) const availableMargin = useMemo(() => { - return futuresType === 'isolated_margin' ? position?.remainingMargin : crossMarginMarginDelta - }, [position?.remainingMargin, crossMarginMarginDelta, futuresType]) + return futuresType === FuturesMarginType.CROSS_MARGIN + ? position?.remainingMargin + : smartMarginMarginDelta + }, [position?.remainingMargin, smartMarginMarginDelta, futuresType]) const leverageButtons = useMemo( () => (maxLeverage.eq(50) ? ['2', '5', '25', '50'] : ['2', '5', '10', '25']), diff --git a/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx b/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx index 284231a195..27f25b8c45 100644 --- a/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx @@ -1,9 +1,10 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import React from 'react' import MarketInfoBox from 'sections/futures/MarketInfoBox' import { Pane, SectionHeader, SectionTitle } from 'sections/futures/mobile' import MarketActions from 'sections/futures/Trade/MarketActions' -import MarginInfoBox from 'sections/futures/TradeCrossMargin/CrossMarginInfoBox' +import MarginInfoBox from 'sections/futures/TradeSmartMargin/SmartMarginInfoBox' import { selectFuturesType } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' @@ -15,7 +16,7 @@ const AccountTab: React.FC = () => { Account - {accountType === 'isolated_margin' ? ( + {accountType === FuturesMarginType.CROSS_MARGIN ? ( <> diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx index 95a2de5346..3403717106 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx @@ -1,5 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' -import { FuturesMarketKey, PositionSide } from '@kwenta/sdk/types' +import { FuturesMarginType, FuturesMarketKey, PositionSide } from '@kwenta/sdk/types' import Router from 'next/router' import { useCallback, useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' @@ -20,10 +20,10 @@ import PositionType from 'sections/futures/PositionType' import ShareModal from 'sections/futures/ShareModal' import EditPositionButton from 'sections/futures/UserInfo/EditPositionButton' import { setShowPositionModal } from 'state/app/reducer' +import { selectCrossMarginPositions } from 'state/crossMargin/selectors' import { - selectCrossMarginPositions, + selectSmartMarginPositions, selectFuturesType, - selectIsolatedMarginPositions, selectMarketAsset, selectMarkets, selectMarkPrices, @@ -40,8 +40,8 @@ const PositionsTab = () => { const isL2 = useIsL2() - const isolatedPositions = useAppSelector(selectIsolatedMarginPositions) const crossMarginPositions = useAppSelector(selectCrossMarginPositions) + const smartMarginPositions = useAppSelector(selectSmartMarginPositions) const positionHistory = useAppSelector(selectPositionHistory) const currentMarket = useAppSelector(selectMarketAsset) const futuresMarkets = useAppSelector(selectMarkets) @@ -51,7 +51,8 @@ const PositionsTab = () => { const [sharePosition, setSharePosition] = useState(null) let data = useMemo(() => { - const positions = accountType === 'cross_margin' ? crossMarginPositions : isolatedPositions + const positions = + accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions return positions .map((position) => { const market = futuresMarkets.find((market) => market.asset === position.asset) @@ -78,8 +79,8 @@ const PositionsTab = () => { .sort((a) => (a.market.asset === currentMarket ? -1 : 1)) }, [ accountType, + smartMarginPositions, crossMarginPositions, - isolatedPositions, futuresMarkets, positionHistory, markPrices, @@ -128,7 +129,9 @@ const PositionsTab = () => {
{row.market.marketName} - {accountType === 'isolated_margin' ? 'Isolated Margin' : 'Cross-Margin'} + {accountType === FuturesMarginType.CROSS_MARGIN + ? 'Cross Margin' + : 'Smart Margin'}
@@ -150,7 +153,7 @@ const PositionsTab = () => {
- {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( <> { Market Margin - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( <> { ) : ( )} - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( <> { [marketMarginTransfers, idleMarginTransfers, marginTransfersStatus] ) + // TODO: Move to selector const marginTransfers = useMemo(() => { - return accountType === 'isolated_margin' ? marketMarginTransfers : idleMarginTransfers + return accountType === FuturesMarginType.CROSS_MARGIN + ? marketMarginTransfers + : idleMarginTransfers }, [accountType, idleMarginTransfers, marketMarginTransfers]) return ( diff --git a/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx b/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx index 46566b18b0..4ee850da22 100644 --- a/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx +++ b/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx @@ -9,25 +9,25 @@ import StyledSlider from 'components/Slider/StyledSlider' import { editCrossMarginTradeSize } from 'state/futures/actions' import { selectAboveMaxLeverage, - selectCrossMarginMarginDelta, + selectSmartMarginMarginDelta, selectLeverageSide, selectMaxLeverage, selectMaxUsdSizeInput, selectPosition, - selectTradeSizeInputs, + selectSmartMarginTradeInputs, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' export default function OrderSizeSlider() { const { t } = useTranslation() const dispatch = useAppDispatch() - const { susdSizeString } = useAppSelector(selectTradeSizeInputs) + const { susdSizeString } = useAppSelector(selectSmartMarginTradeInputs) const aboveMaxLeverage = useAppSelector(selectAboveMaxLeverage) const maxLeverage = useAppSelector(selectMaxLeverage) const leverageSide = useAppSelector(selectLeverageSide) const position = useAppSelector(selectPosition) const maxUsdInputAmount = useAppSelector(selectMaxUsdSizeInput) - const marginDelta = useAppSelector(selectCrossMarginMarginDelta) + const marginDelta = useAppSelector(selectSmartMarginMarginDelta) const [percent, setPercent] = useState(0) const [usdValue, setUsdValue] = useState(susdSizeString) diff --git a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx index 8160e1a05d..fa09be5e73 100644 --- a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx +++ b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx @@ -12,8 +12,8 @@ import { editTradeSizeInput } from 'state/futures/actions' import { selectMarketIndexPrice, selectPosition, - selectTradeSizeInputs, - selectCrossMarginOrderPrice, + selectSmartMarginTradeInputs, + selectSmartMarginOrderPrice, selectSelectedInputDenomination, selectMaxUsdSizeInput, selectLeverageSide, @@ -31,11 +31,11 @@ type OrderSizingProps = { const OrderSizing: React.FC = memo(({ isMobile }) => { const dispatch = useAppDispatch() - const { susdSizeString, nativeSizeString } = useAppSelector(selectTradeSizeInputs) + const { susdSizeString, nativeSizeString } = useAppSelector(selectSmartMarginTradeInputs) const position = useAppSelector(selectPosition) const marketAssetRate = useAppSelector(selectMarketIndexPrice) - const orderPrice = useAppSelector(selectCrossMarginOrderPrice) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) const assetInputType = useAppSelector(selectSelectedInputDenomination) const maxUsdInputAmount = useAppSelector(selectMaxUsdSizeInput) const tradeSide = useAppSelector(selectLeverageSide) diff --git a/packages/app/src/sections/futures/Trade/ManagePosition.tsx b/packages/app/src/sections/futures/Trade/ManagePosition.tsx index 594d9286bb..b86ccfceea 100644 --- a/packages/app/src/sections/futures/Trade/ManagePosition.tsx +++ b/packages/app/src/sections/futures/Trade/ManagePosition.tsx @@ -1,4 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' import { isZero } from '@kwenta/sdk/utils' import { wei } from '@synthetixio/wei' import React, { useCallback, useMemo } from 'react' @@ -20,15 +21,15 @@ import { selectTradePreviewError, selectTradePreview, selectTradePreviewStatus, - selectTradeSizeInputs, - selectIsolatedMarginLeverage, - selectCrossMarginOrderPrice, + selectSmartMarginTradeInputs, + selectCrossMarginLeverage, + selectSmartMarginOrderPrice, selectOrderType, selectFuturesType, selectLeverageSide, selectPendingDelayedOrder, selectMaxUsdSizeInput, - selectCrossMarginAccount, + selectSmartMarginAccount, selectPosition, selectMarketPriceInfo, } from 'state/futures/selectors' @@ -40,24 +41,24 @@ const ManagePosition: React.FC = () => { const { t } = useTranslation() const dispatch = useAppDispatch() - const { susdSize } = useAppSelector(selectTradeSizeInputs) + const { susdSize } = useAppSelector(selectSmartMarginTradeInputs) const maxLeverageValue = useAppSelector(selectMaxLeverage) const selectedAccountType = useAppSelector(selectFuturesType) const previewTrade = useAppSelector(selectTradePreview) const previewError = useAppSelector(selectTradePreviewError) - const leverage = useAppSelector(selectIsolatedMarginLeverage) + const leverage = useAppSelector(selectCrossMarginLeverage) const orderType = useAppSelector(selectOrderType) const openOrder = useAppSelector(selectPendingDelayedOrder) const leverageSide = useAppSelector(selectLeverageSide) const maxUsdInputAmount = useAppSelector(selectMaxUsdSizeInput) const isMarketCapReached = useAppSelector(selectIsMarketCapReached) const placeOrderTranslationKey = useAppSelector(selectPlaceOrderTranslationKey) - const orderPrice = useAppSelector(selectCrossMarginOrderPrice) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) const marketAssetRate = useAppSelector(selectMarketIndexPrice) const marketInfo = useAppSelector(selectMarketInfo) const indexPrice = useAppSelector(selectMarketPriceInfo) const previewStatus = useAppSelector(selectTradePreviewStatus) - const smartMarginAccount = useAppSelector(selectCrossMarginAccount) + const smartMarginAccount = useAppSelector(selectSmartMarginAccount) const position = useAppSelector(selectPosition) const orderError = useMemo(() => { @@ -71,13 +72,13 @@ const ManagePosition: React.FC = () => { const onSubmit = useCallback(() => { dispatch(setTradePanelDrawerOpen(false)) - if (selectedAccountType === 'cross_margin' && !smartMarginAccount) { + if (selectedAccountType === FuturesMarginType.SMART_MARGIN && !smartMarginAccount) { dispatch(setOpenModal('futures_smart_margin_onboard')) return } dispatch( setOpenModal( - selectedAccountType === 'cross_margin' + selectedAccountType === FuturesMarginType.SMART_MARGIN ? 'futures_confirm_smart_margin_trade' : 'futures_confirm_isolated_margin_trade' ) @@ -153,7 +154,7 @@ const ManagePosition: React.FC = () => { message: ERROR_MESSAGES.ORDER_PENDING, } } - if (selectedAccountType === 'cross_margin') { + if (selectedAccountType === FuturesMarginType.SMART_MARGIN) { if (previewTrade?.status !== 0 || previewStatus.status === FetchStatus.Loading) return { message: 'awaiting_preview' } if (orderType !== 'market' && isZero(orderPrice)) return { message: 'trade price required' } diff --git a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx index 3fb700f59f..804f9043a4 100644 --- a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx +++ b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx @@ -12,7 +12,7 @@ import { StyledCaretDownIcon } from 'components/Select' import SelectorButtons from 'components/SelectorButtons' import Spacer from 'components/Spacer' import { selectAckedOrdersWarning } from 'state/app/selectors' -import { setCrossMarginTradeStopLoss, setCrossMarginTradeTakeProfit } from 'state/futures/reducer' +import { setSmartMarginTradeStopLoss, setSmartMarginTradeTakeProfit } from 'state/futures/reducer' import { selectLeverageInput, selectLeverageSide, @@ -61,7 +61,7 @@ export default function SLTPInputs() { ? currentPrice.add(currentPrice.mul(relativePercent)) : currentPrice.sub(currentPrice.mul(relativePercent)) const dp = suggestedDecimals(stopLoss) - dispatch(setCrossMarginTradeStopLoss(stopLoss.toString(dp))) + dispatch(setSmartMarginTradeStopLoss(stopLoss.toString(dp))) }, [currentPrice, dispatch, leverageSide, leverageWei] ) @@ -76,21 +76,21 @@ export default function SLTPInputs() { ? currentPrice.sub(currentPrice.mul(relativePercent)) : currentPrice.add(currentPrice.mul(relativePercent)) const dp = suggestedDecimals(takeProfit) - dispatch(setCrossMarginTradeTakeProfit(takeProfit.toString(dp))) + dispatch(setSmartMarginTradeTakeProfit(takeProfit.toString(dp))) }, [currentPrice, dispatch, leverageSide, leverageWei] ) const onChangeStopLoss = useCallback( (_: ChangeEvent, v: string) => { - dispatch(setCrossMarginTradeStopLoss(v)) + dispatch(setSmartMarginTradeStopLoss(v)) }, [dispatch] ) const onChangeTakeProfit = useCallback( (_: ChangeEvent, v: string) => { - dispatch(setCrossMarginTradeTakeProfit(v)) + dispatch(setSmartMarginTradeTakeProfit(v)) }, [dispatch] ) diff --git a/packages/app/src/sections/futures/Trade/SwitchToSmartMargin.tsx b/packages/app/src/sections/futures/Trade/SwitchToSmartMargin.tsx deleted file mode 100644 index bcd7346ae3..0000000000 --- a/packages/app/src/sections/futures/Trade/SwitchToSmartMargin.tsx +++ /dev/null @@ -1,81 +0,0 @@ -import { useRouter } from 'next/router' -import { useCallback } from 'react' -import { useTranslation } from 'react-i18next' -import styled from 'styled-components' - -import AlertIcon from 'assets/svg/app/alert.svg' -import Button from 'components/Button' -import { FlexDivColCentered } from 'components/layout/flex' -import { BANNER_LINK_URL } from 'constants/announcement' -import ROUTES from 'constants/routes' -import { selectMarketAsset } from 'state/futures/selectors' -import { useAppSelector } from 'state/hooks' - -type Props = { - onDismiss: () => void -} - -const SwitchToSmartMargin: React.FC = ({ onDismiss }) => { - const { t } = useTranslation() - const router = useRouter() - const currentMarket = useAppSelector(selectMarketAsset) - - const switchToSM = useCallback(() => { - router.push(ROUTES.Markets.MarketPair(currentMarket, 'cross_margin')) - }, [currentMarket, router]) - - return ( - - - <AlertIcon /> - - - {t('futures.cta-buttons.copy')} - - {t('futures.cta-buttons.learn-more')} - - - - - {t('futures.cta-buttons.dismiss')} - - - ) -} - -const StyledLink = styled.a` - text-decoration: underline; - color: ${(props) => props.theme.colors.selectedTheme.newTheme.text.secondary}; - font-size: 15px; - cursor: pointer; -` - -const UnsupportedMessage = styled.div` - margin-top: 26.25px; - font-size: 15px; - color: ${(props) => props.theme.colors.selectedTheme.newTheme.text.primary}; - margin-bottom: 45px; - line-height: 18px; -` - -const ButtonContainer = styled(FlexDivColCentered)` - width: 100%; - justify-content: center; - row-gap: 17.5px; -` - -const Title = styled.div` - font-family: ${(props) => props.theme.fonts.monoBold}; - font-size: 23px; - color: ${(props) => props.theme.colors.selectedTheme.button.text.primary}; -` - -const MessageContainer = styled.div` - margin-top: 51.25px; - padding: 0 40px; - text-align: center; -` - -export default SwitchToSmartMargin diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalance.tsx index 0f59d46668..77d70d2d93 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalance.tsx @@ -1,4 +1,5 @@ import { MIN_MARGIN_AMOUNT } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' import { formatDollars } from '@kwenta/sdk/utils' import { memo, useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' @@ -20,12 +21,12 @@ import { selectFuturesType, selectIdleMargin, selectLockedMarginInMarkets, - selectWithdrawableMargin, + selectWithdrawableSmartMargin, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PencilButton from '../../../components/Button/PencilButton' -import CrossMarginInfoBox from '../TradeCrossMargin/CrossMarginInfoBox' +import SmartMarginInfoBox from '../TradeSmartMargin/SmartMarginInfoBox' import SmartMarginOnboardModal from './SmartMarginOnboardModal' @@ -43,7 +44,7 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => const walletBal = useAppSelector(selectSusdBalance) const accountType = useAppSelector(selectFuturesType) const availableIsolatedMargin = useAppSelector(selectAvailableMargin) - const withdrawable = useAppSelector(selectWithdrawableMargin) + const withdrawable = useAppSelector(selectWithdrawableSmartMargin) const openModal = useAppSelector(selectShowModal) const [expanded, setExpanded] = useState(false) @@ -53,14 +54,17 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => }, [walletBal, withdrawable]) const onClickContainer = () => { - if (accountType === 'isolated_margin') return + if (accountType === FuturesMarginType.CROSS_MARGIN) return setExpanded(!expanded) } return ( - - {accountType === 'cross_margin' && isDepositRequired ? ( + + {accountType === FuturesMarginType.SMART_MARGIN && isDepositRequired ? ( @@ -91,12 +95,12 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => {t('futures.market.trade.trade-balance.available-margin')}: - {accountType === 'isolated_margin' + {accountType === FuturesMarginType.CROSS_MARGIN ? formatDollars(availableIsolatedMargin) : formatDollars(idleMargin)} - {accountType === 'cross_margin' && lockedMargin.gt(0) && ( + {FuturesMarginType.SMART_MARGIN && lockedMargin.gt(0) && ( {t('futures.market.trade.trade-balance.locked-margin')}: @@ -123,12 +127,12 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => {t('futures.market.trade.trade-balance.available-margin')} - {accountType === 'isolated_margin' + {accountType === FuturesMarginType.CROSS_MARGIN ? formatDollars(availableIsolatedMargin) : formatDollars(idleMargin)} - {accountType === 'cross_margin' && lockedMargin.gt(0) && ( + {accountType === FuturesMarginType.SMART_MARGIN && lockedMargin.gt(0) && ( @@ -152,7 +156,9 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => )} - {(accountType === 'isolated_margin' || withdrawable.gt(0) || !isDepositRequired) && ( + {(accountType === FuturesMarginType.CROSS_MARGIN || + withdrawable.gt(0) || + !isDepositRequired) && ( = memo(({ isMobile = false }) => e.stopPropagation() dispatch( setOpenModal( - accountType === 'isolated_margin' + accountType === FuturesMarginType.CROSS_MARGIN ? 'futures_isolated_transfer' : 'futures_cross_withdraw' ) @@ -175,8 +181,8 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => )} - {expanded && accountType === 'cross_margin' && ( - {} + {expanded && accountType === FuturesMarginType.SMART_MARGIN && ( + {} )} {openModal === 'futures_smart_margin_socket' && ( = memo(({ mobile, closeDrawer }) => { )} - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( )} @@ -97,9 +97,9 @@ const TradePanel: FC = memo(({ mobile, closeDrawer }) => { ) : ( <> - {accountType === 'cross_margin' && } + {accountType === FuturesMarginType.SMART_MARGIN && } - {orderType !== 'market' && accountType === 'cross_margin' && ( + {orderType !== 'market' && accountType === FuturesMarginType.SMART_MARGIN && ( <> @@ -110,7 +110,7 @@ const TradePanel: FC = memo(({ mobile, closeDrawer }) => { - {accountType === 'cross_margin' && } + {accountType === FuturesMarginType.SMART_MARGIN && } diff --git a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx index 96a4f18645..12daafcfa4 100644 --- a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx @@ -2,7 +2,7 @@ import { ChangeEvent, useCallback } from 'react' import { editTradeOrderPrice } from 'state/futures/actions' import { - selectCrossMarginOrderPrice, + selectSmartMarginOrderPrice, selectLeverageSide, selectMarketIndexPrice, selectOrderType, @@ -16,7 +16,7 @@ export default function TradePanelPriceInput() { const marketPrice = useAppSelector(selectMarketIndexPrice) const leverageSide = useAppSelector(selectLeverageSide) - const orderPrice = useAppSelector(selectCrossMarginOrderPrice) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) const orderType = useAppSelector(selectOrderType) const handleOnChange = useCallback( diff --git a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx b/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx index 960c577dfd..1396def70b 100644 --- a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx +++ b/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx @@ -17,7 +17,7 @@ import { FlexDivRowCentered } from 'components/layout/flex' import SegmentedControl from 'components/SegmentedControl' import Spacer from 'components/Spacer' import { selectSusdBalance } from 'state/balances/selectors' -import { depositIsolatedMargin, withdrawIsolatedMargin } from 'state/futures/actions' +import { depositCrossMarginMargin, withdrawCrossMargin } from 'state/crossMargin/actions' import { selectAvailableMargin, selectIsolatedTransferError, @@ -114,11 +114,11 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) } const onDeposit = () => { - dispatch(depositIsolatedMargin(wei(amount))) + dispatch(depositCrossMarginMargin(wei(amount))) } const onWithdraw = () => { - dispatch(withdrawIsolatedMargin(computedWithdrawAmount)) + dispatch(withdrawCrossMargin(computedWithdrawAmount)) } return ( diff --git a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx index 7258d395d5..375902ae22 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx @@ -21,7 +21,8 @@ import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { setOpenModal } from 'state/app/reducer' -import { modifyIsolatedPosition } from 'state/futures/actions' +import { submitCrossMarginOrder } from 'state/crossMargin/actions' +import { selectCrossMarginTradeInputs } from 'state/crossMargin/selectors' import { selectIsModifyingIsolatedPosition, selectLeverageSide, @@ -32,7 +33,6 @@ import { selectOrderType, selectPosition, selectTradePreview, - selectTradeSizeInputs, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { getKnownError } from 'utils/formatters/error' @@ -47,7 +47,7 @@ const DelayedOrderConfirmationModal: FC = () => { const isDisclaimerDisplayed = useAppSelector(selectNextPriceDisclaimer) const dispatch = useAppDispatch() - const { nativeSizeDelta } = useAppSelector(selectTradeSizeInputs) + const { nativeSizeDelta } = useAppSelector(selectCrossMarginTradeInputs) const txError = useAppSelector(selectModifyPositionError) const leverageSide = useAppSelector(selectLeverageSide) const position = useAppSelector(selectPosition) @@ -162,7 +162,7 @@ const DelayedOrderConfirmationModal: FC = () => { }, [dispatch]) const handleConfirmOrder = () => { - dispatch(modifyIsolatedPosition()) + dispatch(submitCrossMarginOrder()) } return ( diff --git a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx index bbbe9d217a..f45cd8cc4c 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx @@ -21,11 +21,11 @@ import { ButtonLoader } from 'components/Loader' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { NO_VALUE } from 'constants/placeholder' -import { refetchTradePreview, submitCrossMarginOrder } from 'state/futures/actions' +import { refetchTradePreview, submitSmartMarginOrder } from 'state/futures/actions' import { selectLeverageSide, selectMarketAsset, - selectCrossMarginOrderPrice, + selectSmartMarginOrderPrice, selectOrderType, selectPosition, selectTradePreview, @@ -67,7 +67,7 @@ export default function TradeConfirmationModal({ const marketAsset = useAppSelector(selectMarketAsset) const potentialTradeDetails = useAppSelector(selectTradePreview) const orderType = useAppSelector(selectOrderType) - const orderPrice = useAppSelector(selectCrossMarginOrderPrice) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) const position = useAppSelector(selectPosition) const leverageSide = useAppSelector(selectLeverageSide) const leverageInput = useAppSelector(selectLeverageInput) @@ -78,7 +78,7 @@ export default function TradeConfirmationModal({ usePollAction('refresh_preview', refetchTradePreview, { intervalTime: 6000 }) - const onConfirmOrder = useCallback(() => dispatch(submitCrossMarginOrder(true)), [dispatch]) + const onConfirmOrder = useCallback(() => dispatch(submitSmartMarginOrder(true)), [dispatch]) const totalFee = useMemo( () => potentialTradeDetails?.fee.add(executionFee) ?? executionFee, diff --git a/packages/app/src/sections/futures/TradeCrossMargin/ManageKeeperBalanceModal.tsx b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx similarity index 98% rename from packages/app/src/sections/futures/TradeCrossMargin/ManageKeeperBalanceModal.tsx rename to packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx index 10d89827db..c3ea7c2095 100644 --- a/packages/app/src/sections/futures/TradeCrossMargin/ManageKeeperBalanceModal.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx @@ -16,7 +16,7 @@ import Connector from 'containers/Connector' import { setOpenModal } from 'state/app/reducer' import { withdrawAccountKeeperBalance } from 'state/futures/actions' import { - selectCrossMarginBalanceInfo, + selectSmartMarginBalanceInfo, selectConditionalOrdersForMarket, selectSubmittingFuturesTx, } from 'state/futures/selectors' @@ -43,7 +43,7 @@ export default function ManageKeeperBalanceModal({ defaultType }: Props) { const dispatch = useAppDispatch() const { provider, walletAddress } = Connector.useContainer() - const { keeperEthBal } = useAppSelector(selectCrossMarginBalanceInfo) + const { keeperEthBal } = useAppSelector(selectSmartMarginBalanceInfo) const openOrders = useAppSelector(selectConditionalOrdersForMarket) const isSubmitting = useAppSelector(selectSubmittingFuturesTx) diff --git a/packages/app/src/sections/futures/TradeCrossMargin/CrossMarginInfoBox.tsx b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx similarity index 87% rename from packages/app/src/sections/futures/TradeCrossMargin/CrossMarginInfoBox.tsx rename to packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx index fe4d3eafb1..acf41c2f76 100644 --- a/packages/app/src/sections/futures/TradeCrossMargin/CrossMarginInfoBox.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx @@ -6,7 +6,7 @@ import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' import { selectSusdBalance } from 'state/balances/selectors' import { - selectCrossMarginBalanceInfo, + selectSmartMarginBalanceInfo, selectAvailableMarginInMarkets, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' @@ -15,12 +15,12 @@ import PencilButton from '../../../components/Button/PencilButton' import ManageKeeperBalanceModal from './ManageKeeperBalanceModal' -function MarginInfoBox() { +function SmartMarginInfoBox() { const dispatch = useAppDispatch() - const { keeperEthBal } = useAppSelector(selectCrossMarginBalanceInfo) + const { keeperEthBal } = useAppSelector(selectSmartMarginBalanceInfo) const openModal = useAppSelector(selectShowModal) - const { freeMargin } = useAppSelector(selectCrossMarginBalanceInfo) + const { freeMargin } = useAppSelector(selectSmartMarginBalanceInfo) const idleMarginInMarkets = useAppSelector(selectAvailableMarginInMarkets) const walletBal = useAppSelector(selectSusdBalance) @@ -55,4 +55,4 @@ function MarginInfoBox() { ) } -export default memo(MarginInfoBox) +export default memo(SmartMarginInfoBox) diff --git a/packages/app/src/sections/futures/TradeCrossMargin/WithdrawSmartMargin.tsx b/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx similarity index 92% rename from packages/app/src/sections/futures/TradeCrossMargin/WithdrawSmartMargin.tsx rename to packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx index 99d2eb7a22..bafa2504b8 100644 --- a/packages/app/src/sections/futures/TradeCrossMargin/WithdrawSmartMargin.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx @@ -11,8 +11,11 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivRowCentered } from 'components/layout/flex' import Loader from 'components/Loader' import { selectTransaction } from 'state/app/selectors' -import { withdrawCrossMargin } from 'state/futures/actions' -import { selectIsSubmittingCrossTransfer, selectWithdrawableMargin } from 'state/futures/selectors' +import { withdrawSmartMargin } from 'state/futures/actions' +import { + selectIsSubmittingCrossTransfer, + selectWithdrawableSmartMargin, +} from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type Props = { @@ -27,7 +30,7 @@ export default function WithdrawSmartMargin({ onDismiss }: Props) { const transactionState = useAppSelector(selectTransaction) const isSubmitting = useAppSelector(selectIsSubmittingCrossTransfer) - const totalWithdrawable = useAppSelector(selectWithdrawableMargin) + const totalWithdrawable = useAppSelector(selectWithdrawableSmartMargin) const [amount, setAmount] = useState('') @@ -38,7 +41,7 @@ export default function WithdrawSmartMargin({ onDismiss }: Props) { }, [amount, totalWithdrawable, t]) const withdrawMargin = useCallback(async () => { - dispatch(withdrawCrossMargin(wei(amount))) + dispatch(withdrawSmartMargin(wei(amount))) }, [amount, dispatch]) const handleSetMax = React.useCallback(() => { diff --git a/packages/app/src/sections/futures/Transfers.tsx b/packages/app/src/sections/futures/Transfers.tsx index 723f96b619..407bb8a1da 100644 --- a/packages/app/src/sections/futures/Transfers.tsx +++ b/packages/app/src/sections/futures/Transfers.tsx @@ -1,3 +1,4 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import { formatDollars, truncateAddress } from '@kwenta/sdk/utils' import { FC, useMemo } from 'react' import { useTranslation } from 'react-i18next' @@ -39,7 +40,9 @@ const Transfers: FC = () => { ) const marginTransfers = useMemo(() => { - return accountType === 'isolated_margin' ? marketMarginTransfers : idleMarginTransfers + return accountType === FuturesMarginType.CROSS_MARGIN + ? marketMarginTransfers + : idleMarginTransfers }, [accountType, marketMarginTransfers, idleMarginTransfers]) return ( diff --git a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx index 27cb34e390..b3813d6d8a 100644 --- a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx @@ -1,4 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' import { getDisplayAsset, formatPercent } from '@kwenta/sdk/utils' import { useRouter } from 'next/router' import { FC, useCallback, useMemo, useState } from 'react' @@ -19,10 +20,10 @@ import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import useWindowSize from 'hooks/useWindowSize' import PositionType from 'sections/futures/PositionType' import { setShowPositionModal } from 'state/app/reducer' +import { selectCrossMarginPositions } from 'state/crossMargin/selectors' import { - selectCrossMarginPositions, + selectSmartMarginPositions, selectFuturesType, - selectIsolatedMarginPositions, selectMarketAsset, selectMarkets, selectMarkPrices, @@ -35,7 +36,6 @@ import media from 'styles/media' import PositionsTab from '../MobileTrade/UserTabs/PositionsTab' import ShareModal from '../ShareModal' - import EditPositionButton from './EditPositionButton' import TableMarketDetails from './TableMarketDetails' @@ -53,8 +53,8 @@ const PositionsTable: FC = () => { const isL2 = useIsL2() - const isolatedPositions = useAppSelector(selectIsolatedMarginPositions) const crossMarginPositions = useAppSelector(selectCrossMarginPositions) + const smartMarginPositions = useAppSelector(selectSmartMarginPositions) const positionHistory = useAppSelector(selectPositionHistory) const currentMarket = useAppSelector(selectMarketAsset) const futuresMarkets = useAppSelector(selectMarkets) @@ -64,7 +64,8 @@ const PositionsTable: FC = () => { const [sharePosition, setSharePosition] = useState(null) let data = useMemo(() => { - const positions = accountType === 'cross_margin' ? crossMarginPositions : isolatedPositions + const positions = + accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions return positions .map((position) => { const market = futuresMarkets.find((market) => market.asset === position.asset) @@ -91,8 +92,8 @@ const PositionsTable: FC = () => { .sort((a) => (a.market.asset === currentMarket ? -1 : 1)) }, [ accountType, + smartMarginPositions, crossMarginPositions, - isolatedPositions, futuresMarkets, positionHistory, markPrices, @@ -169,7 +170,7 @@ const PositionsTable: FC = () => {
- {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( = () => { - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( = () => { - {accountType === 'cross_margin' && ( + {accountType === FuturesMarginType.SMART_MARGIN && ( @@ -241,12 +242,10 @@ const PositionsTable: FC = () => {
)} - {accountType === 'cross_margin' && ( - - )} + {row.stopLoss === undefined ? ( {NO_VALUE} diff --git a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx index 309bead9af..2af69f8fee 100644 --- a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx +++ b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx @@ -1,3 +1,4 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import { useRouter } from 'next/router' import React, { useMemo, useState, useCallback, useEffect, memo } from 'react' import styled from 'styled-components' @@ -15,7 +16,7 @@ import useWindowSize from 'hooks/useWindowSize' import { fetchAllTradesForAccount } from 'state/futures/actions' import { selectActiveSmartPositionsCount, - selectActiveIsolatedPositionsCount, + selectActiveCrossMarginPositionsCount, selectFuturesType, selectMarketAsset, selectOpenDelayedOrders, @@ -53,7 +54,7 @@ const UserInfo: React.FC = memo(() => { const marketAsset = useAppSelector(selectMarketAsset) const position = useAppSelector(selectPosition) const smartPositionsCount = useAppSelector(selectActiveSmartPositionsCount) - const isolatedPositionsCount = useAppSelector(selectActiveIsolatedPositionsCount) + const crossPositionsCount = useAppSelector(selectActiveCrossMarginPositionsCount) const walletAddress = useAppSelector(selectWallet) const openOrders = useAppSelector(selectOpenDelayedOrders) @@ -97,7 +98,10 @@ const UserInfo: React.FC = memo(() => { { name: FuturesTab.POSITION, label: 'Positions', - badge: accountType === 'isolated_margin' ? isolatedPositionsCount : smartPositionsCount, + badge: + accountType === FuturesMarginType.CROSS_MARGIN + ? crossPositionsCount + : smartPositionsCount, active: activeTab === FuturesTab.POSITION, icon: , onClick: () => @@ -120,7 +124,7 @@ const UserInfo: React.FC = memo(() => { name: FuturesTab.CONDITIONAL_ORDERS, label: 'Orders', badge: conditionalOrders.length, - disabled: accountType === 'isolated_margin', + disabled: accountType === FuturesMarginType.CROSS_MARGIN, active: activeTab === FuturesTab.CONDITIONAL_ORDERS, icon: , onClick: () => @@ -143,7 +147,7 @@ const UserInfo: React.FC = memo(() => { name: FuturesTab.TRANSFERS, label: 'Transfers', badge: undefined, - disabled: accountType === 'cross_margin', // leave this until we determine a disbaled state + disabled: accountType === FuturesMarginType.CROSS_MARGIN, // leave this until we determine a disbaled state active: activeTab === FuturesTab.TRANSFERS, icon: , onClick: () => @@ -158,7 +162,7 @@ const UserInfo: React.FC = memo(() => { marketAsset, openOrders?.length, accountType, - isolatedPositionsCount, + crossPositionsCount, smartPositionsCount, conditionalOrders.length, ] diff --git a/packages/app/src/sections/shared/Layout/AppLayout/Header/constants.tsx b/packages/app/src/sections/shared/Layout/AppLayout/Header/constants.tsx index 0942ed3f83..476f25f246 100644 --- a/packages/app/src/sections/shared/Layout/AppLayout/Header/constants.tsx +++ b/packages/app/src/sections/shared/Layout/AppLayout/Header/constants.tsx @@ -1,3 +1,4 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' import { FunctionComponent } from 'react' import { COMPETITION_ENABLED } from 'constants/competition' @@ -29,7 +30,7 @@ export type MenuLinks = MenuLink[] export const HOMEPAGE_MENU_LINKS: MenuLinks = [ { i18nLabel: 'homepage.nav.markets', - link: ROUTES.Markets.Home('cross_margin'), + link: ROUTES.Markets.Home(FuturesMarginType.SMART_MARGIN), }, { i18nLabel: 'homepage.nav.stats', @@ -76,7 +77,7 @@ export const getMenuLinks = (isMobile: boolean): MenuLinks => [ }, { i18nLabel: 'header.nav.markets', - link: ROUTES.Markets.Home('cross_margin'), + link: ROUTES.Markets.Home(FuturesMarginType.SMART_MARGIN), }, { i18nLabel: 'header.nav.exchange', diff --git a/packages/app/src/state/crossMargin/actions.ts b/packages/app/src/state/crossMargin/actions.ts new file mode 100644 index 0000000000..fd617f84ee --- /dev/null +++ b/packages/app/src/state/crossMargin/actions.ts @@ -0,0 +1,364 @@ +import { + DelayedOrder, + FuturesMarket, + FuturesPosition, + FuturesPositionHistory, + NetworkId, + TransactionStatus, +} from '@kwenta/sdk/types' +import { createAsyncThunk } from '@reduxjs/toolkit' + +import { notifyError } from 'components/ErrorNotifier' +import { + selectSmartMarginAccount, + selectFuturesAccount, + selectFuturesType, + selectMarketInfo, + selectOpenDelayedOrders, + selectEditPositionModalInfo, + selectClosePositionPreview, + selectClosePositionOrderInputs, +} from 'state/futures/selectors' +import { ThunkConfig } from 'state/types' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { + formatDelayedOrders, + perpsAccountIdFromAddress, + serializeDelayedOrders, + serializeMarkets, + serializePositionHistory, +} from 'utils/futures' +import logError from 'utils/logError' + +import { selectCrossMarginSupportedNetwork, selectV3Markets } from './selectors' +import { setPerpsV3Account } from './reducer' +import { + handleTransactionError, + setOpenModal, + setShowPositionModal, + setTransaction, + updateTransactionHash, + updateTransactionStatus, +} from 'state/app/reducer' +import { AppDispatch } from 'state/store' +import { ethers } from 'ethers' +import { AppFuturesMarginType, DelayedOrderWithDetails } from 'state/futures/types' +import Wei, { wei } from '@synthetixio/wei' +import { fetchBalances } from 'state/balances/actions' + +export const fetchV3Markets = createAsyncThunk< + { markets: FuturesMarket[]; networkId: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchV3Markets', async (_, { getState, extra: { sdk } }) => { + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const networkId = selectNetwork(getState()) + if (!supportedNetwork) return + try { + const v3Markets = await sdk.perpsV3.getMarkets() + + return { markets: serializeMarkets(v3Markets), networkId } + } catch (err) { + logError(err) + notifyError('Failed to fetch markets', err) + throw err + } +}) + +export const fetchPerpsV3Account = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchPerpsV3Account', async (_, { getState, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + + const accounts = getState().futures.smartMargin.accounts + + // Already have an account fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) return + + const id = perpsAccountIdFromAddress(wallet) + + try { + const owner = await sdk.perpsV3.getAccountOwner(id) + if (owner) { + // Account already created + if (owner.toLowerCase() !== wallet.toLowerCase()) { + const errMessage = 'Account id registered with a different wallet' + notifyError(errMessage) + rejectWithValue(errMessage) + } + return { account: id, wallet, network } + } + return undefined + } catch (err) { + notifyError('Failed to fetch smart margin account', err) + rejectWithValue(err.message) + } +}) + +export const fetchCrossMarginPositions = createAsyncThunk< + { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchCrossMarginPositions', async (_, { getState, extra: { sdk } }) => { + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + const account = selectSmartMarginAccount(getState()) + const markets = selectV3Markets(getState()) + + if (!supportedNetwork || !account) return + try { + // TODO: Fetch positions + return { positions: [], account, network } + } catch (err) { + logError(err) + notifyError('Failed to fetch isolated margin positions', err) + throw err + } +}) + +export const fetchPerpsV3PositionHistory = createAsyncThunk< + | { + accountType: AppFuturesMarginType + history: FuturesPositionHistory[] + account: string + wallet: string + networkId: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchPerpsV3PositionHistory', async (_, { getState, extra: { sdk } }) => { + try { + const account = selectFuturesAccount(getState()) + const accountType = selectFuturesType(getState()) + const networkId = selectNetwork(getState()) + const wallet = selectWallet(getState()) + const futuresSupported = selectCrossMarginSupportedNetwork(getState()) + if (!wallet || !account || !futuresSupported) return + const history = await sdk.futures.getPositionHistory(account) + return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } + } catch (err) { + notifyError('Failed to fetch perps v3 position history', err) + throw err + } +}) + +export const refetchPosition = createAsyncThunk< + { + position: FuturesPosition + wallet: string + futuresType: AppFuturesMarginType + networkId: NetworkId + } | null, + void, + ThunkConfig +>('futures/refetchPosition', async (type, { getState, extra: { sdk } }) => { + // TODO: Refetch positions + return null +}) + +export const fetchCrossMarginOpenOrders = createAsyncThunk< + { orders: DelayedOrderWithDetails[]; wallet: string; networkId: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchCrossMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + const markets = selectV3Markets(getState()) + const existingOrders = selectOpenDelayedOrders(getState()) + if (!wallet || !supportedNetwork || !markets.length) return + + const marketAddresses = markets.map((market) => market.market) + + const orders: DelayedOrder[] = await sdk.futures.getDelayedOrders(wallet, marketAddresses) + const nonzeroOrders = formatDelayedOrders(orders, markets) + const orderDropped = existingOrders.length > nonzeroOrders.length + if (orderDropped) { + dispatch(fetchCrossMarginPositions()) + } + + return { + networkId: network, + orders: serializeDelayedOrders(nonzeroOrders), + wallet: wallet, + } +}) + +export const fetchMarginTransfers = createAsyncThunk( + 'futures/fetchMarginTransfers', + async (_, { getState, extra: { sdk } }) => { + // TODO: Fetch perps v3 balance transfers + } +) + +export const clearTradeInputs = createAsyncThunk( + 'futures/clearTradeInputs', + async (_, { dispatch }) => { + // TODO: Clear trade inputs for cross margin + } +) + +export const createPerpsV3Account = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>( + 'futures/createPerpsV3Account', + async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + const accounts = getState().crossMargin.accounts + + // Already have an accoutn fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) { + notifyError('There is already an account associated with this wallet') + rejectWithValue('Account already created') + } + + const id = perpsAccountIdFromAddress(wallet) + + try { + // Check if this wallet has already registered an account from Kwenta + // as we want to maintain one to one eoa account mapping for now + + const owner = await sdk.perpsV3.getAccountOwner(id) + if (owner && owner.toLowerCase() !== wallet.toLowerCase()) { + notifyError('Another wallet is already registered with account id ' + id) + rejectWithValue('Account id already registered') + return + } else if (owner) { + dispatch(setPerpsV3Account({ account: id.toString(), wallet: wallet, network })) + return + } + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'create_cross_margin_account', + hash: null, + }) + ) + const tx = await sdk.perpsV3.createPerpsV3Account(id) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchPerpsV3Account()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + } + } +) + +export const depositCrossMarginMargin = createAsyncThunk( + 'futures/depositCrossMarginMargin', + async (amount, { getState, dispatch, extra: { sdk } }) => { + const marketInfo = selectMarketInfo(getState()) + if (!marketInfo) throw new Error('Market info not found') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'deposit_isolated', + hash: null, + }) + ) + const tx = await sdk.futures.depositIsolatedMargin(marketInfo.market, amount) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setOpenModal(null)) + dispatch(refetchPosition()) + dispatch(fetchBalances()) + dispatch(fetchMarginTransfers()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const withdrawCrossMargin = createAsyncThunk( + 'futures/withdrawCrossMargin', + async (amount, { getState, dispatch, extra: { sdk } }) => { + const marketInfo = selectMarketInfo(getState()) + if (!marketInfo) throw new Error('Market info not found') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'withdraw_isolated', + hash: null, + }) + ) + const tx = await sdk.futures.withdrawIsolatedMargin(marketInfo.market, amount) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(refetchPosition()) + dispatch(setOpenModal(null)) + dispatch(fetchBalances()) + dispatch(fetchMarginTransfers()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const submitCrossMarginOrder = createAsyncThunk( + 'futures/submitCrossMarginOrder', + async (_, { getState, dispatch, extra: { sdk } }) => { + // TODO: Handle perps v3 order submission + } +) + +export const submitCrossMarginReducePositionOrder = createAsyncThunk( + 'futures/submitCrossMarginReducePositionOrder', + async (_, { getState, dispatch, extra: { sdk } }) => { + const { market } = selectEditPositionModalInfo(getState()) + const closePreview = selectClosePositionPreview(getState()) + const { nativeSizeDelta } = selectClosePositionOrderInputs(getState()) + const wallet = selectWallet(getState()) + + try { + if (!market) throw new Error('Market info not found') + if (!wallet) throw new Error('No wallet connected') + if (!closePreview) throw new Error('Failed to generate trade preview') + if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No size amount set') + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'modify_isolated', + hash: null, + }) + ) + + const tx = await sdk.futures.submitIsolatedMarginOrder( + market.market, + wei(nativeSizeDelta), + closePreview.desiredFillPrice + ) + + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setShowPositionModal(null)) + dispatch(fetchBalances()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +// TODO: Move this to shared action under app + +const monitorAndAwaitTransaction = async ( + dispatch: AppDispatch, + tx: ethers.providers.TransactionResponse +) => { + dispatch(updateTransactionHash(tx.hash)) + await tx.wait() + dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) +} diff --git a/packages/app/src/state/perpsV3/reducer.ts b/packages/app/src/state/crossMargin/reducer.ts similarity index 64% rename from packages/app/src/state/perpsV3/reducer.ts rename to packages/app/src/state/crossMargin/reducer.ts index df5a987cdb..8403b05b6a 100644 --- a/packages/app/src/state/perpsV3/reducer.ts +++ b/packages/app/src/state/crossMargin/reducer.ts @@ -1,7 +1,6 @@ import { Period } from '@kwenta/sdk/constants' import { NetworkId, - FuturesAccountType, FuturesMarketAsset, FuturesMarketKey, FuturesPotentialTradeDetails, @@ -24,20 +23,11 @@ import { import { FetchStatus } from 'state/types' import { - fetchCrossMarginPositions, - fetchIsolatedMarginPositions, fetchDailyVolumes, refetchPosition, - fetchIsolatedMarginTradePreview, fetchCrossMarginTradePreview, - fetchCrossMarginAccount, - fetchFuturesPositionHistory, - fetchPositionHistoryForTrader, - fetchTradesForSelectedMarket, - fetchAllTradesForAccount, - fetchIsolatedOpenOrders, + fetchSmartMarginAccount, fetchMarginTransfers, - fetchCombinedMarginTransfers, fetchFundingRatesHistory, } from '../futures/actions' import { @@ -45,12 +35,17 @@ import { InputCurrencyDenomination, PerpsV3AccountData, TradeSizeInputs, - PerspV3State, + PerpsV3State, PreviewAction, } from './types' -import { fetchPerpsV3PositionHistory, fetchV3Markets } from './actions' +import { + fetchCrossMarginOpenOrders, + fetchCrossMarginPositions, + fetchPerpsV3PositionHistory, + fetchV3Markets, +} from './actions' -export const FUTURES_INITIAL_STATE: PerspV3State = { +export const PERPS_V3_INITIAL_STATE: PerpsV3State = { selectedType: DEFAULT_FUTURES_MARGIN_TYPE, confirmationModalOpen: false, markets: { @@ -113,7 +108,7 @@ export const FUTURES_INITIAL_STATE: PerspV3State = { const futuresSlice = createSlice({ name: 'futures', - initialState: FUTURES_INITIAL_STATE, + initialState: PERPS_V3_INITIAL_STATE, reducers: { setMarketAsset: (state, action) => { state.selectedMarketAsset = action.payload @@ -257,21 +252,9 @@ const futuresSlice = createSlice({ builder.addCase(fetchMarginTransfers.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS if (payload) { - const { context, marginTransfers, idleTransfers } = payload - const newAccountData = - context.type === 'isolated_margin' - ? { marginTransfers } - : { - marginTransfers, - idleTransfers, - } - updateFuturesAccount( - futuresState, - context.type, - context.network, - context.wallet, - newAccountData - ) + const { context, marginTransfers } = payload + const newAccountData = { marginTransfers } + updateCrossMarginAccount(futuresState, context.network, context.wallet, newAccountData) } }) builder.addCase(fetchMarginTransfers.rejected, (futuresState) => { @@ -281,44 +264,6 @@ const futuresSlice = createSlice({ } }) - // combined margin transfers - builder.addCase(fetchCombinedMarginTransfers.pending, (futuresState) => { - futuresState.queryStatuses.marginTransfers = LOADING_STATUS - }) - builder.addCase(fetchCombinedMarginTransfers.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS - if (payload) { - const { context, isolatedMarginTransfers, smartMarginTransfers, idleTransfers } = payload - const newIsolatedAccountData = { marginTransfers: isolatedMarginTransfers } - const newSmartAccountData = { - marginTransfers: smartMarginTransfers, - idleTransfers, - } - - updateFuturesAccount( - futuresState, - 'isolated_margin', - context.network, - context.wallet, - newIsolatedAccountData - ) - - updateFuturesAccount( - futuresState, - 'smart_margin', - context.network, - context.wallet, - newSmartAccountData - ) - } - }) - builder.addCase(fetchCombinedMarginTransfers.rejected, (futuresState) => { - futuresState.queryStatuses.marginTransfers = { - status: FetchStatus.Error, - error: 'Failed to fetch combined margin transfers', - } - }) - // Cross margin positions builder.addCase(fetchCrossMarginPositions.pending, (futuresState) => { futuresState.queryStatuses.perpsV3Positions = LOADING_STATUS @@ -329,7 +274,7 @@ const futuresSlice = createSlice({ const { account, positions, network } = action.payload const wallet = findWalletForAccount(futuresState, account, network) if (wallet) { - updateFuturesAccount(futuresState, 'cross_margin', network, wallet, { positions }) + updateCrossMarginAccount(futuresState, network, wallet, { positions }) } }) builder.addCase(fetchCrossMarginPositions.rejected, (futuresState) => { @@ -339,24 +284,6 @@ const futuresSlice = createSlice({ } }) - // Isolated margin positions - builder.addCase(fetchIsolatedMarginPositions.pending, (futuresState) => { - futuresState.queryStatuses.perpsV3Positions = LOADING_STATUS - }) - builder.addCase(fetchIsolatedMarginPositions.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.perpsV3Positions = SUCCESS_STATUS - if (payload) { - const { positions, wallet, network } = payload - updateFuturesAccount(futuresState, 'isolated_margin', network, wallet, { positions }) - } - }) - builder.addCase(fetchIsolatedMarginPositions.rejected, (futuresState) => { - futuresState.queryStatuses.perpsV3Positions = { - status: FetchStatus.Error, - error: 'Failed to fetch positions', - } - }) - // Refetch selected position builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { if (payload) { @@ -374,41 +301,25 @@ const futuresSlice = createSlice({ }) // Fetch Isolated Open Orders - builder.addCase(fetchIsolatedOpenOrders.pending, (futuresState) => { + builder.addCase(fetchCrossMarginOpenOrders.pending, (futuresState) => { futuresState.queryStatuses.openOrders = LOADING_STATUS }) - builder.addCase(fetchIsolatedOpenOrders.fulfilled, (futuresState, { payload }) => { + builder.addCase(fetchCrossMarginOpenOrders.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.openOrders = SUCCESS_STATUS if (payload) { const { orders: delayedOrders, wallet, networkId } = payload - updateFuturesAccount(futuresState, 'isolated_margin', networkId, wallet, { + updateCrossMarginAccount(futuresState, networkId, wallet, { delayedOrders, }) } }) - builder.addCase(fetchIsolatedOpenOrders.rejected, (futuresState) => { + builder.addCase(fetchCrossMarginOpenOrders.rejected, (futuresState) => { futuresState.queryStatuses.openOrders = { status: FetchStatus.Error, error: 'Failed to fetch open orders for isolated margin', } }) - // Fetch Isolated Margin Trade Preview - builder.addCase(fetchIsolatedMarginTradePreview.pending, (futuresState) => { - futuresState.queryStatuses.perpsV3TradePreview = LOADING_STATUS - }) - builder.addCase(fetchIsolatedMarginTradePreview.fulfilled, (futuresState, { payload }) => { - futuresState.previews[payload.type] = payload.preview - futuresState.queryStatuses.perpsV3TradePreview = SUCCESS_STATUS - }) - builder.addCase(fetchIsolatedMarginTradePreview.rejected, (futuresState) => { - futuresState.queryStatuses.perpsV3TradePreview = { - status: FetchStatus.Error, - error: 'Failed to fetch trade preview', - } - futuresState.previews.trade = null - }) - // Fetch Cross Margin Trade Preview builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { futuresState.queryStatuses.perpsV3TradePreview = LOADING_STATUS @@ -419,10 +330,10 @@ const futuresSlice = createSlice({ }) // Fetch cross margin account - builder.addCase(fetchCrossMarginAccount.pending, (futuresState) => { + builder.addCase(fetchSmartMarginAccount.pending, (futuresState) => { futuresState.queryStatuses.perpsV3Account = LOADING_STATUS }) - builder.addCase(fetchCrossMarginAccount.fulfilled, (futuresState, action) => { + builder.addCase(fetchSmartMarginAccount.fulfilled, (futuresState, action) => { if (action.payload) { const { network, account, wallet } = action.payload futuresState.accounts[network] = { @@ -435,7 +346,7 @@ const futuresSlice = createSlice({ } futuresState.queryStatuses.perpsV3Account = SUCCESS_STATUS }) - builder.addCase(fetchCrossMarginAccount.rejected, (futuresState) => { + builder.addCase(fetchSmartMarginAccount.rejected, (futuresState) => { futuresState.queryStatuses.perpsV3Account = { status: FetchStatus.Error, error: 'Failed to fetch account', @@ -449,76 +360,19 @@ const futuresSlice = createSlice({ builder.addCase(fetchPerpsV3PositionHistory.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.positionHistory = SUCCESS_STATUS if (payload) { - const { accountType: type, history: positionHistory, networkId, wallet } = payload - updateFuturesAccount(futuresState, type, networkId, wallet, { + const { history: positionHistory, networkId, wallet } = payload + updateCrossMarginAccount(futuresState, networkId, wallet, { positionHistory, }) } }) - builder.addCase(fetchFuturesPositionHistory.rejected, (futuresState) => { + builder.addCase(fetchPerpsV3PositionHistory.rejected, (futuresState) => { futuresState.queryStatuses.positionHistory = { error: 'Failed to fetch position history', status: FetchStatus.Error, } }) - // Fetch position history for trader - builder.addCase(fetchPositionHistoryForTrader.pending, (futuresState) => { - futuresState.queryStatuses.selectedTraderPositionHistory = LOADING_STATUS - }) - builder.addCase(fetchPositionHistoryForTrader.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.selectedTraderPositionHistory = SUCCESS_STATUS - if (!payload) return - futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId] = { - ...futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId], - [payload.address]: payload.history, - } - }) - builder.addCase(fetchPositionHistoryForTrader.rejected, (futuresState) => { - futuresState.queryStatuses.selectedTraderPositionHistory = { - error: 'Failed to fetch traders position history', - status: FetchStatus.Error, - } - }) - - // Fetch trades for market - builder.addCase(fetchTradesForSelectedMarket.pending, (futuresState) => { - futuresState.queryStatuses.trades = LOADING_STATUS - }) - builder.addCase(fetchTradesForSelectedMarket.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.trades = SUCCESS_STATUS - if (payload) { - const { accountType: type, trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, type, networkId, wallet, trades) - } - }) - builder.addCase(fetchTradesForSelectedMarket.rejected, (futuresState) => { - futuresState.queryStatuses.trades = { - error: 'Failed to fetch trades', - status: FetchStatus.Error, - } - }) - - // TODO: Combine all with market trades rather than overwrite as the filter is done on selector - - // Fetch all trades for account - builder.addCase(fetchAllTradesForAccount.pending, (futuresState) => { - futuresState.queryStatuses.trades = LOADING_STATUS - }) - builder.addCase(fetchAllTradesForAccount.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.trades = SUCCESS_STATUS - if (payload) { - const { accountType: type, trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, type, networkId, wallet, trades) - } - }) - builder.addCase(fetchAllTradesForAccount.rejected, (futuresState) => { - futuresState.queryStatuses.trades = { - error: 'Failed to fetch trades', - status: FetchStatus.Error, - } - }) - // Fetch funding rates builder.addCase(fetchFundingRatesHistory.rejected, (futuresState) => { futuresState.queryStatuses.historicalFundingRates = { @@ -551,7 +405,7 @@ export const { setPerpsV3Account, } = futuresSlice.actions -const findWalletForAccount = (perpsV3State: PerspV3State, account: string, network: NetworkId) => { +const findWalletForAccount = (perpsV3State: PerpsV3State, account: string, network: NetworkId) => { const entry = Object.entries(perpsV3State.accounts[network]).find(([_, value]) => { return value.account === account }) @@ -559,27 +413,25 @@ const findWalletForAccount = (perpsV3State: PerspV3State, account: string, netwo } const mergeTradesForAccount = ( - futuresState: PerspV3State, - type: FuturesAccountType, + perpsV3: PerpsV3State, network: NetworkId, wallet: string, trades: FuturesTrade[] ) => { - const existingTrades = futuresState.accounts[network]?.[wallet]?.trades ?? [] + const existingTrades = perpsV3.accounts[network]?.[wallet]?.trades ?? [] trades.forEach((t) => { if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { existingTrades.push(t) } }) existingTrades.sort((a, b) => b.timestamp - a.timestamp) - updateFuturesAccount(futuresState, type, network, wallet, { + updateCrossMarginAccount(perpsV3, network, wallet, { trades: trades, }) } -const updateFuturesAccount = ( - futuresState: PerspV3State, - type: FuturesAccountType, +const updateCrossMarginAccount = ( + futuresState: PerpsV3State, network: NetworkId, wallet: string, newAccountData: Partial diff --git a/packages/app/src/state/crossMargin/selectors.ts b/packages/app/src/state/crossMargin/selectors.ts new file mode 100644 index 0000000000..11c05f4384 --- /dev/null +++ b/packages/app/src/state/crossMargin/selectors.ts @@ -0,0 +1,119 @@ +import { PositionSide } from '@kwenta/sdk/types' +import { createSelector } from '@reduxjs/toolkit' +import { selectPrices } from 'state/prices/selectors' + +import { RootState } from 'state/store' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { + unserializeMarkets, + unserializePositionHistory, + unserializeTradeInputs, + unserializeTrades, + updatePositionUpnl, +} from 'utils/futures' +import { MarkPrices } from './types' +import { wei } from '@synthetixio/wei' + +export const selectV3Markets = createSelector( + selectNetwork, + (state: RootState) => state.crossMargin, + (network, crossMargin) => + crossMargin.markets[network] ? unserializeMarkets(crossMargin.markets[network]) : [] +) + +export const selectCrossMarginSupportedNetwork = (state: RootState) => + state.wallet.networkId === 10 || state.wallet.networkId === 420 + +export const selectPerpsV3Account = createSelector( + selectWallet, + selectNetwork, + (state: RootState) => state.crossMargin, + (wallet, network, crossMargin) => { + return wallet ? crossMargin.accounts[network]?.[wallet]?.account : undefined + } +) + +export const selectCrossMarginAccountData = createSelector( + selectWallet, + selectNetwork, + selectCrossMarginSupportedNetwork, + (state: RootState) => state.crossMargin, + (wallet, network, supportedNetwork, crossMargin) => { + return wallet && supportedNetwork ? crossMargin.accounts[network][wallet] : null + } +) + +export const selectCrossMarginPositionHistory = createSelector( + selectCrossMarginAccountData, + (accountData) => { + return unserializePositionHistory(accountData?.positionHistory ?? []) + } +) + +export const selectCrossMarginLeverageSide = (state: RootState) => state.crossMargin.leverageSide + +export const selectCrossMarginTradeInputs = createSelector( + selectCrossMarginLeverageSide, + (state: RootState) => state.crossMargin.tradeInputs, + (side, tradeInputs) => { + const inputs = unserializeTradeInputs(tradeInputs) + const deltas = { + susdSizeDelta: side === PositionSide.LONG ? inputs.susdSize : inputs.susdSize.neg(), + nativeSizeDelta: side === PositionSide.LONG ? inputs.nativeSize : inputs.nativeSize.neg(), + } + return { + ...inputs, + ...deltas, + susdSizeString: tradeInputs.susdSize, + nativeSizeString: tradeInputs.nativeSize, + } + } +) + +export const selectAllCrossMarginTrades = createSelector( + selectCrossMarginAccountData, + selectV3Markets, + (isolatedAccountData, markets) => { + const trades = unserializeTrades(isolatedAccountData?.trades ?? []) + return trades.map((t) => { + const market = markets.find((m) => m.asset === t.asset) + return { + ...t, + market: market, + } + }) + } +) + +export const selectCrossMarginMarginTransfers = createSelector( + selectWallet, + selectNetwork, + (state: RootState) => state.crossMargin, + (wallet, network, futures) => { + if (!wallet) return [] + const account = futures.accounts[network]?.[wallet] + return account?.marginTransfers ?? [] + } +) + +export const selectMarkPrices = createSelector(selectV3Markets, selectPrices, (markets, prices) => { + const markPrices: MarkPrices = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.offChain ?? wei(0) + return { + ...acc, + [market.marketKey]: wei(price).mul( + wei(market.marketSkew).div(market.settings.skewScale).add(1) + ), + } + }, markPrices) +}) + +export const selectCrossMarginPositions = createSelector( + selectMarkPrices, + selectCrossMarginAccountData, + selectCrossMarginPositionHistory, + (prices, account, positionHistory) => { + return account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] + } +) diff --git a/packages/app/src/state/perpsV3/types.ts b/packages/app/src/state/crossMargin/types.ts similarity index 97% rename from packages/app/src/state/perpsV3/types.ts rename to packages/app/src/state/crossMargin/types.ts index e587d475c4..2bbc8cc440 100644 --- a/packages/app/src/state/perpsV3/types.ts +++ b/packages/app/src/state/crossMargin/types.ts @@ -12,11 +12,11 @@ import { FuturesMarketKey, FuturesMarketAsset, MarginTransfer, - FuturesAccountType, FuturesFilledPosition, FuturesMarket, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' +import { AppFuturesMarginType } from 'state/futures/types' import { PricesInfo } from 'state/prices/types' import { QueryStatus } from 'state/types' @@ -119,7 +119,7 @@ export type FundingRatePeriods = { } export type AccountContext = { - type: FuturesAccountType + type: AppFuturesMarginType network: NetworkId wallet: string cmAccount?: string @@ -137,7 +137,7 @@ export type PerpsV3AccountData = { delayedOrders: DelayedOrderWithDetails[] } -export type PerspV3State = { +export type PerpsV3State = { markets: Record[]> tradeInputs: TradeSizeInputs editPositionInputs: EditPositionInputs @@ -147,7 +147,7 @@ export type PerspV3State = { close: FuturesPotentialTradeDetails | null edit: FuturesPotentialTradeDetails | null } - selectedType: FuturesAccountType + selectedType: AppFuturesMarginType confirmationModalOpen: boolean closePositionOrderInputs: ClosePositionInputs previewDebounceCount: number diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index 0f881e4624..610e75324b 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -7,8 +7,6 @@ import { ZERO_WEI, } from '@kwenta/sdk/constants' import { - DelayedOrder, - FuturesAccountType, FuturesMarket, ConditionalOrder, FuturesPosition, @@ -23,10 +21,10 @@ import { ConditionalOrderTypeEnum, SLTPOrderInputs, FuturesMarketKey, - ContractOrderType, FuturesMarketAsset, NetworkId, TransactionStatus, + FuturesMarginType, } from '@kwenta/sdk/types' import { calculateDesiredFillPrice, @@ -34,16 +32,13 @@ import { serializePotentialTrade, marketOverrides, floorNumber, - stripZeros, - getTransactionPrice, } from '@kwenta/sdk/utils' import { createAsyncThunk } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' -import { BigNumber, ethers } from 'ethers' +import { ethers } from 'ethers' import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' -import { unserializeGasPrice } from 'state/app/helpers' import { handleTransactionError, setOpenModal, @@ -54,8 +49,8 @@ import { } from 'state/app/reducer' import { fetchBalances } from 'state/balances/actions' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' +import { fetchV3Markets } from 'state/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' -import { selectLatestEthPrice } from 'state/prices/selectors' import { AppDispatch, AppThunk, RootState } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -76,24 +71,17 @@ import { refetchWithComparator } from 'utils/queries' import { handlePreviewError, - setCrossMarginAccount, - setCrossMarginFees, - setCrossMarginLeverageForAsset, - setCrossMarginMarginDelta, - setCrossMarginOrderCancelling, - setCrossMarginOrderPrice, - setCrossMarginOrderPriceInvalidLabel, - setCrossMarginTradeInputs, - setCrossMarginTradePreview, - setIsolatedMarginFee, + setSmartMarginAccount, + setSmartMarginFees, + setSmartMarginMarginDelta, + setSmartMarginOrderCancelling, + setSmartMarginOrderPrice, + setSmartMarginOrderPriceInvalidLabel, + setSmartMarginTradeInputs, + setSmartMarginTradePreview, setLeverageInput, - setIsolatedMarginTradeInputs, - setIsolatedTradePreview, setLeverageSide, - setTransactionEstimate, - setCrossMarginEditPositionInputs, - setIsolatedMarginEditPositionInputs, - incrementIsolatedPreviewCount, + setSmartMarginEditPositionInputs, incrementCrossPreviewCount, setClosePositionSizeDelta, setClosePositionPrice, @@ -101,15 +89,13 @@ import { setKeeperDeposit, } from './reducer' import { - selectCrossMarginAccount, - selectCrossMarginMarginDelta, - selectCrossMarginOrderPrice, - selectCrossMarginTradeInputs, + selectSmartMarginAccount, + selectSmartMarginMarginDelta, + selectSmartMarginOrderPrice, selectFuturesAccount, - selectFuturesSupportedNetwork, + selectSmartMarginSupportedNetwork, selectFuturesType, selectIsConditionalOrder, - selectIsolatedMarginTradeInputs, selectKeeperEthBalance, selectLeverageSide, selectMarketAsset, @@ -119,11 +105,11 @@ import { selectOrderType, selectOrderFeeCap, selectPosition, - selectTradeSizeInputs, + selectSmartMarginTradeInputs, selectIdleMargin, selectSlTpTradeInputs, - selectCrossMarginEditPosInputs, - selectCrossPreviewCount, + selectSmartMarginEditPosInputs, + selectSmartMarginPreviewCount, selectTradePreview, selectClosePositionOrderInputs, selectFuturesPositions, @@ -138,23 +124,22 @@ import { } from './selectors' import { AccountContext, + AppFuturesMarginType, CancelDelayedOrderInputs, - CrossMarginBalanceInfo, + SmartMarginBalanceInfo, DebouncedPreviewParams, DelayedOrderWithDetails, ExecuteDelayedOrderInputs, - FuturesTransactionType, PreviewAction, TradePreviewParams, } from './types' -import { fetchV3Markets } from 'state/perpsV3/actions' export const fetchMarkets = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, void, ThunkConfig >('futures/fetchMarkets', async (_, { getState, extra: { sdk } }) => { - const supportedNetwork = selectFuturesSupportedNetwork(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const networkId = selectNetwork(getState()) if (!supportedNetwork) return @@ -179,20 +164,20 @@ export const fetchMarkets = createAsyncThunk< } }) -export const fetchCrossMarginBalanceInfo = createAsyncThunk< - { balanceInfo: CrossMarginBalanceInfo; account: string; network: NetworkId } | undefined, +export const fetchSmartMarginBalanceInfo = createAsyncThunk< + { balanceInfo: SmartMarginBalanceInfo; account: string; network: NetworkId } | undefined, void, ThunkConfig >( - 'futures/fetchCrossMarginBalanceInfo', + 'futures/fetchSmartMarginBalanceInfo', async (_, { getState, extra: { sdk }, rejectWithValue }) => { - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) const network = selectNetwork(getState()) const wallet = selectWallet(getState()) - const crossMarginSupported = selectFuturesSupportedNetwork(getState()) + const crossMarginSupported = selectSmartMarginSupportedNetwork(getState()) if (!account || !wallet || !crossMarginSupported) return try { - const balanceInfo = await sdk.futures.getCrossMarginBalanceInfo(wallet, account) + const balanceInfo = await sdk.futures.getSmartMarginBalanceInfo(wallet, account) return { balanceInfo: serializeCmBalanceInfo(balanceInfo), account, network } } catch (err) { logError(err) @@ -203,13 +188,13 @@ export const fetchCrossMarginBalanceInfo = createAsyncThunk< } ) -export const fetchCrossMarginPositions = createAsyncThunk< +export const fetchSmartMarginPositions = createAsyncThunk< { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchCrossMarginPositions', async (_, { getState, extra: { sdk } }) => { - const account = selectCrossMarginAccount(getState()) - const supportedNetwork = selectFuturesSupportedNetwork(getState()) +>('futures/fetchSmartMarginPositions', async (_, { getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) const markets = selectMarkets(getState()) @@ -230,42 +215,14 @@ export const fetchCrossMarginPositions = createAsyncThunk< } }) -export const fetchIsolatedMarginPositions = createAsyncThunk< - { positions: FuturesPosition[]; wallet: string; network: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchIsolatedMarginPositions', async (_, { getState, extra: { sdk } }) => { - const { wallet } = getState() - const supportedNetwork = selectFuturesSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const markets = selectMarkets(getState()) - - if (!wallet.walletAddress || !supportedNetwork) return - try { - const positions = await sdk.futures.getFuturesPositions( - wallet.walletAddress, - markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.market })) - ) - return { - positions: positions.map((p) => serializeWeiObject(p) as FuturesPosition), - wallet: wallet.walletAddress, - network: network, - } - } catch (err) { - logError(err) - notifyError('Failed to fetch isolated margin positions', err) - throw err - } -}) - export const refetchPosition = createAsyncThunk< { position: FuturesPosition wallet: string - futuresType: FuturesAccountType + futuresType: AppFuturesMarginType networkId: NetworkId } | null, - FuturesAccountType, + AppFuturesMarginType, ThunkConfig >('futures/refetchPosition', async (type, { getState, extra: { sdk } }) => { const account = selectFuturesAccount(getState()) @@ -287,30 +244,30 @@ export const refetchPosition = createAsyncThunk< ) if (result.data[0]) { - const serialized = serializeWeiObject(result.data[0] as FuturesPosition) as FuturesPosition< - string - > + const serialized = serializeWeiObject( + result.data[0] as FuturesPosition + ) as FuturesPosition return { position: serialized, wallet: account, futuresType: type, networkId } } return null }) -export const fetchCrossMarginAccount = createAsyncThunk< +export const fetchSmartMarginAccount = createAsyncThunk< { account: string; wallet: string; network: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchCrossMarginAccount', async (_, { getState, extra: { sdk }, rejectWithValue }) => { +>('futures/fetchSmartMarginAccount', async (_, { getState, extra: { sdk }, rejectWithValue }) => { const wallet = selectWallet(getState()) - const supportedNetwork = selectFuturesSupportedNetwork(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) if (!wallet || !supportedNetwork) return undefined - const accounts = getState().futures.crossMargin.accounts + const accounts = getState().futures.smartMargin.accounts // Already have an accoutn fetched and persisted for this address if (accounts[network]?.[wallet]?.account) return try { - const accounts = await sdk.futures.getCrossMarginAccounts(wallet) + const accounts = await sdk.futures.getSmartMarginAccounts(wallet) const account = accounts[0] if (account) return { account, wallet, network } return undefined @@ -339,20 +296,13 @@ export const fetchMarginTransfers = createAsyncThunk< ThunkConfig >('futures/fetchMarginTransfers', async (_, { getState, extra: { sdk } }) => { const { wallet, futures } = getState() - const supportedNetwork = selectFuturesSupportedNetwork(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) - const cmAccount = selectCrossMarginAccount(getState()) + const cmAccount = selectSmartMarginAccount(getState()) if (!wallet.walletAddress || !supportedNetwork) return try { - const transfers = - futures.selectedType === 'cross_margin' - ? await sdk.futures.getIsolatedMarginTransfers(cmAccount) - : await sdk.futures.getIsolatedMarginTransfers() - - const idleTransfers = - futures.selectedType === 'cross_margin' - ? await sdk.futures.getCrossMarginTransfers(cmAccount) - : [] + const transfers = await sdk.futures.getIsolatedMarginTransfers(cmAccount) + const idleTransfers = await sdk.futures.getSmartMarginTransfers(cmAccount) return { marginTransfers: transfers, @@ -373,7 +323,6 @@ export const fetchMarginTransfers = createAsyncThunk< export const fetchCombinedMarginTransfers = createAsyncThunk< | { - isolatedMarginTransfers: MarginTransfer[] smartMarginTransfers: MarginTransfer[] idleTransfers: MarginTransfer[] context: AccountContext @@ -383,19 +332,17 @@ export const fetchCombinedMarginTransfers = createAsyncThunk< ThunkConfig >('futures/fetchCombinedMarginTransfers', async (_, { getState, extra: { sdk } }) => { const { wallet, futures } = getState() - const supportedNetwork = selectFuturesSupportedNetwork(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) - const cmAccount = selectCrossMarginAccount(getState()) + const cmAccount = selectSmartMarginAccount(getState()) if (!wallet.walletAddress || !supportedNetwork) return try { - const isolatedMarginTransfers = await sdk.futures.getIsolatedMarginTransfers() const smartMarginTransfers = cmAccount ? await sdk.futures.getIsolatedMarginTransfers(cmAccount) : [] - const idleTransfers = cmAccount ? await sdk.futures.getCrossMarginTransfers(cmAccount) : [] + const idleTransfers = cmAccount ? await sdk.futures.getSmartMarginTransfers(cmAccount) : [] return { - isolatedMarginTransfers, smartMarginTransfers, idleTransfers, context: { @@ -412,18 +359,11 @@ export const fetchCombinedMarginTransfers = createAsyncThunk< } }) -export const fetchCrossMarginAccountData = createAsyncThunk( - 'futures/fetchCrossMarginAccountData', - async (_, { dispatch }) => { - dispatch(fetchCrossMarginPositions()) - dispatch(fetchCrossMarginBalanceInfo()) - } -) - -export const fetchIsolatedMarginAccountData = createAsyncThunk( - 'futures/fetchIsolatedMarginAccountData', +export const fetchSmartMarginAccountData = createAsyncThunk( + 'futures/fetchSmartMarginAccountData', async (_, { dispatch }) => { - dispatch(fetchIsolatedMarginPositions()) + dispatch(fetchSmartMarginPositions()) + dispatch(fetchSmartMarginBalanceInfo()) } ) @@ -436,35 +376,7 @@ export const fetchSharedFuturesData = createAsyncThunk( } ) -export const fetchIsolatedOpenOrders = createAsyncThunk< - { orders: DelayedOrderWithDetails[]; wallet: string; networkId: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchIsolatedOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { - const wallet = selectWallet(getState()) - const supportedNetwork = selectFuturesSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const markets = selectMarkets(getState()) - const existingOrders = selectOpenDelayedOrders(getState()) - if (!wallet || !supportedNetwork || !markets.length) return - - const marketAddresses = markets.map((market) => market.market) - - const orders: DelayedOrder[] = await sdk.futures.getDelayedOrders(wallet, marketAddresses) - const nonzeroOrders = formatDelayedOrders(orders, markets) - const orderDropped = existingOrders.length > nonzeroOrders.length - if (orderDropped) { - dispatch(fetchIsolatedMarginPositions()) - } - - return { - networkId: network, - orders: serializeDelayedOrders(nonzeroOrders), - wallet: wallet, - } -}) - -export const fetchCrossMarginOpenOrders = createAsyncThunk< +export const fetchSmartMarginOpenOrders = createAsyncThunk< | { conditionalOrders: ConditionalOrder[] delayedOrders: DelayedOrderWithDetails[] @@ -474,9 +386,9 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< | undefined, void, ThunkConfig ->('futures/fetchCrossMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { - const account = selectCrossMarginAccount(getState()) - const supportedNetwork = selectFuturesSupportedNetwork(getState()) +>('futures/fetchSmartMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) const markets = selectMarkets(getState()) const existingOrders = selectOpenDelayedOrders(getState()) @@ -491,7 +403,7 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< const orderDropped = existingOrders.length > nonzeroOrders.length if (orderDropped) { - dispatch(fetchCrossMarginPositions()) + dispatch(fetchSmartMarginPositions()) } return { @@ -507,50 +419,6 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< } }) -export const fetchIsolatedMarginTradePreview = createAsyncThunk< - { preview: FuturesPotentialTradeDetails | null; type: PreviewAction }, - DebouncedPreviewParams, - ThunkConfig ->( - 'futures/fetchIsolatedMarginTradePreview', - async (params, { dispatch, getState, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) - const markets = selectMarkets(getState()) - - const market = markets.find((m) => m.marketKey === params.market.key) - - try { - const orderTypeNum = ContractOrderType.DELAYED_OFFCHAIN - if (!market) throw new Error('No market data provided for preview') - if (!account) throw new Error('No account to generate preview') - if (!params.orderPrice) throw new Error('No price provided for preview') - const leverageSide = selectLeverageSide(getState()) - - const preview = await sdk.futures.getIsolatedTradePreview( - params.market.address, - params.market.key, - orderTypeNum, - { - sizeDelta: params.sizeDelta, - price: params.orderPrice, - leverageSide, - } - ) - - const serializedPreview = serializePotentialTrade({ - ...preview, - marketKey: params.market.key, - }) - return { preview: serializedPreview, type: params.action } - } catch (err) { - logError(err) - notifyError('Failed to generate trade preview', err) - dispatch(handlePreviewError({ error: err.message, previewType: params.action })) - throw err - } - } -) - export const fetchCrossMarginTradePreview = createAsyncThunk< { preview: FuturesPotentialTradeDetails | null; type: PreviewAction }, DebouncedPreviewParams, @@ -585,7 +453,7 @@ export const fetchCrossMarginTradePreview = createAsyncThunk< try { const leverageSide = selectLeverageSide(getState()) - const preview = await sdk.futures.getCrossMarginTradePreview( + const preview = await sdk.futures.getSmartMarginTradePreview( account || ZERO_ADDRESS, params.market.key, params.market.address, @@ -593,7 +461,7 @@ export const fetchCrossMarginTradePreview = createAsyncThunk< ) // Check the preview hasn't been cleared before query resolves - const count = selectCrossPreviewCount(getState()) + const count = selectSmartMarginPreviewCount(getState()) if (count !== params.debounceCount) { const existing = selectTradePreview(getState()) const returnPreview = existing ? serializePotentialTrade(existing) : null @@ -629,228 +497,221 @@ export const fetchCrossMarginTradePreview = createAsyncThunk< export const clearTradeInputs = createAsyncThunk( 'futures/clearTradeInputs', async (_, { dispatch }) => { - dispatch(setCrossMarginMarginDelta('')) - dispatch(setCrossMarginFees(ZERO_CM_FEES)) - dispatch(setIsolatedMarginFee('0')) + dispatch(setSmartMarginMarginDelta('')) + dispatch(setSmartMarginFees(ZERO_CM_FEES)) dispatch(setLeverageInput('')) dispatch(clearAllTradePreviews()) - dispatch(setCrossMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setIsolatedMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setCrossMarginEditPositionInputs({ nativeSizeDelta: '', marginDelta: '' })) - dispatch(setIsolatedMarginEditPositionInputs({ nativeSizeDelta: '', marginDelta: '' })) + dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setSmartMarginEditPositionInputs({ nativeSizeDelta: '', marginDelta: '' })) } ) -export const editCrossMarginTradeMarginDelta = (marginDelta: string): AppThunk => ( - dispatch, - getState -) => { - const orderPrice = selectMarketIndexPrice(getState()) - const marketInfo = selectMarketInfo(getState()) - const { susdSize, nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) - - if (!marketInfo) throw new Error('No market selected') +export const editCrossMarginTradeMarginDelta = + (marginDelta: string): AppThunk => + (dispatch, getState) => { + const orderPrice = selectMarketIndexPrice(getState()) + const marketInfo = selectMarketInfo(getState()) + const { susdSize, nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) - if (!marginDelta || Number(marginDelta) === 0) { - dispatch(setCrossMarginMarginDelta(marginDelta)) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) - return - } + if (!marketInfo) throw new Error('No market selected') - const marginDelatWei = wei(marginDelta) - const leverage = wei(susdSize).div(marginDelatWei.abs()) + if (!marginDelta || Number(marginDelta) === 0) { + dispatch(setSmartMarginMarginDelta(marginDelta)) + dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) + return + } - dispatch(setCrossMarginMarginDelta(marginDelta)) - if (!leverage.eq(0)) { - dispatch(setLeverageInput(leverage.toString(2))) - } + const marginDelatWei = wei(marginDelta) + const leverage = wei(susdSize).div(marginDelatWei.abs()) - dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, - orderPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: nativeSizeDelta, - action: 'trade', - }) - ) -} + dispatch(setSmartMarginMarginDelta(marginDelta)) + if (!leverage.eq(0)) { + dispatch(setLeverageInput(leverage.toString(2))) + } -export const editCrossMarginTradeSize = ( - size: string, - currencyType: 'usd' | 'native' -): AppThunk => (dispatch, getState) => { - const indexPrice = selectMarketIndexPrice(getState()) - const marginDelta = selectCrossMarginMarginDelta(getState()) - const orderPrice = selectCrossMarginOrderPrice(getState()) - const isConditionalOrder = selectIsConditionalOrder(getState()) - const tradeSide = selectLeverageSide(getState()) - const marketInfo = selectMarketInfo(getState()) - const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice + dispatch( + stageCrossMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.market }, + orderPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: nativeSizeDelta, + action: 'trade', + }) + ) + } - if (!marketInfo) throw new Error('No market selected') +export const editCrossMarginTradeSize = + (size: string, currencyType: 'usd' | 'native'): AppThunk => + (dispatch, getState) => { + const indexPrice = selectMarketIndexPrice(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) + const orderPrice = selectSmartMarginOrderPrice(getState()) + const isConditionalOrder = selectIsConditionalOrder(getState()) + const tradeSide = selectLeverageSide(getState()) + const marketInfo = selectMarketInfo(getState()) + const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice - if (size === '' || price.eq(0)) { - dispatch(setCrossMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) - dispatch(setLeverageInput('')) - return - } + if (!marketInfo) throw new Error('No market selected') - const nativeSize = currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) - const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size - const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' - const sizeDeltaWei = - tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() - dispatch( - setCrossMarginTradeInputs({ - susdSize: usdSize, - nativeSize: nativeSize, - }) - ) - dispatch(setLeverageInput(leverage.toString(2))) - dispatch( - stageCrossMarginTradePreview({ - market: { - key: marketInfo.marketKey, - address: marketInfo.market, - }, - orderPrice: price, - marginDelta: wei(marginDelta), - sizeDelta: sizeDeltaWei, - action: 'trade', - }) - ) -} + if (size === '' || price.eq(0)) { + dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) + dispatch(setLeverageInput('')) + return + } -export const editCrossMarginPositionSize = ( - marketKey: FuturesMarketKey, - nativeSizeDelta: string -): AppThunk => (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) - dispatch( - setCrossMarginEditPositionInputs({ - marginDelta: '', - nativeSizeDelta: nativeSizeDelta, - }) - ) - try { - const market = getMarketDetailsByKey(getState, marketKey) + const nativeSize = + currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) + const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size + const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' + const sizeDeltaWei = + tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() + dispatch( + setSmartMarginTradeInputs({ + susdSize: usdSize, + nativeSize: nativeSize, + }) + ) + dispatch(setLeverageInput(leverage.toString(2))) dispatch( stageCrossMarginTradePreview({ - orderPrice: marketPrice, - market, - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', + market: { + key: marketInfo.marketKey, + address: marketInfo.market, + }, + orderPrice: price, + marginDelta: wei(marginDelta), + sizeDelta: sizeDeltaWei, + action: 'trade', }) ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) } -} - -export const editClosePositionSizeDelta = ( - marketKey: FuturesMarketKey, - nativeSizeDelta: string -): AppThunk => (dispatch, getState) => { - dispatch(setClosePositionSizeDelta(nativeSizeDelta)) - if (nativeSizeDelta === '' || !nativeSizeDelta) { - dispatch(setIsolatedTradePreview({ preview: null, type: 'close' })) - dispatch(setCrossMarginTradePreview({ preview: null, type: 'close' })) - return +export const editCrossMarginPositionSize = + (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => + (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) + dispatch( + setSmartMarginEditPositionInputs({ + marginDelta: '', + nativeSizeDelta: nativeSizeDelta, + }) + ) + try { + const market = getMarketDetailsByKey(getState, marketKey) + dispatch( + stageCrossMarginTradePreview({ + orderPrice: marketPrice, + market, + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) + } } - const { price } = selectClosePositionOrderInputs(getState()) - const { marketPrice } = selectEditPositionModalInfo(getState()) - const accountType = selectFuturesType(getState()) - try { - const market = getMarketDetailsByKey(getState, marketKey) - const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) - const odrderPrice = accountType === 'isolated_margin' ? marketPrice : smartMarginPrice - const previewParams: TradePreviewParams = { - market, - sizeDelta: wei(nativeSizeDelta), - orderPrice: odrderPrice, - marginDelta: ZERO_WEI, - action: 'close', +export const editClosePositionSizeDelta = + (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => + (dispatch, getState) => { + dispatch(setClosePositionSizeDelta(nativeSizeDelta)) + + if (nativeSizeDelta === '' || !nativeSizeDelta) { + dispatch(setSmartMarginTradePreview({ preview: null, type: 'close' })) + return } - if (accountType === 'isolated_margin') { - dispatch(stageIsolatedMarginTradePreview(previewParams)) - } else { + const { price } = selectClosePositionOrderInputs(getState()) + const { marketPrice } = selectEditPositionModalInfo(getState()) + const accountType = selectFuturesType(getState()) + + try { + const market = getMarketDetailsByKey(getState, marketKey) + const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) + const odrderPrice = + accountType === FuturesMarginType.CROSS_MARGIN ? marketPrice : smartMarginPrice + const previewParams: TradePreviewParams = { + market, + sizeDelta: wei(nativeSizeDelta), + orderPrice: odrderPrice, + marginDelta: ZERO_WEI, + action: 'close', + } dispatch(stageCrossMarginTradePreview(previewParams)) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) } - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) } -} -export const editClosePositionPrice = (marketKey: FuturesMarketKey, price: string): AppThunk => ( - dispatch, - getState -) => { - const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) - const marketPrice = selectMarketIndexPrice(getState()) - const { position } = selectEditPositionModalInfo(getState()) - const closeTradeSide = - position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT - const invalidLabel = orderPriceInvalidLabel(price || '0', closeTradeSide, marketPrice, orderType) +export const editClosePositionPrice = + (marketKey: FuturesMarketKey, price: string): AppThunk => + (dispatch, getState) => { + const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) + const marketPrice = selectMarketIndexPrice(getState()) + const { position } = selectEditPositionModalInfo(getState()) + const closeTradeSide = + position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT + const invalidLabel = orderPriceInvalidLabel( + price || '0', + closeTradeSide, + marketPrice, + orderType + ) - dispatch(setClosePositionPrice({ value: price, invalidLabel })) + dispatch(setClosePositionPrice({ value: price, invalidLabel })) - try { - const marketInfo = getMarketDetailsByKey(getState, marketKey) - dispatch( - stageCrossMarginTradePreview({ - market: marketInfo, - orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) + try { + const marketInfo = getMarketDetailsByKey(getState, marketKey) + dispatch( + stageCrossMarginTradePreview({ + market: marketInfo, + orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) + } } -} - -export const editCrossMarginPositionMargin = ( - marketKey: FuturesMarketKey, - marginDelta: string -): AppThunk => (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) - dispatch( - setCrossMarginEditPositionInputs({ - marginDelta: marginDelta, - nativeSizeDelta: '', - }) - ) - try { - const market = getMarketDetailsByKey(getState, marketKey) +export const editCrossMarginPositionMargin = + (marketKey: FuturesMarketKey, marginDelta: string): AppThunk => + (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) dispatch( - stageCrossMarginTradePreview({ - market, - orderPrice: marketPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: ZERO_WEI, - action: 'edit', + setSmartMarginEditPositionInputs({ + marginDelta: marginDelta, + nativeSizeDelta: '', }) ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) + try { + const market = getMarketDetailsByKey(getState, marketKey) + + dispatch( + stageCrossMarginTradePreview({ + market, + orderPrice: marketPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: ZERO_WEI, + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) + } } -} export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { - const orderPrice = selectCrossMarginOrderPrice(getState()) + const orderPrice = selectSmartMarginOrderPrice(getState()) const indexPrice = selectMarketIndexPrice(getState()) const marketInfo = selectMarketInfo(getState()) - const marginDelta = selectCrossMarginMarginDelta(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) const isConditionalOrder = selectIsConditionalOrder(getState()) const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice - const { nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) + const { nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) if (!marketInfo) throw new Error('No market selected') @@ -868,95 +729,26 @@ export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { const stageCrossMarginTradePreview = createAsyncThunk( 'futures/stageCrossMarginTradePreview', async (inputs, { dispatch, getState }) => { - dispatch(calculateCrossMarginFees(inputs)) + dispatch(calculateSmartMarginFees(inputs)) dispatch(incrementCrossPreviewCount()) - const debounceCount = selectCrossPreviewCount(getState()) + const debounceCount = selectSmartMarginPreviewCount(getState()) debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) } ) -const stageIsolatedMarginTradePreview = createAsyncThunk( - 'futures/stageIsolatedMarginTradePreview', - async (inputs, { dispatch, getState }) => { - dispatch(incrementCrossPreviewCount()) - const debounceCount = selectCrossPreviewCount(getState()) - debouncedPrepareIsolatedMarginTradePreview(dispatch, { ...inputs, debounceCount }) - } -) - -export const editIsolatedMarginSize = (size: string, currencyType: 'usd' | 'native'): AppThunk => ( - dispatch, - getState -) => { - const marketPrice = selectMarketIndexPrice(getState()) - const position = selectPosition(getState()) - const marketKey = selectMarketKey(getState()) - const tradeSide = selectLeverageSide(getState()) - - if ( - size === '' || - marketPrice.eq(0) || - !position?.remainingMargin || - position?.remainingMargin.eq(0) - ) { - dispatch(setIsolatedMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setIsolatedTradePreview({ preview: null, type: 'edit' })) - dispatch(setLeverageInput('')) - return - } - - const market = getMarketDetailsByKey(getState, marketKey) - - const nativeSize = currencyType === 'native' ? size : wei(size).div(marketPrice).toString() - const usdSize = currencyType === 'native' ? stripZeros(marketPrice.mul(size).toString()) : size - const leverage = - Number(usdSize) > 0 && position?.remainingMargin.gt(0) - ? wei(usdSize).div(position?.remainingMargin).toString(2) - : '' - const nativeSizeDelta = tradeSide === PositionSide.LONG ? wei(nativeSize) : wei(nativeSize).neg() - - dispatch(setLeverageInput(leverage)) - dispatch( - setIsolatedMarginTradeInputs({ - susdSize: usdSize, - nativeSize: nativeSize, - }) - ) - dispatch(calculateIsolatedMarginFees()) - dispatch(incrementIsolatedPreviewCount()) - dispatch( - stageIsolatedMarginTradePreview({ - market, - sizeDelta: nativeSizeDelta, - orderPrice: marketPrice, - marginDelta: ZERO_WEI, - action: 'trade', - }) - ) -} - -export const editTradeSizeInput = (size: string, currencyType: 'usd' | 'native'): AppThunk => ( - dispatch, - getState -) => { - const type = selectFuturesType(getState()) - if (type === 'cross_margin') { +export const editTradeSizeInput = + (size: string, currencyType: 'usd' | 'native'): AppThunk => + (dispatch) => { dispatch(editCrossMarginTradeSize(size, currencyType)) - } else { - dispatch(editIsolatedMarginSize(size, currencyType)) } -} - -export const changeLeverageSide = (side: PositionSide): AppThunk => (dispatch, getState) => { - const { nativeSizeString } = selectTradeSizeInputs(getState()) - dispatch(setLeverageSide(side)) - dispatch(editTradeSizeInput(nativeSizeString, 'native')) -} -export const setCrossMarginLeverage = (leverage: string): AppThunk => (dispatch, getState) => { - const marketKey = selectMarketKey(getState()) - dispatch(setCrossMarginLeverageForAsset({ marketKey: marketKey, leverage: leverage })) -} +export const changeLeverageSide = + (side: PositionSide): AppThunk => + (dispatch, getState) => { + const { nativeSizeString } = selectSmartMarginTradeInputs(getState()) + dispatch(setLeverageSide(side)) + dispatch(editTradeSizeInput(nativeSizeString, 'native')) + } export const debouncedPrepareCrossMarginTradePreview = debounce( (dispatch, inputs: DebouncedPreviewParams) => { @@ -965,30 +757,25 @@ export const debouncedPrepareCrossMarginTradePreview = debounce( 500 ) -export const debouncedPrepareIsolatedMarginTradePreview = debounce( - (dispatch, inputs: DebouncedPreviewParams) => { - dispatch(fetchIsolatedMarginTradePreview(inputs)) - }, - 500 -) - -export const editTradeOrderPrice = (price: string): AppThunk => (dispatch, getState) => { - const rate = selectSkewAdjustedPrice(getState()) - const orderType = selectOrderType(getState()) - const side = selectLeverageSide(getState()) - const inputs = selectCrossMarginTradeInputs(getState()) - dispatch(setCrossMarginOrderPrice(price)) - const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) - dispatch(setCrossMarginOrderPriceInvalidLabel(invalidLabel)) - if (!invalidLabel && price && inputs.susdSize) { - // Recalc the trade - dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) +export const editTradeOrderPrice = + (price: string): AppThunk => + (dispatch, getState) => { + const rate = selectSkewAdjustedPrice(getState()) + const orderType = selectOrderType(getState()) + const side = selectLeverageSide(getState()) + const inputs = selectSmartMarginTradeInputs(getState()) + dispatch(setSmartMarginOrderPrice(price)) + const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) + dispatch(setSmartMarginOrderPriceInvalidLabel(invalidLabel)) + if (!invalidLabel && price && inputs.susdSize) { + // Recalc the trade + dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) + } } -} export const fetchFuturesPositionHistory = createAsyncThunk< | { - accountType: FuturesAccountType + accountType: AppFuturesMarginType history: FuturesPositionHistory[] account: string wallet: string @@ -1003,7 +790,7 @@ export const fetchFuturesPositionHistory = createAsyncThunk< const accountType = selectFuturesType(getState()) const networkId = selectNetwork(getState()) const wallet = selectWallet(getState()) - const futuresSupported = selectFuturesSupportedNetwork(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) if (!wallet || !account || !futuresSupported) return const history = await sdk.futures.getPositionHistory(account) return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } @@ -1020,9 +807,9 @@ export const fetchPositionHistoryForTrader = createAsyncThunk< >('futures/fetchPositionHistoryForTrader', async (traderAddress, { getState, extra: { sdk } }) => { try { const networkId = selectNetwork(getState()) - const futuresSupported = selectFuturesSupportedNetwork(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) if (!futuresSupported) return - const history = await sdk.futures.getCompletePositionHistory(traderAddress) + const history = await sdk.futures.getPositionHistory(traderAddress, 'eoa') return { history: serializePositionHistory(history), networkId, address: traderAddress } } catch (err) { notifyError('Failed to fetch history for trader ' + traderAddress, err) @@ -1036,7 +823,7 @@ export const fetchTradesForSelectedMarket = createAsyncThunk< account: string wallet: string networkId: NetworkId - accountType: FuturesAccountType + accountType: AppFuturesMarginType } | undefined, void, @@ -1048,7 +835,7 @@ export const fetchTradesForSelectedMarket = createAsyncThunk< const marketAsset = selectMarketAsset(getState()) const accountType = selectFuturesType(getState()) const account = selectFuturesAccount(getState()) - const futuresSupported = selectFuturesSupportedNetwork(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) if (!futuresSupported || !wallet || !account) return const trades = await sdk.futures.getTradesForMarket(marketAsset, wallet, accountType) @@ -1065,7 +852,7 @@ export const fetchAllTradesForAccount = createAsyncThunk< account: string wallet: string networkId: NetworkId - accountType: FuturesAccountType + accountType: AppFuturesMarginType } | undefined, void, @@ -1076,7 +863,7 @@ export const fetchAllTradesForAccount = createAsyncThunk< const networkId = selectNetwork(getState()) const accountType = selectFuturesType(getState()) const account = selectFuturesAccount(getState()) - const futuresSupported = selectFuturesSupportedNetwork(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) if (!futuresSupported || !wallet || !account) return const trades = await sdk.futures.getAllTrades(wallet, accountType, 200) return { trades: serializeTrades(trades), networkId, account, accountType, wallet } @@ -1086,29 +873,28 @@ export const fetchAllTradesForAccount = createAsyncThunk< } }) -export const calculateCrossMarginFees = (params: TradePreviewParams): AppThunk => ( - dispatch, - getState -) => { - const markets = selectMarkets(getState()) - const market = markets.find((m) => m.marketKey === params.market.key) - if (!market) throw new Error('Missing market info to compute fee') - const keeperBalance = selectKeeperEthBalance(getState()) - const { delayedOrderFee } = computeDelayedOrderFee( - market, - params.sizeDelta.mul(params.orderPrice?.abs()) - ) +export const calculateSmartMarginFees = + (params: TradePreviewParams): AppThunk => + (dispatch, getState) => { + const markets = selectMarkets(getState()) + const market = markets.find((m) => m.marketKey === params.market.key) + if (!market) throw new Error('Missing market info to compute fee') + const keeperBalance = selectKeeperEthBalance(getState()) + const { delayedOrderFee } = computeDelayedOrderFee( + market, + params.sizeDelta.mul(params.orderPrice?.abs()) + ) - const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) - ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) - : wei(0) + const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) + ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) + : wei(0) - const fees = { - delayedOrderFee: delayedOrderFee.toString(), - keeperEthDeposit: requiredDeposit.toString(), + const fees = { + delayedOrderFee: delayedOrderFee.toString(), + keeperEthDeposit: requiredDeposit.toString(), + } + dispatch(setSmartMarginFees(fees)) } - dispatch(setCrossMarginFees(fees)) -} export const calculateKeeperDeposit = (): AppThunk => (dispatch, getState) => { const keeperBalance = selectKeeperEthBalance(getState()) @@ -1119,27 +905,20 @@ export const calculateKeeperDeposit = (): AppThunk => (dispatch, getState) => { dispatch(setKeeperDeposit(requiredDeposit.toString())) } -export const calculateIsolatedMarginFees = (): AppThunk => (dispatch, getState) => { - const market = selectMarketInfo(getState()) - const { susdSizeDelta } = selectIsolatedMarginTradeInputs(getState()) - const { delayedOrderFee } = computeDelayedOrderFee(market, susdSizeDelta) - dispatch(setIsolatedMarginFee(delayedOrderFee.toString())) -} - // Contract Mutations -export const createCrossMarginAccount = createAsyncThunk< +export const createSmartMarginAccount = createAsyncThunk< { account: string; wallet: string; network: NetworkId } | undefined, void, ThunkConfig >( - 'futures/createCrossMarginAccount', + 'futures/createSmartMarginAccount', async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { const wallet = selectWallet(getState()) - const supportedNetwork = selectFuturesSupportedNetwork(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) if (!wallet || !supportedNetwork) return undefined - const accounts = getState().futures.crossMargin.accounts + const accounts = getState().futures.smartMargin.accounts // Already have an accoutn fetched and persisted for this address if (accounts[network]?.[wallet]?.account) { @@ -1148,10 +927,10 @@ export const createCrossMarginAccount = createAsyncThunk< } try { - const accounts = await sdk.futures.getCrossMarginAccounts() + const accounts = await sdk.futures.getSmartMarginAccounts() // Check for existing account on the contract as only one account per user if (accounts[0]) { - dispatch(setCrossMarginAccount({ account: accounts[0], wallet: wallet, network })) + dispatch(setSmartMarginAccount({ account: accounts[0], wallet: wallet, network })) return } @@ -1162,43 +941,31 @@ export const createCrossMarginAccount = createAsyncThunk< hash: null, }) ) - const tx = await sdk.futures.createCrossMarginAccount() + const tx = await sdk.futures.createSmartMarginAccount() await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchCrossMarginAccount()) + dispatch(fetchSmartMarginAccount()) } catch (err) { dispatch(handleTransactionError(err.message)) } } ) -export const depositCrossMargin = createAsyncThunk( - 'futures/depositCrossMargin', - async (amount, { getState, dispatch, extra: { sdk } }) => { - const account = selectCrossMarginAccount(getState()) - if (!account) { - notifyError('No smart margin account') - return - } - await submitCMTransferTransaction(dispatch, sdk, 'deposit_cross_margin', account, amount) - } -) - -export const withdrawCrossMargin = createAsyncThunk( - 'futures/withdrawCrossMargin', +export const withdrawSmartMargin = createAsyncThunk( + 'futures/withdrawSmartMargin', async (amount, { getState, dispatch, extra: { sdk } }) => { - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) if (!account) { notifyError('No smart margin account') return } - await submitCMTransferTransaction(dispatch, sdk, 'withdraw_cross_margin', account, amount) + await submitSMTransferTransaction(dispatch, sdk, 'withdraw_cross_margin', account, amount) } ) export const approveCrossMargin = createAsyncThunk( 'futures/approveCrossMargin', async (_, { getState, dispatch, extra: { sdk } }) => { - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) if (!account) throw new Error('No smart margin account') try { dispatch( @@ -1208,97 +975,9 @@ export const approveCrossMargin = createAsyncThunk( hash: null, }) ) - const tx = await sdk.futures.approveCrossMarginDeposit(account) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchCrossMarginBalanceInfo()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const depositIsolatedMargin = createAsyncThunk( - 'futures/depositIsolatedMargin', - async (amount, { getState, dispatch, extra: { sdk } }) => { - const marketInfo = selectMarketInfo(getState()) - if (!marketInfo) throw new Error('Market info not found') - try { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'deposit_isolated', - hash: null, - }) - ) - const tx = await sdk.futures.depositIsolatedMargin(marketInfo.market, amount) + const tx = await sdk.futures.approveSmartMarginDeposit(account) await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setOpenModal(null)) - dispatch(refetchPosition('isolated_margin')) - dispatch(fetchBalances()) - dispatch(fetchMarginTransfers()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const withdrawIsolatedMargin = createAsyncThunk( - 'futures/withdrawIsolatedMargin', - async (amount, { getState, dispatch, extra: { sdk } }) => { - const marketInfo = selectMarketInfo(getState()) - if (!marketInfo) throw new Error('Market info not found') - try { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'withdraw_isolated', - hash: null, - }) - ) - const tx = await sdk.futures.withdrawIsolatedMargin(marketInfo.market, amount) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(refetchPosition('isolated_margin')) - dispatch(setOpenModal(null)) - dispatch(fetchBalances()) - dispatch(fetchMarginTransfers()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const modifyIsolatedPosition = createAsyncThunk( - 'futures/modifyIsolatedPosition', - async (_, { getState, dispatch, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) - const marketInfo = selectMarketInfo(getState()) - const preview = selectTradePreview(getState()) - const desiredFillPrice = preview?.desiredFillPrice ?? wei(0) - const { nativeSizeDelta } = selectTradeSizeInputs(getState()) - try { - if (!marketInfo) throw new Error('Market info not found') - if (!account) throw new Error('Account not connected') - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'modify_isolated', - hash: null, - }) - ) - const tx = await sdk.futures.submitIsolatedMarginOrder( - marketInfo.market, - wei(nativeSizeDelta), - desiredFillPrice - ) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchIsolatedOpenOrders()) - dispatch(setOpenModal(null)) - dispatch(clearTradeInputs()) - dispatch(fetchBalances()) + dispatch(fetchSmartMarginBalanceInfo()) } catch (err) { dispatch(handleTransactionError(err.message)) throw err @@ -1321,7 +1000,7 @@ export const cancelDelayedOrder = createAsyncThunk( - 'futures/submitCrossMarginOrder', +export const submitSmartMarginOrder = createAsyncThunk( + 'futures/submitSmartMarginOrder', async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { const marketInfo = selectMarketInfo(getState()) - const account = selectCrossMarginAccount(getState()) - const tradeInputs = selectCrossMarginTradeInputs(getState()) - const marginDelta = selectCrossMarginMarginDelta(getState()) + const account = selectSmartMarginAccount(getState()) + const tradeInputs = selectSmartMarginTradeInputs(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) const feeCap = selectOrderFeeCap(getState()) const orderType = selectOrderType(getState()) - const orderPrice = selectCrossMarginOrderPrice(getState()) + const orderPrice = selectSmartMarginOrderPrice(getState()) const preview = selectTradePreview(getState()) const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) const wallet = selectWallet(getState()) @@ -1449,7 +1128,7 @@ export const submitCrossMarginOrder = createAsyncThunk o.isStale && o.marketKey === marketInfo.marketKey ) - const tx = await sdk.futures.submitCrossMarginOrder( + const tx = await sdk.futures.submitSmartMarginOrder( { address: marketInfo.market, key: marketInfo.marketKey }, wallet, account, @@ -1457,7 +1136,7 @@ export const submitCrossMarginOrder = createAsyncThunk( - 'futures/submitCrossMarginAdjustMargin', +export const submitSmartMarginAdjustMargin = createAsyncThunk( + 'futures/submitSmartMarginAdjustMargin', async (_, { getState, dispatch, extra: { sdk } }) => { const { market } = selectEditPositionModalInfo(getState()) - const account = selectCrossMarginAccount(getState()) - const { marginDelta } = selectCrossMarginEditPosInputs(getState()) + const account = selectSmartMarginAccount(getState()) + const { marginDelta } = selectSmartMarginEditPosInputs(getState()) try { if (!market) throw new Error('Market info not found') @@ -1495,7 +1174,7 @@ export const submitCrossMarginAdjustMargin = createAsyncThunk( - 'futures/submitCrossMarginAdjustPositionSize', +export const submitSmartMarginAdjustPositionSize = createAsyncThunk( + 'futures/submitSmartMarginAdjustPositionSize', async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) const preview = selectEditPositionPreview(getState()) - const { nativeSizeDelta } = selectCrossMarginEditPosInputs(getState()) + const { nativeSizeDelta } = selectSmartMarginEditPosInputs(getState()) try { if (!market) throw new Error('Market info not found') @@ -1560,7 +1239,7 @@ export const submitSmartMarginReducePositionOrder = createAsyncThunk { const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) const { nativeSizeDelta, orderType, price } = selectClosePositionOrderInputs(getState()) const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) const feeCap = selectOrderFeeCap(getState()) @@ -1608,12 +1287,12 @@ export const submitSmartMarginReducePositionOrder = createAsyncThunk( - 'futures/submitIsolatedMarginReducePositionOrder', - async (_, { getState, dispatch, extra: { sdk } }) => { - const { market } = selectEditPositionModalInfo(getState()) - const closePreview = selectClosePositionPreview(getState()) - const { nativeSizeDelta } = selectClosePositionOrderInputs(getState()) - const wallet = selectWallet(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!wallet) throw new Error('No wallet connected') - if (!closePreview) throw new Error('Failed to generate trade preview') - if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No size amount set') - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'modify_isolated', - hash: null, - }) - ) - - const tx = await sdk.futures.submitIsolatedMarginOrder( - market.market, - wei(nativeSizeDelta), - closePreview.desiredFillPrice - ) - - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setShowPositionModal(null)) - dispatch(fetchBalances()) - dispatch(clearTradeInputs()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - export const cancelConditionalOrder = createAsyncThunk( 'futures/cancelConditionalOrder', async (contractOrderId, { getState, dispatch, extra: { sdk } }) => { - const crossMarginAccount = selectCrossMarginAccount(getState()) + const crossMarginAccount = selectSmartMarginAccount(getState()) try { if (!crossMarginAccount) throw new Error('No smart margin account') dispatch( @@ -1688,14 +1328,14 @@ export const cancelConditionalOrder = createAsyncThunk( 'futures/withdrawAccountKeeperBalance', async (amount, { getState, dispatch, extra: { sdk } }) => { - const crossMarginAccount = selectCrossMarginAccount(getState()) + const crossMarginAccount = selectSmartMarginAccount(getState()) try { if (!crossMarginAccount) throw new Error('No smart margin account') dispatch( @@ -1719,7 +1359,7 @@ export const withdrawAccountKeeperBalance = createAsyncThunk Promise, - type: FuturesTransactionType, - config: { - getState: () => RootState - dispatch: AppDispatch - } -) => { - const { app } = config.getState() - const ethPrice = selectLatestEthPrice(config.getState()) - - try { - const limit = await gasLimitEstimate() - const estimate = getTransactionPrice(unserializeGasPrice(app.gasPrice), limit, ethPrice, wei(0)) - - config.dispatch( - setTransactionEstimate({ - type: type, - limit: limit.toString(), - cost: estimate?.toString() ?? '0', - }) - ) - } catch (err) { - config.dispatch( - setTransactionEstimate({ - type: type, - limit: '0', - cost: '0', - error: err.message, - }) - ) - throw err - } -} - -const submitCMTransferTransaction = async ( +const submitSMTransferTransaction = async ( dispatch: AppDispatch, sdk: KwentaSDK, type: 'withdraw_cross_margin' | 'deposit_cross_margin', @@ -1782,12 +1387,12 @@ const submitCMTransferTransaction = async ( try { const tx = type === 'deposit_cross_margin' - ? await sdk.futures.depositCrossMarginAccount(account, amount) - : await sdk.futures.withdrawCrossMarginAccount(account, amount) + ? await sdk.futures.depositSmartMarginAccount(account, amount) + : await sdk.futures.withdrawSmartMarginAccount(account, amount) await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchCrossMarginBalanceInfo()) + dispatch(fetchSmartMarginBalanceInfo()) dispatch(setOpenModal(null)) - dispatch(refetchPosition('cross_margin')) + dispatch(refetchPosition(FuturesMarginType.SMART_MARGIN)) dispatch(fetchBalances()) dispatch(fetchMarginTransfers()) return tx @@ -1802,7 +1407,7 @@ export const updateStopLossAndTakeProfit = createAsyncThunk { const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectCrossMarginAccount(getState()) + const account = selectSmartMarginAccount(getState()) const wallet = selectWallet(getState()) const { stopLossPrice, takeProfitPrice } = selectSlTpModalInputs(getState()) const keeperDeposit = selectSmartMarginKeeperDeposit(getState()) diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index fbb6785ae8..9b8accf0e5 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -3,25 +3,28 @@ import { fetchStakingData } from 'state/staking/actions' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { - fetchCrossMarginAccount, - fetchCrossMarginAccountData, + fetchSmartMarginAccount, + fetchSmartMarginAccountData, fetchFuturesPositionHistory, - fetchIsolatedMarginAccountData, - fetchCrossMarginOpenOrders, + fetchSmartMarginOpenOrders, fetchSharedFuturesData, - fetchIsolatedOpenOrders, fetchMarginTransfers, fetchAllTradesForAccount, fetchCombinedMarginTransfers, } from './actions' import { - selectCrossMarginAccount, - selectFuturesSupportedNetwork, + selectSmartMarginAccount, + selectSmartMarginSupportedNetwork, selectFuturesType, selectMarkets, } from './selectors' -import { fetchPerpsV3Account } from 'state/perpsV3/actions' -import { selectPerpsV3SupportedNetwork } from 'state/perpsV3/selectors' +import { + fetchCrossMarginOpenOrders, + fetchCrossMarginPositions, + fetchPerpsV3Account, +} from 'state/crossMargin/actions' +import { selectCrossMarginSupportedNetwork } from 'state/crossMargin/selectors' +import { FuturesMarginType } from '@kwenta/sdk/types' // TODO: Optimise polling and queries @@ -29,20 +32,26 @@ export const usePollMarketFuturesData = () => { const networkId = useAppSelector(selectNetwork) const markets = useAppSelector(selectMarkets) const wallet = useAppSelector(selectWallet) - const crossMarginAddress = useAppSelector(selectCrossMarginAccount) + const smartMarginAddress = useAppSelector(selectSmartMarginAccount) + const selectedAccountType = useAppSelector(selectFuturesType) - const networkSupportsCrossMargin = useAppSelector(selectFuturesSupportedNetwork) - const networkSupportsFutures = useAppSelector(selectFuturesSupportedNetwork) - const networkSupportsPerpsV3 = useAppSelector(selectPerpsV3SupportedNetwork) + const networkSupportsSmartMargin = useAppSelector(selectSmartMarginSupportedNetwork) + const networkSupportsCrossMargin = useAppSelector(selectCrossMarginSupportedNetwork) - useFetchAction(fetchCrossMarginAccount, { + useFetchAction(fetchSmartMarginAccount, { dependencies: [networkId, wallet], - disabled: !wallet || !networkSupportsCrossMargin || selectedAccountType !== 'cross_margin', + disabled: + !wallet || + !networkSupportsSmartMargin || + selectedAccountType !== FuturesMarginType.SMART_MARGIN, }) useFetchAction(fetchPerpsV3Account, { dependencies: [networkId, wallet], - disabled: !wallet || !networkSupportsPerpsV3 || selectedAccountType !== 'isolated_margin', // TODO: Change to perps v3 + disabled: + !wallet || + !networkSupportsCrossMargin || + selectedAccountType !== FuturesMarginType.CROSS_MARGIN, }) useFetchAction(fetchStakingData, { dependencies: [networkId, wallet] }) @@ -50,37 +59,40 @@ export const usePollMarketFuturesData = () => { usePollAction('fetchSharedFuturesData', fetchSharedFuturesData, { dependencies: [networkId], intervalTime: 60000, - disabled: !networkSupportsFutures, + disabled: !networkSupportsSmartMargin, }) - usePollAction('fetchIsolatedMarginAccountData', fetchIsolatedMarginAccountData, { + usePollAction('fetchCrossMarginPositions', fetchCrossMarginPositions, { intervalTime: 30000, dependencies: [wallet, markets.length], - disabled: !wallet || !markets.length || selectedAccountType !== 'isolated_margin', + disabled: !wallet || !markets.length || selectedAccountType !== FuturesMarginType.CROSS_MARGIN, }) - usePollAction('fetchCrossMarginAccountData', fetchCrossMarginAccountData, { + usePollAction('fetchCrossMarginAccountData', fetchSmartMarginAccountData, { intervalTime: 30000, - dependencies: [markets.length, crossMarginAddress], - disabled: !markets.length || !crossMarginAddress || selectedAccountType !== 'cross_margin', + dependencies: [markets.length, smartMarginAddress], + disabled: + !markets.length || + !smartMarginAddress || + selectedAccountType !== FuturesMarginType.SMART_MARGIN, }) usePollAction('fetchFuturesPositionHistory', fetchFuturesPositionHistory, { intervalTime: 15000, - dependencies: [wallet, crossMarginAddress], + dependencies: [wallet, smartMarginAddress], disabled: !wallet, }) - usePollAction('fetchIsolatedOpenOrders', fetchIsolatedOpenOrders, { + usePollAction('fetchCrossMarginOpenOrders', fetchCrossMarginOpenOrders, { dependencies: [networkId, wallet, markets.length, selectedAccountType], intervalTime: 10000, - disabled: !wallet || selectedAccountType !== 'isolated_margin', + disabled: !wallet || selectedAccountType !== FuturesMarginType.CROSS_MARGIN, }) - usePollAction('fetchCrossMarginOpenOrders', fetchCrossMarginOpenOrders, { - dependencies: [networkId, wallet, markets.length, crossMarginAddress], + usePollAction('fetchSmartMarginOpenOrders', fetchSmartMarginOpenOrders, { + dependencies: [networkId, wallet, markets.length, smartMarginAddress], intervalTime: 10000, - disabled: !wallet || selectedAccountType !== 'cross_margin', + disabled: !wallet || selectedAccountType !== FuturesMarginType.SMART_MARGIN, }) usePollAction('fetchAllTradesForAccount', fetchAllTradesForAccount, { - dependencies: [networkId, wallet, crossMarginAddress, selectedAccountType], + dependencies: [networkId, wallet, smartMarginAddress, selectedAccountType], intervalTime: 30000, disabled: !wallet, }) @@ -90,8 +102,8 @@ export const usePollDashboardFuturesData = () => { const networkId = useAppSelector(selectNetwork) const markets = useAppSelector(selectMarkets) const wallet = useAppSelector(selectWallet) - const crossMarginAddress = useAppSelector(selectCrossMarginAccount) - const networkSupportsCrossMargin = useAppSelector(selectFuturesSupportedNetwork) + const crossMarginAddress = useAppSelector(selectSmartMarginAccount) + const networkSupportsCrossMargin = useAppSelector(selectSmartMarginSupportedNetwork) const selectedAccountType = useAppSelector(selectFuturesType) useFetchAction(fetchCombinedMarginTransfers, { @@ -99,9 +111,12 @@ export const usePollDashboardFuturesData = () => { disabled: !wallet, }) - useFetchAction(fetchCrossMarginAccount, { + useFetchAction(fetchSmartMarginAccount, { dependencies: [networkId, wallet], - disabled: !wallet || !networkSupportsCrossMargin || selectedAccountType === 'isolated_margin', + disabled: + !wallet || + !networkSupportsCrossMargin || + selectedAccountType === FuturesMarginType.CROSS_MARGIN, }) usePollAction('fetchSharedFuturesData', fetchSharedFuturesData, { @@ -109,16 +124,18 @@ export const usePollDashboardFuturesData = () => { intervalTime: 60000, }) - usePollAction('fetchIsolatedMarginAccountData', fetchIsolatedMarginAccountData, { + usePollAction('fetchSmartMarginAccountData', fetchSmartMarginAccountData, { intervalTime: 30000, dependencies: [wallet, markets.length, networkId], disabled: !markets.length || !wallet, }) - usePollAction('fetchCrossMarginAccountData', fetchCrossMarginAccountData, { - intervalTime: 30000, - dependencies: [wallet, markets.length, networkId, crossMarginAddress], - disabled: !markets.length || !crossMarginAddress, - }) + + // TODO: Fetch + // usePollAction('fetchCrossMarginAccountData', fetchCrossM, { + // intervalTime: 30000, + // dependencies: [wallet, markets.length, networkId, crossMarginAddress], + // disabled: !markets.length || !crossMarginAddress, + // }) usePollAction('fetchAllTradesForAccount', fetchAllTradesForAccount, { dependencies: [networkId, wallet, selectedAccountType, crossMarginAddress], intervalTime: 30000, diff --git a/packages/app/src/state/futures/reducer.ts b/packages/app/src/state/futures/reducer.ts index 29ffbe16c0..8132d1dd06 100644 --- a/packages/app/src/state/futures/reducer.ts +++ b/packages/app/src/state/futures/reducer.ts @@ -2,7 +2,6 @@ import { Period } from '@kwenta/sdk/constants' import { NetworkId, SmartMarginOrderType, - FuturesAccountType, FuturesMarketAsset, FuturesMarketKey, FuturesPotentialTradeDetails, @@ -22,44 +21,37 @@ import { SUCCESS_STATUS, ZERO_CM_FEES, ZERO_STATE_CM_ACCOUNT, - ZERO_STATE_ISOLATED_ACCOUNT, ZERO_STATE_TRADE_INPUTS, } from 'state/constants' -import { accountType } from 'state/helpers' import { FetchStatus } from 'state/types' import { - fetchCrossMarginBalanceInfo, - fetchCrossMarginPositions, - fetchIsolatedMarginPositions, + fetchSmartMarginBalanceInfo, + fetchSmartMarginPositions, fetchMarkets, fetchDailyVolumes, refetchPosition, - fetchCrossMarginOpenOrders, - fetchIsolatedMarginTradePreview, + fetchSmartMarginOpenOrders, fetchCrossMarginTradePreview, - fetchCrossMarginAccount, + fetchSmartMarginAccount, fetchFuturesPositionHistory, fetchPositionHistoryForTrader, fetchTradesForSelectedMarket, fetchAllTradesForAccount, - fetchIsolatedOpenOrders, fetchMarginTransfers, fetchCombinedMarginTransfers, fetchFundingRatesHistory, } from './actions' import { - CrossMarginAccountData, - CrossMarginState, - CrossMarginTradeFees, + SmartMarginAccountData, + SmartMarginState, EditPositionInputs, InputCurrencyDenomination, - IsolatedAccountData, TradeSizeInputs, FuturesState, - TransactionEstimationPayload, - TransactionEstimations, PreviewAction, + AppFuturesMarginType, + SmartMarginTradeFees, } from './types' export const FUTURES_INITIAL_STATE: FuturesState = { @@ -87,24 +79,20 @@ export const FUTURES_INITIAL_STATE: FuturesState = { }, queryStatuses: { markets: DEFAULT_QUERY_STATUS, - crossMarginBalanceInfo: DEFAULT_QUERY_STATUS, + smartMarginBalanceInfo: DEFAULT_QUERY_STATUS, dailyVolumes: DEFAULT_QUERY_STATUS, - crossMarginPositions: DEFAULT_QUERY_STATUS, - crossMarginPositionHistory: DEFAULT_QUERY_STATUS, - isolatedPositions: DEFAULT_QUERY_STATUS, - isolatedPositionHistory: DEFAULT_QUERY_STATUS, + smartMarginPositions: DEFAULT_QUERY_STATUS, + smartMarginPositionHistory: DEFAULT_QUERY_STATUS, openOrders: DEFAULT_QUERY_STATUS, - isolatedTradePreview: DEFAULT_QUERY_STATUS, - crossMarginTradePreview: DEFAULT_QUERY_STATUS, - crossMarginAccount: DEFAULT_QUERY_STATUS, + smartMarginTradePreview: DEFAULT_QUERY_STATUS, + smartMarginAccount: DEFAULT_QUERY_STATUS, positionHistory: DEFAULT_QUERY_STATUS, selectedTraderPositionHistory: DEFAULT_QUERY_STATUS, trades: DEFAULT_QUERY_STATUS, marginTransfers: DEFAULT_QUERY_STATUS, historicalFundingRates: DEFAULT_QUERY_STATUS, }, - transactionEstimations: {} as TransactionEstimations, - crossMargin: { + smartMargin: { accounts: DEFAULT_MAP_BY_NETWORK, selectedMarketAsset: FuturesMarketAsset.sETH, selectedMarketKey: FuturesMarketKey.sETHPERP, @@ -113,7 +101,7 @@ export const FUTURES_INITIAL_STATE: FuturesState = { orderFeeCap: '0', leverageInput: '0', selectedLeverageByAsset: {}, - showCrossMarginOnboard: false, + showSmartMarginOnboard: false, tradeInputs: ZERO_STATE_TRADE_INPUTS, sltpModalInputs: { stopLossPrice: '', @@ -123,14 +111,6 @@ export const FUTURES_INITIAL_STATE: FuturesState = { nativeSizeDelta: '', marginDelta: '', }, - closePositionOrderInputs: { - orderType: 'market', - nativeSizeDelta: '', - price: { - value: '', - invalidLabel: undefined, - }, - }, fees: ZERO_CM_FEES, previews: { trade: null, @@ -146,32 +126,16 @@ export const FUTURES_INITIAL_STATE: FuturesState = { invalidLabel: undefined, }, }, - isolatedMargin: { - accounts: DEFAULT_MAP_BY_NETWORK, - selectedMarketAsset: FuturesMarketAsset.sETH, - selectedMarketKey: FuturesMarketKey.sETHPERP, - leverageSide: PositionSide.LONG, + tradePanelDrawerOpen: false, + historicalFundingRates: {}, + closePositionOrderInputs: { orderType: 'market', - previews: { - trade: null, - close: null, - edit: null, - }, - closePositionOrderInputs: { - orderType: 'market', - nativeSizeDelta: '', - }, - previewDebounceCount: 0, - tradeInputs: ZERO_STATE_TRADE_INPUTS, - editPositionInputs: { - nativeSizeDelta: '', - marginDelta: '', + nativeSizeDelta: '', + price: { + value: '', + invalidLabel: undefined, }, - tradeFee: '0', - leverageInput: '0', }, - tradePanelDrawerOpen: false, - historicalFundingRates: {}, } const futuresSlice = createSlice({ @@ -179,87 +143,67 @@ const futuresSlice = createSlice({ initialState: FUTURES_INITIAL_STATE, reducers: { setMarketAsset: (state, action) => { - state[accountType(state.selectedType)].selectedMarketAsset = action.payload - state[accountType(state.selectedType)].selectedMarketKey = - MarketKeyByAsset[action.payload as FuturesMarketAsset] - state[accountType(state.selectedType)].tradeInputs = ZERO_STATE_TRADE_INPUTS - state[accountType(state.selectedType)].selectedMarketAsset = action.payload + state.smartMargin.selectedMarketAsset = action.payload + state.smartMargin.selectedMarketKey = MarketKeyByAsset[action.payload as FuturesMarketAsset] + state.smartMargin.tradeInputs = ZERO_STATE_TRADE_INPUTS + state.smartMargin.selectedMarketAsset = action.payload }, setOrderType: (state, action: PayloadAction) => { - state[accountType(state.selectedType)].orderType = action.payload + state.smartMargin.orderType = action.payload }, setClosePositionOrderType: (state, action: PayloadAction) => { - state.crossMargin.closePositionOrderInputs.orderType = action.payload + state.closePositionOrderInputs.orderType = action.payload }, setClosePositionSizeDelta: (state, action: PayloadAction) => { - if (state.selectedType === 'cross_margin') { - state.crossMargin.closePositionOrderInputs.nativeSizeDelta = action.payload - } else { - state.isolatedMargin.closePositionOrderInputs.nativeSizeDelta = action.payload - } + state.closePositionOrderInputs.nativeSizeDelta = action.payload }, setClosePositionPrice: ( state, action: PayloadAction<{ value: string; invalidLabel: string | null | undefined }> ) => { - state.crossMargin.closePositionOrderInputs.price = action.payload + state.closePositionOrderInputs.price = action.payload }, setOrderFeeCap: (state, action) => { - state.crossMargin.orderFeeCap = action.payload + state.smartMargin.orderFeeCap = action.payload }, setLeverageSide: (state, action) => { - state[accountType(state.selectedType)].leverageSide = action.payload - }, - setCrossMarginLeverageForAsset: ( - state, - action: PayloadAction<{ marketKey: FuturesMarketKey; leverage: string }> - ) => { - state.crossMargin.selectedLeverageByAsset[action.payload.marketKey] = action.payload.leverage + state.smartMargin.leverageSide = action.payload }, - setCrossMarginMarginDelta: (state, action: PayloadAction) => { - state.crossMargin.marginDelta = action.payload + setSmartMarginMarginDelta: (state, action: PayloadAction) => { + state.smartMargin.marginDelta = action.payload }, - setCrossMarginTradeStopLoss: (state, action: PayloadAction) => { - state.crossMargin.tradeInputs.stopLossPrice = action.payload + setSmartMarginTradeStopLoss: (state, action: PayloadAction) => { + state.smartMargin.tradeInputs.stopLossPrice = action.payload }, - setCrossMarginTradeTakeProfit: (state, action: PayloadAction) => { - state.crossMargin.tradeInputs.takeProfitPrice = action.payload + setSmartMarginTradeTakeProfit: (state, action: PayloadAction) => { + state.smartMargin.tradeInputs.takeProfitPrice = action.payload }, setSLTPModalStopLoss: (state, action: PayloadAction) => { - state.crossMargin.sltpModalInputs.stopLossPrice = action.payload + state.smartMargin.sltpModalInputs.stopLossPrice = action.payload }, setSLTPModalTakeProfit: (state, action: PayloadAction) => { - state.crossMargin.sltpModalInputs.takeProfitPrice = action.payload + state.smartMargin.sltpModalInputs.takeProfitPrice = action.payload }, - setFuturesAccountType: (state, action) => { + setFuturesAccountType: (state, action: PayloadAction) => { state.selectedType = action.payload }, - setCrossMarginTradeInputs: (state, action: PayloadAction>) => { - state.crossMargin.tradeInputs = action.payload + setSmartMarginTradeInputs: (state, action: PayloadAction>) => { + state.smartMargin.tradeInputs = action.payload }, - setCrossMarginEditPositionInputs: ( + setSmartMarginEditPositionInputs: ( state, action: PayloadAction> ) => { - state.crossMargin.editPositionInputs = action.payload + state.smartMargin.editPositionInputs = action.payload }, - setCrossMarginOrderPrice: (state, action: PayloadAction) => { - state.crossMargin.orderPrice.price = action.payload + setSmartMarginOrderPrice: (state, action: PayloadAction) => { + state.smartMargin.orderPrice.price = action.payload }, - setCrossMarginOrderPriceInvalidLabel: ( + setSmartMarginOrderPriceInvalidLabel: ( state, action: PayloadAction ) => { - state.crossMargin.orderPrice.invalidLabel = action.payload - }, - setIsolatedMarginTradeInputs: (state, action: PayloadAction>) => { - state.isolatedMargin.tradeInputs = action.payload - }, - setIsolatedMarginEditPositionInputs: ( - state, - action: PayloadAction> - ) => { - state.isolatedMargin.editPositionInputs = action.payload + state.smartMargin.orderPrice.invalidLabel = action.payload }, setSelectedInputDenomination: (state, action: PayloadAction) => { state.selectedInputDenomination = action.payload @@ -267,17 +211,14 @@ const futuresSlice = createSlice({ setSelectedInputFundingRateHour: (state, action: PayloadAction) => { state.selectedInputHours = action.payload }, - setIsolatedMarginFee: (state, action: PayloadAction) => { - state.isolatedMargin.tradeFee = action.payload - }, setLeverageInput: (state, action: PayloadAction) => { - state[accountType(state.selectedType)].leverageInput = action.payload + state.smartMargin.leverageInput = action.payload }, - setCrossMarginFees: (state, action: PayloadAction>) => { - state.crossMargin.fees = action.payload + setSmartMarginFees: (state, action: PayloadAction>) => { + state.smartMargin.fees = action.payload }, setKeeperDeposit: (state, action: PayloadAction) => { - state.crossMargin.fees.keeperEthDeposit = action.payload + state.smartMargin.fees.keeperEthDeposit = action.payload }, handlePreviewError: ( futuresState, @@ -288,25 +229,24 @@ const futuresSlice = createSlice({ previewType: PreviewAction }> ) => { - const selectedAccountType = futuresState.selectedType const message = Object.values(ORDER_PREVIEW_ERRORS).includes(payload.error) ? payload.error : 'Failed to get trade preview' - futuresState.queryStatuses.crossMarginTradePreview = { + futuresState.queryStatuses.smartMarginTradePreview = { status: FetchStatus.Error, error: message, } - futuresState[accountType(selectedAccountType)].previews[payload.previewType] = null + futuresState.smartMargin.previews[payload.previewType] = null }, - setCrossMarginAccount: ( + setSmartMarginAccount: ( state, action: PayloadAction<{ wallet: string; account: string; network: NetworkId }> ) => { const { account, wallet, network } = action.payload - if (!state.crossMargin.accounts[network]?.[wallet]?.account) { - state.crossMargin.accounts[network] = { - ...state.crossMargin.accounts[network], + if (!state.smartMargin.accounts[network]?.[wallet]?.account) { + state.smartMargin.accounts[network] = { + ...state.smartMargin.accounts[network], [wallet]: { account: account, ...ZERO_STATE_CM_ACCOUNT, @@ -314,39 +254,15 @@ const futuresSlice = createSlice({ } } }, - setTransactionEstimate: (state, action: PayloadAction) => { - state.transactionEstimations[action.payload.type] = { - limit: action.payload.limit, - cost: action.payload.cost, - error: action.payload.error, - } - }, - setIsolatedTradePreview: ( - state, - { - payload, - }: PayloadAction<{ - preview: FuturesPotentialTradeDetails | null - type: PreviewAction - }> - ) => { - state.isolatedMargin.previews[payload.type] = payload.preview - }, clearAllTradePreviews: (state) => { - state.isolatedMargin.previews = { + state.smartMargin.previews = { edit: null, trade: null, close: null, } - state.crossMargin.previews = { - edit: null, - trade: null, - close: null, - } - state.queryStatuses.isolatedTradePreview = DEFAULT_QUERY_STATUS - state.queryStatuses.crossMarginTradePreview = DEFAULT_QUERY_STATUS + state.queryStatuses.smartMarginTradePreview = DEFAULT_QUERY_STATUS }, - setCrossMarginTradePreview: ( + setSmartMarginTradePreview: ( state, { payload, @@ -355,19 +271,16 @@ const futuresSlice = createSlice({ type: PreviewAction }> ) => { - state.crossMargin.previews[payload.type] = payload.preview + state.smartMargin.previews[payload.type] = payload.preview }, - setCrossMarginOrderCancelling: (state, { payload }: PayloadAction) => { - state.crossMargin.cancellingOrder = payload + setSmartMarginOrderCancelling: (state, { payload }: PayloadAction) => { + state.smartMargin.cancellingOrder = payload }, setSelectedTrader: (state, action: PayloadAction) => { state.leaderboard.selectedTrader = action.payload }, - incrementIsolatedPreviewCount: (state) => { - state.isolatedMargin.previewDebounceCount = state.isolatedMargin.previewDebounceCount + 1 - }, incrementCrossPreviewCount: (state) => { - state.crossMargin.previewDebounceCount = state.crossMargin.previewDebounceCount + 1 + state.smartMargin.previewDebounceCount = state.smartMargin.previewDebounceCount + 1 }, setSelectedPortfolioTimeframe: (state, action: PayloadAction) => { state.dashboard.selectedPortfolioTimeframe = action.payload @@ -400,22 +313,22 @@ const futuresSlice = createSlice({ } }) - // Cross margin overview - builder.addCase(fetchCrossMarginBalanceInfo.pending, (futuresState) => { - futuresState.queryStatuses.crossMarginBalanceInfo = LOADING_STATUS + // Smart margin overview + builder.addCase(fetchSmartMarginBalanceInfo.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginBalanceInfo = LOADING_STATUS }) - builder.addCase(fetchCrossMarginBalanceInfo.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.crossMarginBalanceInfo = SUCCESS_STATUS + builder.addCase(fetchSmartMarginBalanceInfo.fulfilled, (futuresState, action) => { + futuresState.queryStatuses.smartMarginBalanceInfo = SUCCESS_STATUS if (action.payload) { const { account, network, balanceInfo } = action.payload - const wallet = findWalletForAccount(futuresState.crossMargin, account, network) + const wallet = findWalletForAccount(futuresState.smartMargin, account, network) if (wallet) { - updateFuturesAccount(futuresState, 'cross_margin', network, wallet, { balanceInfo }) + updateSmartMarginAccount(futuresState, network, wallet, { balanceInfo }) } } }) - builder.addCase(fetchCrossMarginBalanceInfo.rejected, (futuresState) => { - futuresState.queryStatuses.crossMarginBalanceInfo = { + builder.addCase(fetchSmartMarginBalanceInfo.rejected, (futuresState) => { + futuresState.queryStatuses.smartMarginBalanceInfo = { status: FetchStatus.Error, error: 'Failed to fetch balance info', } @@ -444,20 +357,11 @@ const futuresSlice = createSlice({ futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS if (payload) { const { context, marginTransfers, idleTransfers } = payload - const newAccountData = - context.type === 'isolated_margin' - ? { marginTransfers } - : { - marginTransfers, - idleTransfers, - } - updateFuturesAccount( - futuresState, - context.type, - context.network, - context.wallet, - newAccountData - ) + const newAccountData = { + marginTransfers, + idleTransfers, + } + updateSmartMarginAccount(futuresState, context.network, context.wallet, newAccountData) } }) builder.addCase(fetchMarginTransfers.rejected, (futuresState) => { @@ -474,28 +378,13 @@ const futuresSlice = createSlice({ builder.addCase(fetchCombinedMarginTransfers.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS if (payload) { - const { context, isolatedMarginTransfers, smartMarginTransfers, idleTransfers } = payload - const newIsolatedAccountData = { marginTransfers: isolatedMarginTransfers } + const { context, smartMarginTransfers, idleTransfers } = payload const newSmartAccountData = { marginTransfers: smartMarginTransfers, idleTransfers, } - updateFuturesAccount( - futuresState, - 'isolated_margin', - context.network, - context.wallet, - newIsolatedAccountData - ) - - updateFuturesAccount( - futuresState, - 'smart_margin', - context.network, - context.wallet, - newSmartAccountData - ) + updateSmartMarginAccount(futuresState, context.network, context.wallet, newSmartAccountData) } }) builder.addCase(fetchCombinedMarginTransfers.rejected, (futuresState) => { @@ -506,38 +395,20 @@ const futuresSlice = createSlice({ }) // Cross margin positions - builder.addCase(fetchCrossMarginPositions.pending, (futuresState) => { - futuresState.queryStatuses.crossMarginPositions = LOADING_STATUS + builder.addCase(fetchSmartMarginPositions.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginPositions = LOADING_STATUS }) - builder.addCase(fetchCrossMarginPositions.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.crossMarginPositions = SUCCESS_STATUS + builder.addCase(fetchSmartMarginPositions.fulfilled, (futuresState, action) => { + futuresState.queryStatuses.smartMarginPositions = SUCCESS_STATUS if (!action.payload) return const { account, positions, network } = action.payload - const wallet = findWalletForAccount(futuresState.crossMargin, account, network) + const wallet = findWalletForAccount(futuresState.smartMargin, account, network) if (wallet) { - updateFuturesAccount(futuresState, 'cross_margin', network, wallet, { positions }) - } - }) - builder.addCase(fetchCrossMarginPositions.rejected, (futuresState) => { - futuresState.queryStatuses.crossMarginPositions = { - status: FetchStatus.Error, - error: 'Failed to fetch positions', - } - }) - - // Isolated margin positions - builder.addCase(fetchIsolatedMarginPositions.pending, (futuresState) => { - futuresState.queryStatuses.isolatedPositions = LOADING_STATUS - }) - builder.addCase(fetchIsolatedMarginPositions.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.isolatedPositions = SUCCESS_STATUS - if (payload) { - const { positions, wallet, network } = payload - updateFuturesAccount(futuresState, 'isolated_margin', network, wallet, { positions }) + updateSmartMarginAccount(futuresState, network, wallet, { positions }) } }) - builder.addCase(fetchIsolatedMarginPositions.rejected, (futuresState) => { - futuresState.queryStatuses.isolatedPositions = { + builder.addCase(fetchSmartMarginPositions.rejected, (futuresState) => { + futuresState.queryStatuses.smartMarginPositions = { status: FetchStatus.Error, error: 'Failed to fetch positions', } @@ -547,12 +418,12 @@ const futuresSlice = createSlice({ builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { if (payload) { const { position, wallet, networkId } = payload - const account = futuresState.isolatedMargin.accounts[networkId]?.[wallet] + const account = futuresState.smartMargin.accounts[networkId]?.[wallet] const existingPositions = account?.positions ?? [] const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) existingPositions[index] = position - futuresState.isolatedMargin.accounts[networkId][wallet] = { + futuresState.smartMargin.accounts[networkId][wallet] = { ...account, positions: existingPositions, } @@ -560,92 +431,56 @@ const futuresSlice = createSlice({ }) // Fetch Cross Margin Open Orders - builder.addCase(fetchCrossMarginOpenOrders.pending, (futuresState) => { + builder.addCase(fetchSmartMarginOpenOrders.pending, (futuresState) => { futuresState.queryStatuses.openOrders = LOADING_STATUS }) - builder.addCase(fetchCrossMarginOpenOrders.fulfilled, (futuresState, action) => { + builder.addCase(fetchSmartMarginOpenOrders.fulfilled, (futuresState, action) => { futuresState.queryStatuses.openOrders = SUCCESS_STATUS if (!action.payload) return const { network, account, delayedOrders, conditionalOrders } = action.payload - const wallet = findWalletForAccount(futuresState.crossMargin, account, network) + const wallet = findWalletForAccount(futuresState.smartMargin, account, network) if (wallet) { - updateFuturesAccount(futuresState, 'cross_margin', network, wallet, { + updateSmartMarginAccount(futuresState, network, wallet, { conditionalOrders, delayedOrders, }) } }) - builder.addCase(fetchCrossMarginOpenOrders.rejected, (futuresState) => { + builder.addCase(fetchSmartMarginOpenOrders.rejected, (futuresState) => { futuresState.queryStatuses.openOrders = { status: FetchStatus.Error, error: 'Failed to fetch open orders for cross margin account', } }) - // Fetch Isolated Open Orders - builder.addCase(fetchIsolatedOpenOrders.pending, (futuresState) => { - futuresState.queryStatuses.openOrders = LOADING_STATUS - }) - builder.addCase(fetchIsolatedOpenOrders.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.openOrders = SUCCESS_STATUS - if (payload) { - const { orders: delayedOrders, wallet, networkId } = payload - updateFuturesAccount(futuresState, 'isolated_margin', networkId, wallet, { - delayedOrders, - }) - } - }) - builder.addCase(fetchIsolatedOpenOrders.rejected, (futuresState) => { - futuresState.queryStatuses.openOrders = { - status: FetchStatus.Error, - error: 'Failed to fetch open orders for isolated margin', - } - }) - - // Fetch Isolated Margin Trade Preview - builder.addCase(fetchIsolatedMarginTradePreview.pending, (futuresState) => { - futuresState.queryStatuses.isolatedTradePreview = LOADING_STATUS - }) - builder.addCase(fetchIsolatedMarginTradePreview.fulfilled, (futuresState, { payload }) => { - futuresState.isolatedMargin.previews[payload.type] = payload.preview - futuresState.queryStatuses.isolatedTradePreview = SUCCESS_STATUS - }) - builder.addCase(fetchIsolatedMarginTradePreview.rejected, (futuresState) => { - futuresState.queryStatuses.isolatedTradePreview = { - status: FetchStatus.Error, - error: 'Failed to fetch trade preview', - } - futuresState.isolatedMargin.previews.trade = null - }) - // Fetch Cross Margin Trade Preview builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { - futuresState.queryStatuses.crossMarginTradePreview = LOADING_STATUS + futuresState.queryStatuses.smartMarginTradePreview = LOADING_STATUS }) builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { - futuresState.crossMargin.previews[payload.type] = payload.preview - futuresState.queryStatuses.crossMarginTradePreview = SUCCESS_STATUS + futuresState.smartMargin.previews[payload.type] = payload.preview + futuresState.queryStatuses.smartMarginTradePreview = SUCCESS_STATUS }) // Fetch cross margin account - builder.addCase(fetchCrossMarginAccount.pending, (futuresState) => { - futuresState.queryStatuses.crossMarginAccount = LOADING_STATUS + builder.addCase(fetchSmartMarginAccount.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginAccount = LOADING_STATUS }) - builder.addCase(fetchCrossMarginAccount.fulfilled, (futuresState, action) => { + builder.addCase(fetchSmartMarginAccount.fulfilled, (futuresState, action) => { if (action.payload) { const { network, account, wallet } = action.payload - futuresState.crossMargin.accounts[network] = { - ...futuresState.crossMargin.accounts[network], + futuresState.smartMargin.accounts[network] = { + ...futuresState.smartMargin.accounts[network], [wallet]: { account: account, ...ZERO_STATE_CM_ACCOUNT, }, } } - futuresState.queryStatuses.crossMarginAccount = SUCCESS_STATUS + futuresState.queryStatuses.smartMarginAccount = SUCCESS_STATUS }) - builder.addCase(fetchCrossMarginAccount.rejected, (futuresState) => { - futuresState.queryStatuses.crossMarginAccount = { + builder.addCase(fetchSmartMarginAccount.rejected, (futuresState) => { + futuresState.queryStatuses.smartMarginAccount = { status: FetchStatus.Error, error: 'Failed to fetch cross margin account', } @@ -659,7 +494,7 @@ const futuresSlice = createSlice({ futuresState.queryStatuses.positionHistory = SUCCESS_STATUS if (payload) { const { accountType: type, history: positionHistory, networkId, wallet } = payload - updateFuturesAccount(futuresState, type, networkId, wallet, { + updateSmartMarginAccount(futuresState, networkId, wallet, { positionHistory, }) } @@ -697,8 +532,8 @@ const futuresSlice = createSlice({ builder.addCase(fetchTradesForSelectedMarket.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.trades = SUCCESS_STATUS if (payload) { - const { accountType: type, trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, type, networkId, wallet, trades) + const { trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, networkId, wallet, trades) } }) builder.addCase(fetchTradesForSelectedMarket.rejected, (futuresState) => { @@ -717,8 +552,8 @@ const futuresSlice = createSlice({ builder.addCase(fetchAllTradesForAccount.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.trades = SUCCESS_STATUS if (payload) { - const { accountType: type, trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, type, networkId, wallet, trades) + const { trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, networkId, wallet, trades) } }) builder.addCase(fetchAllTradesForAccount.rejected, (futuresState) => { @@ -753,30 +588,23 @@ export const { setOrderFeeCap, setLeverageSide, setFuturesAccountType, - setCrossMarginTradeInputs, - setCrossMarginAccount, - setCrossMarginMarginDelta, - setCrossMarginTradeStopLoss, - setCrossMarginTradeTakeProfit, - setCrossMarginOrderPrice, - setCrossMarginOrderPriceInvalidLabel, - setTransactionEstimate, + setSmartMarginTradeInputs, + setSmartMarginAccount, + setSmartMarginMarginDelta, + setSmartMarginTradeStopLoss, + setSmartMarginTradeTakeProfit, + setSmartMarginOrderPrice, + setSmartMarginOrderPriceInvalidLabel, setLeverageInput, - setCrossMarginFees, + setSmartMarginFees, setKeeperDeposit, - setIsolatedMarginTradeInputs, - setIsolatedTradePreview, clearAllTradePreviews, - setIsolatedMarginFee, - setCrossMarginTradePreview, - setCrossMarginLeverageForAsset, - setCrossMarginOrderCancelling, + setSmartMarginTradePreview, + setSmartMarginOrderCancelling, setSelectedTrader, setSelectedInputDenomination, setSelectedInputFundingRateHour, - setCrossMarginEditPositionInputs, - setIsolatedMarginEditPositionInputs, - incrementIsolatedPreviewCount, + setSmartMarginEditPositionInputs, incrementCrossPreviewCount, setSelectedPortfolioTimeframe, setSLTPModalStopLoss, @@ -787,7 +615,7 @@ export const { } = futuresSlice.actions const findWalletForAccount = ( - crossMarginState: CrossMarginState, + crossMarginState: SmartMarginState, account: string, network: NetworkId ) => { @@ -799,45 +627,36 @@ const findWalletForAccount = ( const mergeTradesForAccount = ( futuresState: FuturesState, - type: FuturesAccountType, network: NetworkId, wallet: string, trades: FuturesTrade[] ) => { - const existingTrades = futuresState[accountType(type)].accounts[network]?.[wallet]?.trades ?? [] + const existingTrades = futuresState.smartMargin.accounts[network]?.[wallet]?.trades ?? [] trades.forEach((t) => { if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { existingTrades.push(t) } }) existingTrades.sort((a, b) => b.timestamp - a.timestamp) - updateFuturesAccount(futuresState, type, network, wallet, { + updateSmartMarginAccount(futuresState, network, wallet, { trades: trades, }) } -const updateFuturesAccount = ( +export const updateSmartMarginAccount = ( futuresState: FuturesState, - type: FuturesAccountType, network: NetworkId, wallet: string, - newAccountData: Partial + newAccountData: Partial ) => { - const updatedAccount = - type === 'isolated_margin' - ? { - ...ZERO_STATE_ISOLATED_ACCOUNT, - ...futuresState.isolatedMargin.accounts[network]?.[wallet], - ...newAccountData, - } - : { - ...ZERO_STATE_CM_ACCOUNT, - ...futuresState.crossMargin.accounts[network]?.[wallet], - ...newAccountData, - } + const updatedAccount = { + ...ZERO_STATE_CM_ACCOUNT, + ...futuresState.smartMargin.accounts[network]?.[wallet], + ...newAccountData, + } - futuresState[accountType(type)].accounts[network] = { - ...futuresState[accountType(type)].accounts[network], + futuresState.smartMargin.accounts[network] = { + ...futuresState.smartMargin.accounts[network], [wallet]: updatedAccount, } } diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index c5676faf77..a53f0f0bd4 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -4,6 +4,7 @@ import { ConditionalOrderTypeEnum, FuturesPosition, PositionSide, + FuturesMarginType, } from '@kwenta/sdk/types' import { truncateTimestamp, @@ -19,9 +20,8 @@ import Wei, { wei } from '@synthetixio/wei' import { DEFAULT_DELAYED_CANCEL_BUFFER, DEFAULT_LEVERAGE } from 'constants/defaults' import { ETH_UNIT } from 'constants/network' -import { FuturesAccountTypes } from 'queries/futures/types' import { selectSusdBalance } from 'state/balances/selectors' -import { accountType, deserializeWeiObject } from 'state/helpers' +import { deserializeWeiObject } from 'state/helpers' import { selectOffchainPricesInfo, selectOnChainPricesInfo, @@ -52,18 +52,26 @@ import { MarkPriceInfos, PortfolioValues, SmartPerpsPortfolio, - IsolatedPerpsPortfolio, + CrossPerpsPortfolio, } from './types' -import { selectV3Markets } from 'state/perpsV3/selectors' +import { + selectAllCrossMarginTrades, + selectCrossMarginAccountData, + selectCrossMarginMarginTransfers, + selectCrossMarginPositionHistory, + selectCrossMarginPositions, + selectCrossMarginTradeInputs, + selectV3Markets, +} from 'state/crossMargin/selectors' export const selectFuturesType = (state: RootState) => state.futures.selectedType -export const selectCrossMarginAccount = createSelector( +export const selectSmartMarginAccount = createSelector( selectWallet, selectNetwork, - (state: RootState) => state.futures.crossMargin, - (wallet, network, crossMargin) => { - return wallet ? crossMargin.accounts[network]?.[wallet]?.account : undefined + (state: RootState) => state.futures.smartMargin, + (wallet, network, smartMargin) => { + return wallet ? smartMargin.accounts[network]?.[wallet]?.account : undefined } ) @@ -71,27 +79,27 @@ export const selectQueryStatuses = (state: RootState) => state.futures.queryStat export const selectMarketsQueryStatus = (state: RootState) => state.futures.queryStatuses.markets -export const selectCMAccountQueryStatus = (state: RootState) => - state.futures.queryStatuses.crossMarginAccount +export const selectSmartMarginAccountQueryStatus = (state: RootState) => + state.futures.queryStatuses.smartMarginAccount export const selectLeverageInput = createSelector( (state: RootState) => state.futures, selectFuturesType, - (futures, type) => futures[accountType(type)].leverageInput + (futures, type) => futures.smartMargin.leverageInput ) -export const selectCrossMarginMarginDelta = createSelector( +export const selectSmartMarginMarginDelta = createSelector( (state: RootState) => state.futures, - (futures) => wei(futures.crossMargin.marginDelta || 0) + (futures) => wei(futures.smartMargin.marginDelta || 0) ) export const selectMarginDeltaInputValue = (state: RootState) => - state.futures.crossMargin.marginDelta + state.futures.smartMargin.marginDelta -export const selectFuturesSupportedNetwork = (state: RootState) => +export const selectSmartMarginSupportedNetwork = (state: RootState) => state.wallet.networkId === 10 || state.wallet.networkId === 420 -export const selectShowCrossMarginOnboard = (state: RootState) => +export const selectShowSmartMarginOnboard = (state: RootState) => state.app.showModal === 'futures_smart_margin_onboard' export const selectEditPositionModalMarket = (state: RootState) => @@ -101,47 +109,36 @@ export const selectSelectedTrader = (state: RootState) => state.futures.leaderbo export const selectShowHistory = (state: RootState) => !!state.futures.preferences.showHistory -export const selectCrossMarginAccountData = createSelector( - selectWallet, - selectNetwork, - selectFuturesSupportedNetwork, - (state: RootState) => state.futures.crossMargin, - (wallet, network, supportedNetwork, crossMargin) => { - return wallet && supportedNetwork ? crossMargin.accounts[network][wallet] : null - } -) - -export const selectIsolatedAccountData = createSelector( +export const selectSmartMarginAccountData = createSelector( selectWallet, selectNetwork, - selectFuturesSupportedNetwork, - (state: RootState) => state.futures.isolatedMargin, - (wallet, network, supportedNetwork, isolatedMargin) => { - return wallet && supportedNetwork ? isolatedMargin.accounts[network][wallet] : null + selectSmartMarginSupportedNetwork, + (state: RootState) => state.futures.smartMargin, + (wallet, network, supportedNetwork, smartMargin) => { + return wallet && supportedNetwork ? smartMargin.accounts[network][wallet] : null } ) export const selectAccountData = createSelector( selectFuturesType, + selectSmartMarginAccountData, selectCrossMarginAccountData, - selectIsolatedAccountData, - (type, crossAccountData, isolatedAccountData) => - type === 'cross_margin' ? crossAccountData : isolatedAccountData + (type, smartAccountData, crossAccountData) => + type === FuturesMarginType.SMART_MARGIN ? smartAccountData : crossAccountData ) -export const selectCMBalance = createSelector(selectCrossMarginAccountData, (account) => +export const selectCMBalance = createSelector(selectSmartMarginAccountData, (account) => wei(account?.balanceInfo.freeMargin || 0) ) export const selectMarketKey = createSelector( - (state: RootState) => state.futures[accountType(state.futures.selectedType)].selectedMarketAsset, + (state: RootState) => state.futures.smartMargin.selectedMarketAsset, (marketAsset) => MarketKeyByAsset[marketAsset] ) export const selectMarketAsset = createSelector( (state: RootState) => state.futures, - selectFuturesType, - (futures, marginType) => futures[accountType(marginType)].selectedMarketAsset + (futures) => futures.smartMargin.selectedMarketAsset ) export const selectMarkets = createSelector( @@ -150,7 +147,7 @@ export const selectMarkets = createSelector( selectV3Markets, (state: RootState) => state.futures, (futuresType, network, v3Markets, futures) => { - if (futuresType === 'perps_v3') return v3Markets + if (futuresType === FuturesMarginType.CROSS_MARGIN) return v3Markets return futures.markets[network] ? unserializeMarkets(futures.markets[network]) : [] } ) @@ -178,20 +175,15 @@ export const selectMarketInfo = createSelector( export const selectOrderType = createSelector( (state: RootState) => state.futures, - (futures) => futures[accountType(futures.selectedType)].orderType + (futures) => futures.smartMargin.orderType ) -export const selectCrossMarginOrderType = (state: RootState) => state.futures.crossMargin.orderType +export const selectSmartMarginOrderType = (state: RootState) => state.futures.smartMargin.orderType export const selectClosePositionOrderInputs = createSelector( - selectFuturesType, (state: RootState) => state.futures, - (type, futures) => { - if (type === 'cross_margin') return futures.crossMargin.closePositionOrderInputs - return { - ...futures.isolatedMargin.closePositionOrderInputs, - price: undefined, - } + (futures) => { + return futures.closePositionOrderInputs } ) @@ -283,18 +275,18 @@ export const selectMarkPriceInfos = createSelector( export const selectFuturesAccount = createSelector( selectFuturesType, selectWallet, - selectCrossMarginAccount, - (selectedType, wallet, crossMarginAccount) => { - return selectedType === 'cross_margin' ? crossMarginAccount : wallet + selectSmartMarginAccount, + (selectedType, wallet, smartMarginAccount) => { + return selectedType === FuturesMarginType.SMART_MARGIN ? smartMarginAccount : wallet } ) export const selectAllConditionalOrders = createSelector( selectFuturesType, - selectCrossMarginAccountData, + selectSmartMarginAccountData, selectOnChainPricesInfo, (selectedType, account, prices) => { - if (!account || selectedType === 'isolated_margin') return [] + if (!account || selectedType !== FuturesMarginType.SMART_MARGIN) return [] const orders = unserializeConditionalOrders(account.conditionalOrders) return orders.map((o) => { @@ -309,13 +301,13 @@ export const selectAllConditionalOrders = createSelector( export const selectPositionHistory = createSelector( selectFuturesType, - selectCrossMarginAccountData, - selectIsolatedAccountData, - (type, crossAccountData, isolatedAccountData) => { - if (type === 'isolated_margin') { - return unserializePositionHistory(isolatedAccountData?.positionHistory ?? []) + selectSmartMarginAccountData, + selectCrossMarginPositionHistory, + (type, smartAccountData, crossPositionHistory) => { + if (type === FuturesMarginType.CROSS_MARGIN) { + return crossPositionHistory } else { - return unserializePositionHistory(crossAccountData?.positionHistory ?? []) + return unserializePositionHistory(smartAccountData?.positionHistory ?? []) } } ) @@ -340,8 +332,8 @@ export const selectPositionHistoryForSelectedTrader = createSelector( } ) -export const selectCrossMarginPositions = createSelector( - selectCrossMarginAccountData, +export const selectSmartMarginPositions = createSelector( + selectSmartMarginAccountData, selectAllConditionalOrders, selectMarkPrices, selectPositionHistory, @@ -378,33 +370,24 @@ export const selectCrossMarginPositions = createSelector( } ) -export const selectIsolatedMarginPositions = createSelector( - selectMarkPrices, - selectIsolatedAccountData, - selectPositionHistory, - (prices, account, positionHistory) => { - return account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] - } -) - export const selectFuturesPositions = createSelector( + selectSmartMarginPositions, selectCrossMarginPositions, - selectIsolatedMarginPositions, (state: RootState) => state.futures.selectedType, - (crossMarginPositions, isolatedMarginPositions, selectedType) => { - return selectedType === 'cross_margin' ? crossMarginPositions : isolatedMarginPositions + (smartPositions, crossPositions, selectedType) => { + return selectedType === FuturesMarginType.CROSS_MARGIN ? crossPositions : smartPositions } ) -export const selectActiveIsolatedPositionsCount = createSelector( - selectIsolatedMarginPositions, +export const selectActiveCrossMarginPositionsCount = createSelector( + selectCrossMarginPositions, (positions) => { return positions.filter((p) => !!p.position).length } ) export const selectActiveSmartPositionsCount = createSelector( - selectCrossMarginPositions, + selectSmartMarginPositions, (positions) => { return positions.filter((p) => !!p.position).length } @@ -506,7 +489,7 @@ export const selectIsExecutingOrder = createSelector( ) export const selectIsMarketCapReached = createSelector( - (state: RootState) => state.futures[accountType(state.futures.selectedType)].leverageSide, + (state: RootState) => state.futures.smartMargin.leverageSide, selectMarketInfo, selectMarketIndexPrice, (leverageSide, marketInfo, marketAssetRate) => { @@ -532,11 +515,11 @@ export const selectPosition = createSelector( ) export const selectOrderFeeCap = (state: RootState) => - wei(state.futures.crossMargin.orderFeeCap || '0') + wei(state.futures.smartMargin.orderFeeCap || '0') export const selectLeverageSide = createSelector( (state: RootState) => state.futures, - (futures) => futures[accountType(futures.selectedType)].leverageSide + (futures) => futures.smartMargin.leverageSide ) export const selectMaxLeverage = createSelector( @@ -550,7 +533,7 @@ export const selectMaxLeverage = createSelector( let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) if (!positionLeverage || positionLeverage.eq(wei(0))) return adjustedMaxLeverage - if (futuresType === 'cross_margin') return adjustedMaxLeverage + if (futuresType === FuturesMarginType.SMART_MARGIN) return adjustedMaxLeverage if (positionSide === leverageSide) { return adjustedMaxLeverage?.sub(positionLeverage).gte(0) ? adjustedMaxLeverage.sub(positionLeverage) @@ -571,8 +554,8 @@ export const selectAboveMaxLeverage = createSelector( } ) -export const selectCrossMarginBalanceInfo = createSelector( - selectCrossMarginAccountData, +export const selectSmartMarginBalanceInfo = createSelector( + selectSmartMarginAccountData, (account) => { return account ? unserializeCmBalanceInfo(account.balanceInfo) @@ -585,7 +568,7 @@ export const selectCrossMarginBalanceInfo = createSelector( ) export const selectSmartMarginDepositApproved = createSelector( - selectCrossMarginAccountData, + selectSmartMarginAccountData, (account) => { if (!account) return false return wei(account.balanceInfo.allowance || 0).gt(0) @@ -620,7 +603,7 @@ export const selectRemainingMarketMargin = createSelector(selectPosition, (posit }) export const selectMarginInMarkets = (isSuspended: boolean = false) => - createSelector(selectCrossMarginPositions, selectMarkets, (positions, markets) => { + createSelector(selectSmartMarginPositions, selectMarkets, (positions, markets) => { const idleInMarkets = positions .filter((p) => { const market = markets.find((m) => m.marketKey === p.marketKey) @@ -637,7 +620,7 @@ export const selectLockedMarginInMarkets = selectMarginInMarkets(true) export const selectIdleMargin = createSelector( selectAvailableMarginInMarkets, - selectCrossMarginBalanceInfo, + selectSmartMarginBalanceInfo, selectSusdBalance, (idleInMarkets, { freeMargin }, balance) => { return balance.add(idleInMarkets).add(freeMargin) @@ -645,10 +628,10 @@ export const selectIdleMargin = createSelector( ) export const selectSmartMarginAllowanceValid = createSelector( - selectCrossMarginAccountData, - selectCrossMarginBalanceInfo, + selectSmartMarginAccountData, + selectSmartMarginBalanceInfo, selectAvailableMarginInMarkets, - selectCrossMarginMarginDelta, + selectSmartMarginMarginDelta, (account, { freeMargin }, idleInMarkets, marginDelta) => { const totalIdleMargin = freeMargin.add(idleInMarkets) if (!account) return false @@ -659,17 +642,17 @@ export const selectSmartMarginAllowanceValid = createSelector( } ) -export const selectWithdrawableMargin = createSelector( +export const selectWithdrawableSmartMargin = createSelector( selectAvailableMarginInMarkets, - selectCrossMarginBalanceInfo, + selectSmartMarginBalanceInfo, (idleInMarkets, { freeMargin }) => { return idleInMarkets.add(freeMargin) } ) -export const selectCrossMarginTradeInputs = createSelector( +export const selectSmartMarginTradeInputs = createSelector( selectLeverageSide, - (state: RootState) => state.futures.crossMargin.tradeInputs, + (state: RootState) => state.futures.smartMargin.tradeInputs, (side, tradeInputs) => { const inputs = unserializeTradeInputs(tradeInputs) const deltas = { @@ -685,43 +668,14 @@ export const selectCrossMarginTradeInputs = createSelector( } ) -export const selectIsolatedMarginTradeInputs = createSelector( - selectLeverageSide, - (state: RootState) => state.futures.isolatedMargin.tradeInputs, - (side, tradeInputs) => { - const inputs = unserializeTradeInputs(tradeInputs) - const deltas = { - susdSizeDelta: side === PositionSide.LONG ? inputs.susdSize : inputs.susdSize.neg(), - nativeSizeDelta: side === PositionSide.LONG ? inputs.nativeSize : inputs.nativeSize.neg(), - } - return { - ...inputs, - ...deltas, - susdSizeString: tradeInputs.susdSize, - nativeSizeString: tradeInputs.nativeSize, - } - } -) - -export const selectCrossMarginEditPosInputs = (state: RootState) => - state.futures.crossMargin.editPositionInputs -export const selectIsolatedMarginEditPosInputs = (state: RootState) => - state.futures.crossMargin.editPositionInputs - -export const selectEditPositionInputs = createSelector( - selectFuturesType, - selectCrossMarginEditPosInputs, - selectIsolatedMarginEditPosInputs, - (type, crossMarginInputs, isolatedInputs) => { - return type === 'cross_margin' ? crossMarginInputs : isolatedInputs - } -) +export const selectSmartMarginEditPosInputs = (state: RootState) => + state.futures.smartMargin.editPositionInputs export const selectEditMarginAllowanceValid = createSelector( - selectCrossMarginAccountData, - selectCrossMarginBalanceInfo, + selectSmartMarginAccountData, + selectSmartMarginBalanceInfo, selectAvailableMarginInMarkets, - selectEditPositionInputs, + selectSmartMarginEditPosInputs, (account, { freeMargin }, idleInMarkets, { marginDelta }) => { const totalIdleMargin = freeMargin.add(idleInMarkets) if (!account) return false @@ -740,25 +694,16 @@ export const selectSelectedInputDenomination = (state: RootState) => export const selectSelectedInputHours = (state: RootState) => state.futures.selectedInputHours -export const selectCrossMarginSelectedLeverage = createSelector( - selectMarketKey, - (state: RootState) => state.futures.crossMargin.selectedLeverageByAsset, - (key, selectedLeverageByAsset) => wei(selectedLeverageByAsset[key] || DEFAULT_LEVERAGE) -) - -export const selectIsolatedMarginFee = (state: RootState) => - wei(state.futures.isolatedMargin.tradeFee) - -export const selectKeeperEthBalance = createSelector(selectCrossMarginAccountData, (account) => +export const selectKeeperEthBalance = createSelector(selectSmartMarginAccountData, (account) => wei(account?.balanceInfo.keeperEthBal || 0) ) -export const selectWalletEthBalance = createSelector(selectCrossMarginAccountData, (account) => +export const selectWalletEthBalance = createSelector(selectSmartMarginAccountData, (account) => wei(account?.balanceInfo.walletEthBal || 0) ) export const selectSmartMarginKeeperDeposit = createSelector( - (state: RootState) => state.futures.crossMargin.fees, + (state: RootState) => state.futures.smartMargin.fees, (fees) => { return wei(fees.keeperEthDeposit) } @@ -772,22 +717,13 @@ export const selectKeeperDepositExceedsBal = createSelector( } ) -export const selectTradeSizeInputs = createSelector( - selectFuturesType, - selectCrossMarginTradeInputs, - selectIsolatedMarginTradeInputs, - (type, crossMarginInputs, isolatedInputs) => { - return type === 'cross_margin' ? crossMarginInputs : isolatedInputs - } -) - export const selectTradeSizeInputsDisabled = createSelector( selectMarginDeltaInputValue, selectFuturesType, selectPosition, (marginDeltaInput, selectedAccountType, position) => { const remaining = - selectedAccountType === 'isolated_margin' + selectedAccountType === FuturesMarginType.CROSS_MARGIN ? position?.remainingMargin || ZERO_WEI : wei(marginDeltaInput || 0) return remaining.lte(0) @@ -797,12 +733,13 @@ export const selectTradeSizeInputsDisabled = createSelector( export const selectEditPositionModalInfo = createSelector( selectFuturesType, selectEditPositionModalMarket, + selectSmartMarginPositions, selectCrossMarginPositions, - selectIsolatedMarginPositions, selectMarkets, selectPrices, - (type, modalMarketKey, smartPositions, isolatedPositions, markets, prices) => { - const contextPositions = type === 'isolated_margin' ? isolatedPositions : smartPositions + (type, modalMarketKey, smartPositions, crossPositions, markets, prices) => { + const contextPositions = + type === FuturesMarginType.CROSS_MARGIN ? crossPositions : smartPositions const position = contextPositions.find((p) => p.marketKey === modalMarketKey) const market = markets.find((m) => m.marketKey === modalMarketKey) if (!market) return { position: null, market: null, marketPrice: wei(0) } @@ -814,10 +751,10 @@ export const selectEditPositionModalInfo = createSelector( export const selectConditionalOrdersForMarket = createSelector( selectMarketAsset, - selectCrossMarginAccountData, + selectSmartMarginAccountData, selectFuturesType, (asset, account, futuresType) => { - if (futuresType !== 'cross_margin') return [] + if (futuresType !== FuturesMarginType.SMART_MARGIN) return [] return account ? unserializeConditionalOrders(account.conditionalOrders).filter((o) => o.asset === asset) : [] @@ -869,7 +806,7 @@ export const selectSLTPModalExistingPrices = createSelector( ) export const selectSlTpTradeInputs = createSelector( - (state: RootState) => state.futures.crossMargin.tradeInputs, + (state: RootState) => state.futures.smartMargin.tradeInputs, (tradeInputs) => ({ stopLossPrice: tradeInputs.stopLossPrice || '', takeProfitPrice: tradeInputs.takeProfitPrice || '', @@ -877,29 +814,28 @@ export const selectSlTpTradeInputs = createSelector( ) export const selectNewTradeHasSlTp = createSelector( - (state: RootState) => state.futures.crossMargin.tradeInputs, + (state: RootState) => state.futures.smartMargin.tradeInputs, (tradeInputs) => Number(tradeInputs.stopLossPrice) > 0 || Number(tradeInputs.takeProfitPrice) > 0 ) export const selectSlTpModalInputs = createSelector( - (state: RootState) => state.futures.crossMargin.sltpModalInputs, + (state: RootState) => state.futures.smartMargin.sltpModalInputs, (inputs) => ({ stopLossPrice: inputs.stopLossPrice ?? '', takeProfitPrice: inputs.takeProfitPrice ?? '', }) ) -export const selectCrossMarginOrderPrice = (state: RootState) => - state.futures.crossMargin.orderPrice.price ?? '' +export const selectSmartMarginOrderPrice = (state: RootState) => + state.futures.smartMargin.orderPrice.price ?? '' export const selectTradePreview = createSelector( - selectFuturesType, - selectTradeSizeInputs, - selectCrossMarginOrderPrice, + selectSmartMarginTradeInputs, + selectSmartMarginOrderPrice, selectOrderType, (state: RootState) => state.futures, - (type, { nativeSizeDelta }, orderPrice, orderType, futures) => { - const preview = futures[accountType(type)].previews.trade + ({ nativeSizeDelta }, orderPrice, orderType, futures) => { + const preview = futures.smartMargin.previews.trade const unserialized = preview ? unserializePotentialTrade(preview) : null if (unserialized) { const priceImpact = getDefaultPriceImpact(orderType) @@ -923,12 +859,11 @@ export const selectTradePreview = createSelector( ) export const selectEditPositionPreview = createSelector( - selectFuturesType, - selectEditPositionInputs, + selectSmartMarginEditPosInputs, (state: RootState) => state.futures, - (type, { nativeSizeDelta }, futures) => { + ({ nativeSizeDelta }, futures) => { if (isNaN(Number(nativeSizeDelta))) return null - const preview = futures[accountType(type)].previews.edit + const preview = futures.smartMargin.previews.edit const unserialized = preview ? unserializePotentialTrade(preview) : null if (unserialized) { const priceImpact = getDefaultPriceImpact('market') @@ -956,7 +891,7 @@ export const selectClosePositionPreview = createSelector( selectClosePositionOrderInputs, (state: RootState) => state.futures, (type, { position }, { price, orderType }, futures) => { - const preview = futures[accountType(type)].previews.close + const preview = futures.smartMargin.previews.close const unserialized = preview ? unserializePotentialTrade(preview) : null if (unserialized) { const priceImpact = getDefaultPriceImpact(orderType) @@ -980,9 +915,9 @@ export const selectClosePositionPreview = createSelector( } ) -export const selectIsolatedMarginLeverage = createSelector( +export const selectCrossMarginLeverage = createSelector( selectPosition, - selectIsolatedMarginTradeInputs, + selectCrossMarginTradeInputs, (position, { susdSize }) => { const remainingMargin = position?.remainingMargin if (!remainingMargin || remainingMargin.eq(0) || !susdSize) return wei(0) @@ -1000,20 +935,20 @@ export const selectNextPriceDisclaimer = createSelector( export const selectPlaceOrderTranslationKey = createSelector( selectPosition, - selectCrossMarginMarginDelta, - selectCrossMarginBalanceInfo, + selectSmartMarginMarginDelta, + selectSmartMarginBalanceInfo, selectFuturesType, - (state: RootState) => state.futures[accountType(state.futures.selectedType)].orderType, + (state: RootState) => state.futures.smartMargin.orderType, selectIsMarketCapReached, (position, marginDelta, { freeMargin }, selectedType, orderType) => { let remainingMargin - if (selectedType === 'isolated_margin') { + if (selectedType === FuturesMarginType.SMART_MARGIN) { remainingMargin = position?.remainingMargin || ZERO_WEI } else { remainingMargin = marginDelta } - if (selectedType === 'isolated_margin') + if (selectedType === FuturesMarginType.SMART_MARGIN) return remainingMargin.add(freeMargin).lt('50') ? 'futures.market.trade.button.deposit-margin-minimum' : 'futures.market.trade.button.place-delayed-order' @@ -1025,73 +960,49 @@ export const selectPlaceOrderTranslationKey = createSelector( ) export const selectFuturesPortfolio = createSelector( + selectSmartMarginPositions, selectCrossMarginPositions, - selectIsolatedMarginPositions, - selectCrossMarginBalanceInfo, - (crossPositions, isolatedPositions, { freeMargin }) => { - const isolatedValue = - isolatedPositions.reduce((sum, { remainingMargin }) => sum.add(remainingMargin), wei(0)) ?? - wei(0) + selectSmartMarginBalanceInfo, + (smartPositions, crossPositions, { freeMargin }) => { const crossValue = crossPositions.reduce((sum, { remainingMargin }) => sum.add(remainingMargin), wei(0)) ?? wei(0) - const totalValue = isolatedValue.add(crossValue).add(freeMargin) + const smartValue = + smartPositions.reduce((sum, { remainingMargin }) => sum.add(remainingMargin), wei(0)) ?? + wei(0) + const totalValue = smartValue.add(crossValue).add(freeMargin) return { total: totalValue, - crossMarginFutures: crossValue.add(freeMargin), - isolatedMarginFutures: isolatedValue, + smartMargin: smartValue.add(freeMargin), + crossMargin: crossValue, } } ) -export const selectMarketMarginTransfers = createSelector( - selectWallet, - selectNetwork, - selectFuturesType, - selectMarketAsset, - (state: RootState) => state.futures, - (wallet, network, type, asset, futures) => { - if (!wallet) return [] - const account = futures[accountType(type)].accounts[network]?.[wallet] - const marginTransfers = account?.marginTransfers ?? [] - return accountType(type) === 'isolatedMargin' - ? marginTransfers.filter((o) => o.asset === asset) - : marginTransfers +export const selectSmartMarginTransfers = createSelector( + selectSmartMarginAccountData, + (account) => { + return account?.marginTransfers ?? [] } ) export const selectMarginTransfers = createSelector( - selectWallet, - selectNetwork, selectFuturesType, + selectCrossMarginMarginTransfers, + selectSmartMarginTransfers, (state: RootState) => state.futures, - (wallet, network, type, futures) => { - if (!wallet) return [] - const account = futures[accountType(type)].accounts[network]?.[wallet] - return account?.marginTransfers ?? [] - } -) - -export const selectIsolatedMarginTransfers = createSelector( - selectWallet, - selectNetwork, - (state: RootState) => state.futures, - (wallet, network, futures) => { - if (!wallet) return [] - const account = futures.isolatedMargin.accounts[network]?.[wallet] - return account?.marginTransfers ?? [] + (type, smTransfers, cmTransfers) => { + return type === FuturesMarginType.CROSS_MARGIN ? cmTransfers : smTransfers } ) -export const selectSmartMarginTransfers = createSelector( - selectWallet, - selectNetwork, +export const selectMarketMarginTransfers = createSelector( + selectMarginTransfers, + selectMarketAsset, (state: RootState) => state.futures, - (wallet, network, futures) => { - if (!wallet) return [] - const account = futures.crossMargin.accounts[network]?.[wallet] - return account?.marginTransfers ?? [] + (transfers, asset) => { + return transfers.filter((o) => o.asset === asset) } ) @@ -1101,7 +1012,7 @@ export const selectIdleMarginTransfers = createSelector( (state: RootState) => state.futures, (wallet, network, futures) => { if (!wallet) return [] - const account = futures.crossMargin.accounts[network]?.[wallet] + const account = futures.smartMargin.accounts[network]?.[wallet] return account?.idleTransfers ?? [] } ) @@ -1129,9 +1040,10 @@ export const selectTradePreviewError = createSelector( selectFuturesType, (state: RootState) => state.futures, (type, futures) => { - return type === 'cross_margin' - ? futures.queryStatuses.crossMarginTradePreview.error - : futures.queryStatuses.isolatedTradePreview.error + // TODO: cross margin error + return type === FuturesMarginType.SMART_MARGIN + ? futures.queryStatuses.smartMarginTradePreview.error + : undefined } ) @@ -1139,9 +1051,10 @@ export const selectIsFetchingTradePreview = createSelector( selectFuturesType, (state: RootState) => state.futures, (type, futures) => { - return type === 'cross_margin' - ? futures.queryStatuses.crossMarginTradePreview.status === FetchStatus.Loading - : futures.queryStatuses.isolatedTradePreview.status === FetchStatus.Loading + // TODO: cross margin loading state + return type === FuturesMarginType.SMART_MARGIN + ? futures.queryStatuses.smartMarginTradePreview.status === FetchStatus.Loading + : false } ) @@ -1158,19 +1071,8 @@ export const selectTradePreviewStatus = createSelector( selectFuturesType, (state: RootState) => state.futures, (type, futures) => { - return type === 'cross_margin' - ? futures.queryStatuses.crossMarginTradePreview - : futures.queryStatuses.isolatedTradePreview - } -) - -export const selectPositionStatus = createSelector( - selectFuturesType, - (state: RootState) => state.futures, - (type, futures) => { - return type === 'cross_margin' - ? futures.queryStatuses.crossMarginPositions - : futures.queryStatuses.isolatedPositions + // TODO: cross margin loading state + return futures.queryStatuses.smartMarginTradePreview } ) @@ -1183,22 +1085,13 @@ export const selectPendingDelayedOrder = createSelector( ) export const selectIsConditionalOrder = createSelector( - (state: RootState) => state.futures.crossMargin.orderType, + (state: RootState) => state.futures.smartMargin.orderType, (type) => type === 'limit' || type === 'stop_market' ) -export const selectModifyIsolatedGasEstimate = createSelector( - (state: RootState) => state.futures.transactionEstimations, - (transactionEstimations) => { - const estimate = transactionEstimations['modify_isolated'] - if (estimate) return unserializeGasEstimate(estimate) - return null - } -) - export const selectDelayedOrderFee = createSelector( selectMarketInfo, - selectTradeSizeInputs, + selectSmartMarginTradeInputs, selectSkewAdjustedPrice, (market, { nativeSizeDelta }, price) => { if ( @@ -1235,45 +1128,30 @@ export const selectUsersTradesForMarket = createSelector( selectFuturesType, selectFuturesAccount, selectMarketAsset, + selectSmartMarginAccountData, selectCrossMarginAccountData, - selectIsolatedAccountData, - (type, account, asset, crossAccountData, isolatedAccountData) => { + (type, account, asset, smartAccountData, crossAccountData) => { let trades - if (type === 'cross_margin') { - trades = unserializeTrades(crossAccountData?.trades ?? []) + if (type === FuturesMarginType.SMART_MARGIN) { + trades = unserializeTrades(smartAccountData?.trades ?? []) } else if (account) { - trades = unserializeTrades(isolatedAccountData?.trades ?? []) + trades = unserializeTrades(crossAccountData?.trades ?? []) } return trades?.filter((t) => t.asset === asset) ?? [] } ) export const selectAllUsersTrades = createSelector( - selectIsolatedAccountData, selectCrossMarginAccountData, - (isolatedAccountData, crossAccountData) => { - const allTrades = [...(isolatedAccountData?.trades ?? []), ...(crossAccountData?.trades ?? [])] + selectSmartMarginAccountData, + (crossAccountData, smartAccountData) => { + const allTrades = [...(crossAccountData?.trades ?? []), ...(smartAccountData?.trades ?? [])] return unserializeTrades(allTrades) } ) -export const selectAllIsolatedTrades = createSelector( - selectIsolatedAccountData, - selectMarkets, - (isolatedAccountData, markets) => { - const trades = unserializeTrades(isolatedAccountData?.trades ?? []) - return trades.map((t) => { - const market = markets.find((m) => m.asset === t.asset) - return { - ...t, - market: market, - } - }) - } -) - export const selectAllSmartMarginTrades = createSelector( - selectCrossMarginAccountData, + selectSmartMarginAccountData, selectMarkets, (smartMarginAccountData, markets) => { const trades = unserializeTrades(smartMarginAccountData?.trades ?? []) @@ -1288,20 +1166,20 @@ export const selectAllSmartMarginTrades = createSelector( ) export const selectAllTradesForAccountType = createSelector( - selectAllIsolatedTrades, + selectAllCrossMarginTrades, selectAllSmartMarginTrades, selectFuturesType, - (isolatedTrades, smartMarginTrades, accountType) => { - return accountType === 'isolated_margin' ? isolatedTrades : smartMarginTrades + (crossMarginTrades, smartMarginTrades, accountType) => { + return accountType === FuturesMarginType.CROSS_MARGIN ? crossMarginTrades : smartMarginTrades } ) export const selectSelectedPortfolioTimeframe = (state: RootState) => state.futures.dashboard.selectedPortfolioTimeframe -export const selectIsolatedPortfolioValues = createSelector( - selectAllIsolatedTrades, - selectIsolatedMarginTransfers, +export const selectCrossMarginPortfolioValues = createSelector( + selectAllCrossMarginTrades, + selectCrossMarginMarginTransfers, selectFuturesPortfolio, (trades, transfers, portfolioTotal) => { const tradeActions = trades.map(({ account, timestamp, asset, margin }) => ({ @@ -1357,12 +1235,12 @@ export const selectIsolatedPortfolioValues = createSelector( return [...acc.slice(0, acc.length - (replacePrevious ? 1 : 0)), newAction] } - }, [] as IsolatedPerpsPortfolio[]) + }, [] as CrossPerpsPortfolio[]) return [ ...accountHistory.map(({ timestamp, total }) => ({ timestamp: timestamp * 1000, total })), { timestamp: Date.now(), - total: portfolioTotal.isolatedMarginFutures.toNumber(), + total: portfolioTotal.crossMargin.toNumber(), }, ] } @@ -1458,17 +1336,17 @@ export const selectSmartMarginPortfolioValues = createSelector( ...accountHistory.map(({ timestamp, total }) => ({ timestamp: timestamp * 1000, total })), { timestamp: Date.now(), - total: portfolioTotal.crossMarginFutures.toNumber(), + total: portfolioTotal.smartMargin.toNumber(), }, ] } ) export const selectPortfolioChartData = createSelector( - selectIsolatedPortfolioValues, + selectCrossMarginPortfolioValues, selectSmartMarginPortfolioValues, selectSelectedPortfolioTimeframe, - (isolatedPortfolioValues, smartPortfolioValues, timeframe) => { + (crossPortfolioValues, smartPortfolioValues, timeframe) => { // get the timeframe for interpolation const interpolationGap = timeframe === Period.ONE_YEAR @@ -1516,25 +1394,25 @@ export const selectPortfolioChartData = createSelector( return portfolioData } - const isolatedPortfolioData = createPortfolioData(isolatedPortfolioValues) + const crossPortfolioData = createPortfolioData(crossPortfolioValues) const smartPortfolioData = createPortfolioData(smartPortfolioValues) return { - [FuturesAccountTypes.ISOLATED_MARGIN]: isolatedPortfolioData, - [FuturesAccountTypes.CROSS_MARGIN]: smartPortfolioData, + [FuturesMarginType.CROSS_MARGIN]: crossPortfolioData, + [FuturesMarginType.SMART_MARGIN]: smartPortfolioData, } } ) export const selectCancellingConditionalOrder = (state: RootState) => - state.futures.crossMargin.cancellingOrder + state.futures.smartMargin.cancellingOrder export const selectHasRemainingMargin = createSelector( selectPosition, selectFuturesType, - selectCrossMarginBalanceInfo, + selectSmartMarginBalanceInfo, (position, futuresType, balanceInfo) => { const posMargin = position?.remainingMargin ?? ZERO_WEI - return futuresType === 'cross_margin' + return futuresType === FuturesMarginType.SMART_MARGIN ? balanceInfo.freeMargin.add(posMargin).gt(0) : posMargin.gt(0) } @@ -1542,7 +1420,7 @@ export const selectHasRemainingMargin = createSelector( export const selectOrderFee = createSelector( selectMarketInfo, - selectTradeSizeInputs, + selectSmartMarginTradeInputs, (marketInfo, { susdSizeDelta }) => { return computeDelayedOrderFee(marketInfo, susdSizeDelta) } @@ -1555,7 +1433,9 @@ export const selectMaxUsdSizeInput = createSelector( selectMarginDeltaInputValue, (futuresType, position, maxLeverage, marginDelta) => { const margin = - futuresType === 'cross_margin' ? marginDelta || 0 : position?.remainingMargin ?? wei(0) + futuresType === FuturesMarginType.SMART_MARGIN + ? marginDelta || 0 + : position?.remainingMargin ?? wei(0) return maxLeverage.mul(margin) } ) @@ -1700,11 +1580,8 @@ export const selectPreviewMarginChange = createSelector( } ) -export const selectCrossPreviewCount = (state: RootState) => - state.futures.crossMargin.previewDebounceCount - -export const selectIsolatedPreviewCount = (state: RootState) => - state.futures.isolatedMargin.previewDebounceCount +export const selectSmartMarginPreviewCount = (state: RootState) => + state.futures.smartMargin.previewDebounceCount export const selectBuyingPower = createSelector( selectPosition, diff --git a/packages/app/src/state/futures/types.ts b/packages/app/src/state/futures/types.ts index daa9dece4a..d8312cce6f 100644 --- a/packages/app/src/state/futures/types.ts +++ b/packages/app/src/state/futures/types.ts @@ -11,18 +11,21 @@ import { FuturesTrade, FuturesVolumes, PositionSide, - ConditionalOrder as CrossMarginOrder, + ConditionalOrder as SmartMarginOrder, FuturesMarketKey, FuturesMarketAsset, MarginTransfer, - FuturesAccountType, FuturesFilledPosition, + FuturesMarginType, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' import { QueryStatus } from 'state/types' +type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY +export type AppFuturesMarginType = Exclude + export type TradeSizeInputs = { nativeSize: T susdSize: T @@ -33,7 +36,7 @@ export type SLTPInputs = { takeProfitPrice?: T } -export type CrossMarginTradeInputs = TradeSizeInputs & { +export type SmartMarginTradeInputs = TradeSizeInputs & { stopLossPrice?: T takeProfitPrice?: T } @@ -43,7 +46,7 @@ export type EditPositionInputs = { marginDelta: T } -export type ClosePositionInputsCrossMargin = { +export type ClosePositionInputs = { nativeSizeDelta: T price?: { value?: string | undefined | null @@ -52,11 +55,6 @@ export type ClosePositionInputsCrossMargin = { orderType: SmartMarginOrderType } -export type ClosePositionInputsIsolatedMargin = { - nativeSizeDelta: T - orderType: 'market' -} - export type MarkPrices = Partial> export type MarkPriceInfos = Partial>> @@ -76,7 +74,7 @@ export type FuturesAction = { action: 'trade' | 'deposit' | 'withdraw' } -export type IsolatedPerpsPortfolio = { +export type CrossPerpsPortfolio = { account: string timestamp: number assets: { @@ -102,16 +100,13 @@ export type PortfolioValues = { export type FuturesQueryStatuses = { markets: QueryStatus - crossMarginBalanceInfo: QueryStatus + smartMarginBalanceInfo: QueryStatus dailyVolumes: QueryStatus - crossMarginPositions: QueryStatus - crossMarginPositionHistory: QueryStatus - isolatedPositions: QueryStatus - isolatedPositionHistory: QueryStatus + smartMarginPositions: QueryStatus + smartMarginPositionHistory: QueryStatus openOrders: QueryStatus - isolatedTradePreview: QueryStatus - crossMarginTradePreview: QueryStatus - crossMarginAccount: QueryStatus + smartMarginTradePreview: QueryStatus + smartMarginAccount: QueryStatus positionHistory: QueryStatus trades: QueryStatus selectedTraderPositionHistory: QueryStatus @@ -149,8 +144,6 @@ export type TransactionEstimation = { cost: T } -export type TransactionEstimations = Record> - export type TransactionEstimationPayload = { type: FuturesTransactionType limit: string @@ -158,14 +151,14 @@ export type TransactionEstimationPayload = { error?: string | null } -export type CrossMarginBalanceInfo = { +export type SmartMarginBalanceInfo = { freeMargin: T keeperEthBal: T allowance: T walletEthBal: T } -export type CrossMarginTradeFees = { +export type SmartMarginTradeFees = { delayedOrderFee: T keeperEthDeposit: T } @@ -183,7 +176,7 @@ export type FundingRatePeriods = { } export type AccountContext = { - type: FuturesAccountType + type: AppFuturesMarginType network: NetworkId wallet: string cmAccount?: string @@ -199,31 +192,25 @@ export type FuturesAccountData = { marginTransfers?: MarginTransfer[] } -export type IsolatedAccountData = FuturesAccountData & { - delayedOrders: DelayedOrderWithDetails[] -} - -export type CrossMarginAccountData = FuturesAccountData & { +export type SmartMarginAccountData = FuturesAccountData & { account: string idleTransfers: MarginTransfer[] - balanceInfo: CrossMarginBalanceInfo + balanceInfo: SmartMarginBalanceInfo delayedOrders: DelayedOrderWithDetails[] - conditionalOrders: CrossMarginOrder[] + conditionalOrders: SmartMarginOrder[] } // TODO: Separate in some way by network and wallet // so we can have persisted state between switching export type FuturesState = { - selectedType: FuturesAccountType + selectedType: AppFuturesMarginType confirmationModalOpen: boolean - isolatedMargin: IsolatedMarginState fundingRates: FundingRate[] - crossMargin: CrossMarginState + smartMargin: SmartMarginState markets: Record[]> queryStatuses: FuturesQueryStatuses dailyMarketVolumes: FuturesVolumes - transactionEstimations: TransactionEstimations errors: FuturesErrors selectedInputDenomination: InputCurrencyDenomination selectedInputHours: number @@ -247,6 +234,7 @@ export type FuturesState = { historicalFundingRates: Partial< Record > + closePositionOrderInputs: ClosePositionInputs } export type TradePreviewResult = { @@ -254,33 +242,32 @@ export type TradePreviewResult = { error: string | null } -export type CrossMarginState = { - tradeInputs: CrossMarginTradeInputs +export type SmartMarginState = { + tradeInputs: SmartMarginTradeInputs editPositionInputs: EditPositionInputs sltpModalInputs: SLTPInputs marginDelta: string orderType: SmartMarginOrderType - closePositionOrderInputs: ClosePositionInputsCrossMargin orderFeeCap: string leverageInput: string selectedLeverageByAsset: Partial> leverageSide: PositionSide selectedMarketKey: FuturesMarketKey selectedMarketAsset: FuturesMarketAsset - showCrossMarginOnboard: boolean + showSmartMarginOnboard: boolean previews: { trade: FuturesPotentialTradeDetails | null close: FuturesPotentialTradeDetails | null edit: FuturesPotentialTradeDetails | null } previewDebounceCount: number - fees: CrossMarginTradeFees + fees: SmartMarginTradeFees depositApproved: boolean cancellingOrder: number | undefined accounts: Record< FuturesNetwork, { - [wallet: string]: CrossMarginAccountData + [wallet: string]: SmartMarginAccountData } > @@ -290,35 +277,6 @@ export type CrossMarginState = { } } -export type IsolatedMarginState = { - tradeInputs: TradeSizeInputs - editPositionInputs: EditPositionInputs - orderType: 'market' - previews: { - trade: FuturesPotentialTradeDetails | null - close: FuturesPotentialTradeDetails | null - edit: FuturesPotentialTradeDetails | null - } - closePositionOrderInputs: ClosePositionInputsIsolatedMargin - previewDebounceCount: number - leverageSide: PositionSide - selectedMarketKey: FuturesMarketKey - selectedMarketAsset: FuturesMarketAsset - leverageInput: string - tradeFee: string - accounts: Record< - FuturesNetwork, - { - [wallet: string]: IsolatedAccountData - } - > -} - -export type ModifyIsolatedPositionInputs = { - delayed: boolean - offchain: boolean -} - export type CancelDelayedOrderInputs = { marketAddress: string isOffchain: boolean diff --git a/packages/app/src/state/helpers.ts b/packages/app/src/state/helpers.ts index 7dcb6acd22..187188d95e 100644 --- a/packages/app/src/state/helpers.ts +++ b/packages/app/src/state/helpers.ts @@ -1,4 +1,4 @@ -import { FuturesAccountType } from '@kwenta/sdk/types' +import { FuturesMarginType } from '@kwenta/sdk/types' import Wei, { wei } from '@synthetixio/wei' // Redux recommends that values stored in state are serializable @@ -48,5 +48,5 @@ export const deserializeWeiObject = (object: object, keys: Set, prefix?: }, {} as any) } -export const accountType = (type: FuturesAccountType) => - type === 'cross_margin' || type === 'smart_margin' ? 'crossMargin' : 'isolatedMargin' +export const accountType = (type: FuturesMarginType) => + type === FuturesMarginType.CROSS_MARGIN ? 'crossMargin' : 'smartMargin' diff --git a/packages/app/src/state/migrations.ts b/packages/app/src/state/migrations.ts index 9c9d735d52..ebed884b84 100644 --- a/packages/app/src/state/migrations.ts +++ b/packages/app/src/state/migrations.ts @@ -86,10 +86,11 @@ export const migrations = { futures: FUTURES_INITIAL_STATE, } }, - 31: (state: any) => { + 32: (state: any) => { return { ...state, app: APP_INITIAL_STATE, + futures: FUTURES_INITIAL_STATE, } }, } diff --git a/packages/app/src/state/perpsV3/actions.ts b/packages/app/src/state/perpsV3/actions.ts deleted file mode 100644 index 630fecef98..0000000000 --- a/packages/app/src/state/perpsV3/actions.ts +++ /dev/null @@ -1,174 +0,0 @@ -import { - FuturesAccountType, - FuturesMarket, - FuturesPositionHistory, - NetworkId, - TransactionStatus, -} from '@kwenta/sdk/types' -import { createAsyncThunk } from '@reduxjs/toolkit' - -import { notifyError } from 'components/ErrorNotifier' -import { selectFuturesAccount, selectFuturesType } from 'state/futures/selectors' -import { ThunkConfig } from 'state/types' -import { selectNetwork, selectWallet } from 'state/wallet/selectors' -import { - perpsAccountIdFromAddress, - serializeMarkets, - serializePositionHistory, -} from 'utils/futures' -import logError from 'utils/logError' - -import { selectPerpsV3SupportedNetwork } from './selectors' -import { setPerpsV3Account } from './reducer' -import { - handleTransactionError, - setTransaction, - updateTransactionHash, - updateTransactionStatus, -} from 'state/app/reducer' -import { AppDispatch } from 'state/store' -import { ethers } from 'ethers' - -export const fetchV3Markets = createAsyncThunk< - { markets: FuturesMarket[]; networkId: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchV3Markets', async (_, { getState, extra: { sdk } }) => { - const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) - const networkId = selectNetwork(getState()) - if (!supportedNetwork) return - try { - const v3Markets = await sdk.perpsV3.getMarkets() - - return { markets: serializeMarkets(v3Markets), networkId } - } catch (err) { - logError(err) - notifyError('Failed to fetch markets', err) - throw err - } -}) - -export const fetchPerpsV3Account = createAsyncThunk< - { account: string; wallet: string; network: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchPerpsV3Account', async (_, { getState, extra: { sdk }, rejectWithValue }) => { - const wallet = selectWallet(getState()) - const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) - const network = selectNetwork(getState()) - if (!wallet || !supportedNetwork) return undefined - - const accounts = getState().futures.crossMargin.accounts - - // Already have an account fetched and persisted for this address - if (accounts[network]?.[wallet]?.account) return - - const id = perpsAccountIdFromAddress(wallet) - - try { - const owner = await sdk.perpsV3.getAccountOwner(id) - console.log('owner', owner) - if (owner) { - // Account already created - if (owner.toLowerCase() !== wallet.toLowerCase()) { - const errMessage = 'Account id registered with a different wallet' - notifyError(errMessage) - rejectWithValue(errMessage) - } - return { account: id, wallet, network } - } - return undefined - } catch (err) { - notifyError('Failed to fetch smart margin account', err) - rejectWithValue(err.message) - } -}) - -export const fetchPerpsV3PositionHistory = createAsyncThunk< - | { - accountType: FuturesAccountType - history: FuturesPositionHistory[] - account: string - wallet: string - networkId: NetworkId - } - | undefined, - void, - ThunkConfig ->('futures/fetchPerpsV3PositionHistory', async (_, { getState, extra: { sdk } }) => { - try { - const account = selectFuturesAccount(getState()) - const accountType = selectFuturesType(getState()) - const networkId = selectNetwork(getState()) - const wallet = selectWallet(getState()) - const futuresSupported = selectPerpsV3SupportedNetwork(getState()) - if (!wallet || !account || !futuresSupported) return - const history = await sdk.futures.getPositionHistory(account) - return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } - } catch (err) { - notifyError('Failed to fetch perps v3 position history', err) - throw err - } -}) - -export const createPerpsV3Account = createAsyncThunk< - { account: string; wallet: string; network: NetworkId } | undefined, - void, - ThunkConfig ->( - 'futures/createPerpsV3Account', - async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { - const wallet = selectWallet(getState()) - const supportedNetwork = selectPerpsV3SupportedNetwork(getState()) - const network = selectNetwork(getState()) - if (!wallet || !supportedNetwork) return undefined - const accounts = getState().perpsV3.accounts - - // Already have an accoutn fetched and persisted for this address - if (accounts[network]?.[wallet]?.account) { - notifyError('There is already an account associated with this wallet') - rejectWithValue('Account already created') - } - - const id = perpsAccountIdFromAddress(wallet) - - try { - // Check if this wallet has already registered an account from Kwenta - // as we want to maintain one to one eoa account mapping for now - - const owner = await sdk.perpsV3.getAccountOwner(id) - if (owner && owner.toLowerCase() !== wallet.toLowerCase()) { - notifyError('Another wallet is already registered with account id ' + id) - rejectWithValue('Account id already registered') - return - } else if (owner) { - dispatch(setPerpsV3Account({ account: id.toString(), wallet: wallet, network })) - return - } - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'create_cross_margin_account', - hash: null, - }) - ) - const tx = await sdk.perpsV3.createPerpsV3Account(id) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchPe()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - } - } -) - -// TODO: Move this to shared action under app - -const monitorAndAwaitTransaction = async ( - dispatch: AppDispatch, - tx: ethers.providers.TransactionResponse -) => { - dispatch(updateTransactionHash(tx.hash)) - await tx.wait() - dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) -} diff --git a/packages/app/src/state/perpsV3/selectors.ts b/packages/app/src/state/perpsV3/selectors.ts deleted file mode 100644 index 6b79b9e4b0..0000000000 --- a/packages/app/src/state/perpsV3/selectors.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { createSelector } from '@reduxjs/toolkit' - -import { RootState } from 'state/store' -import { selectNetwork, selectWallet } from 'state/wallet/selectors' -import { unserializeMarkets } from 'utils/futures' - -export const selectV3Markets = createSelector( - selectNetwork, - (state: RootState) => state.perpsV3, - (network, perpsV3) => - perpsV3.markets[network] ? unserializeMarkets(perpsV3.markets[network]) : [] -) - -export const selectPerpsV3SupportedNetwork = (state: RootState) => - state.wallet.networkId === 10 || state.wallet.networkId === 420 - -export const selectPerpsV3Account = createSelector( - selectWallet, - selectNetwork, - (state: RootState) => state.perpsV3, - (wallet, network, perpsV3) => { - return wallet ? perpsV3.accounts[network]?.[wallet]?.account : undefined - } -) diff --git a/packages/app/src/state/store.ts b/packages/app/src/state/store.ts index 102b1d1920..2307bcafa7 100644 --- a/packages/app/src/state/store.ts +++ b/packages/app/src/state/store.ts @@ -28,14 +28,14 @@ import sdk from './sdk' import stakingReducer from './staking/reducer' import statsReducer from './stats/reducer' import walletReducer from './wallet/reducer' -import perpsV3Reducer from './perpsV3/reducer' +import crossMarginReducer from './crossMargin/reducer' const LOG_REDUX = false const persistConfig = { key: 'root1', storage, - version: 31, + version: 32, blacklist: ['app', 'wallet'], migrate: createMigrate(migrations, { debug: true }), } @@ -46,7 +46,7 @@ const combinedReducers = combineReducers({ balances: balancesReducer, exchange: exchangeReducer, futures: futuresReducer, - perpsV3: perpsV3Reducer, + crossMargin: crossMarginReducer, home: homeReducer, earn: earnReducer, staking: stakingReducer, diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index ef9d5dcea4..8c98c5614d 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -21,7 +21,7 @@ import Wei, { wei } from '@synthetixio/wei' import { TFunction } from 'i18next' import { - CrossMarginBalanceInfo, + SmartMarginBalanceInfo, TradeSizeInputs, DelayedOrderWithDetails, TransactionEstimation, @@ -188,8 +188,8 @@ export const unserializeMarkets = (markets: FuturesMarket[]): FuturesMar } export const serializeCmBalanceInfo = ( - overview: CrossMarginBalanceInfo -): CrossMarginBalanceInfo => { + overview: SmartMarginBalanceInfo +): SmartMarginBalanceInfo => { return { freeMargin: overview.freeMargin.toString(), keeperEthBal: overview.keeperEthBal.toString(), @@ -199,8 +199,8 @@ export const serializeCmBalanceInfo = ( } export const unserializeCmBalanceInfo = ( - balanceInfo: CrossMarginBalanceInfo -): CrossMarginBalanceInfo => { + balanceInfo: SmartMarginBalanceInfo +): SmartMarginBalanceInfo => { return { freeMargin: wei(balanceInfo.freeMargin), keeperEthBal: wei(balanceInfo.keeperEthBal), @@ -410,7 +410,7 @@ export const formatDelayedOrders = (orders: DelayedOrder[], markets: FuturesMark }, [] as DelayedOrderWithDetails[]) } -export const perpsAccountIdFromAddress = (eoa: string): number => { +export const perpsAccountIdFromAddress = (eoa: string): string => { const numberedId = eoa.replace(/\D/g, '') - return Number(numberedId) + return numberedId.substring(0, 16) } diff --git a/packages/app/testing/unit/mocks/data/app.ts b/packages/app/testing/unit/mocks/data/app.ts index 8cc9163dd3..69bca45514 100644 --- a/packages/app/testing/unit/mocks/data/app.ts +++ b/packages/app/testing/unit/mocks/data/app.ts @@ -1,4 +1,4 @@ -import { NetworkId } from '@kwenta/sdk/dist/types' +import { NetworkId } from '@kwenta/sdk/types' import { Wallet } from 'ethers' import { PRICES_INITIAL_STATE } from 'state/prices/reducer' diff --git a/packages/app/testing/unit/mocks/data/futures.ts b/packages/app/testing/unit/mocks/data/futures.ts index e8d66bfc8b..9741a3ca04 100644 --- a/packages/app/testing/unit/mocks/data/futures.ts +++ b/packages/app/testing/unit/mocks/data/futures.ts @@ -3,7 +3,7 @@ import { FuturesMarketKey, NetworkId, SynthSuspensionReason, -} from '@kwenta/sdk/dist/types' +} from '@kwenta/sdk/types' import { wei } from '@synthetixio/wei' import { FUTURES_INITIAL_STATE } from 'state/futures/reducer' @@ -188,7 +188,7 @@ export const preloadedStateWithSmartMarginAccount = (mockAccount = mockSmartMarg futures: { ...FUTURES_INITIAL_STATE, crossMargin: { - ...FUTURES_INITIAL_STATE.crossMargin, + ...FUTURES_INITIAL_STATE.smartMargin, accounts: { [10 as NetworkId]: { [TEST_ADDR]: mockAccount, diff --git a/packages/sdk/src/constants/futures.ts b/packages/sdk/src/constants/futures.ts index 66d59f15e0..95d3008f0d 100644 --- a/packages/sdk/src/constants/futures.ts +++ b/packages/sdk/src/constants/futures.ts @@ -496,18 +496,6 @@ export const MARKETS: Record = { testnet: '0xb7abd25a76ddaffdf847224f03198ccb92723f90b2429cf33f0eecb96e352a86', }, }, - // Perps v3 - - [FuturesMarketKey.ETH]: { - key: FuturesMarketKey.ETH, - asset: FuturesMarketAsset.ETH, - supports: 'both', - version: 2, - pythIds: { - mainnet: '0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace', - testnet: '0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6', - }, - }, } export const MARKET_ASSETS_BY_PYTH_ID = Object.values(MARKETS) diff --git a/packages/sdk/src/contracts/types/BatchClaimer.ts b/packages/sdk/src/contracts/types/BatchClaimer.ts index bfcf9da4f2..2909de7bc8 100644 --- a/packages/sdk/src/contracts/types/BatchClaimer.ts +++ b/packages/sdk/src/contracts/types/BatchClaimer.ts @@ -2,133 +2,117 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish; - account: string; - amount: BigNumberish; - merkleProof: BytesLike[]; - epoch: BigNumberish; - }; - - export type ClaimsStructOutput = [ - BigNumber, - string, - BigNumber, - string[], - BigNumber - ] & { - index: BigNumber; - account: string; - amount: BigNumber; - merkleProof: string[]; - epoch: BigNumber; - }; + export type ClaimsStruct = { + index: BigNumberish + account: string + amount: BigNumberish + merkleProof: BytesLike[] + epoch: BigNumberish + } + + export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { + index: BigNumber + account: string + amount: BigNumber + merkleProof: string[] + epoch: BigNumber + } } export interface BatchClaimerInterface extends utils.Interface { - functions: { - "claimMultiple(address[],tuple[][])": FunctionFragment; - }; + functions: { + 'claimMultiple(address[],tuple[][])': FunctionFragment + } - getFunction(nameOrSignatureOrTopic: "claimMultiple"): FunctionFragment; + getFunction(nameOrSignatureOrTopic: 'claimMultiple'): FunctionFragment - encodeFunctionData( - functionFragment: "claimMultiple", - values: [string[], IMultipleMerkleDistributor.ClaimsStruct[][]] - ): string; + encodeFunctionData( + functionFragment: 'claimMultiple', + values: [string[], IMultipleMerkleDistributor.ClaimsStruct[][]] + ): string - decodeFunctionResult( - functionFragment: "claimMultiple", - data: BytesLike - ): Result; + decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - events: {}; + events: {} } export interface BatchClaimer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: BatchClaimerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: BatchClaimerInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise + } + + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise + + callStatic: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: CallOverrides + ): Promise + } + + filters: {} + + estimateGas: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise + } + + populateTransaction: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/DappMaintenance.ts b/packages/sdk/src/contracts/types/DappMaintenance.ts index 30dcae334c..0f5383a8fd 100644 --- a/packages/sdk/src/contracts/types/DappMaintenance.ts +++ b/packages/sdk/src/contracts/types/DappMaintenance.ts @@ -2,378 +2,286 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface DappMaintenanceInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "isPausedSX()": FunctionFragment; - "isPausedStaking()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "setMaintenanceModeAll(bool)": FunctionFragment; - "setMaintenanceModeSX(bool)": FunctionFragment; - "setMaintenanceModeStaking(bool)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "isPausedSX" - | "isPausedStaking" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "setMaintenanceModeAll" - | "setMaintenanceModeSX" - | "setMaintenanceModeStaking" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isPausedSX", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isPausedStaking", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "setMaintenanceModeAll", - values: [boolean] - ): string; - encodeFunctionData( - functionFragment: "setMaintenanceModeSX", - values: [boolean] - ): string; - encodeFunctionData( - functionFragment: "setMaintenanceModeStaking", - values: [boolean] - ): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isPausedSX", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isPausedStaking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setMaintenanceModeAll", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMaintenanceModeSX", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMaintenanceModeStaking", - data: BytesLike - ): Result; - - events: { - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "SXMaintenance(bool)": EventFragment; - "StakingMaintenance(bool)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SXMaintenance"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakingMaintenance"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'isPausedSX()': FunctionFragment + 'isPausedStaking()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'setMaintenanceModeAll(bool)': FunctionFragment + 'setMaintenanceModeSX(bool)': FunctionFragment + 'setMaintenanceModeStaking(bool)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'isPausedSX' + | 'isPausedStaking' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'setMaintenanceModeAll' + | 'setMaintenanceModeSX' + | 'setMaintenanceModeStaking' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'isPausedSX', values?: undefined): string + encodeFunctionData(functionFragment: 'isPausedStaking', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'setMaintenanceModeAll', values: [boolean]): string + encodeFunctionData(functionFragment: 'setMaintenanceModeSX', values: [boolean]): string + encodeFunctionData(functionFragment: 'setMaintenanceModeStaking', values: [boolean]): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isPausedSX', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isPausedStaking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMaintenanceModeAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMaintenanceModeSX', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMaintenanceModeStaking', data: BytesLike): Result + + events: { + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'SXMaintenance(bool)': EventFragment + 'StakingMaintenance(bool)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SXMaintenance'): EventFragment + getEvent(nameOrSignatureOrTopic: 'StakingMaintenance'): EventFragment } export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface SXMaintenanceEventObject { - isPaused: boolean; + isPaused: boolean } -export type SXMaintenanceEvent = TypedEvent< - [boolean], - SXMaintenanceEventObject ->; +export type SXMaintenanceEvent = TypedEvent<[boolean], SXMaintenanceEventObject> -export type SXMaintenanceEventFilter = TypedEventFilter; +export type SXMaintenanceEventFilter = TypedEventFilter export interface StakingMaintenanceEventObject { - isPaused: boolean; + isPaused: boolean } -export type StakingMaintenanceEvent = TypedEvent< - [boolean], - StakingMaintenanceEventObject ->; +export type StakingMaintenanceEvent = TypedEvent<[boolean], StakingMaintenanceEventObject> -export type StakingMaintenanceEventFilter = - TypedEventFilter; +export type StakingMaintenanceEventFilter = TypedEventFilter export interface DappMaintenance extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: DappMaintenanceInterface; + interface: DappMaintenanceInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - isPausedSX(overrides?: CallOverrides): Promise<[boolean]>; + isPausedSX(overrides?: CallOverrides): Promise<[boolean]> - isPausedStaking(overrides?: CallOverrides): Promise<[boolean]>; + isPausedStaking(overrides?: CallOverrides): Promise<[boolean]> - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + nominatedOwner(overrides?: CallOverrides): Promise<[string]> - owner(overrides?: CallOverrides): Promise<[string]>; + owner(overrides?: CallOverrides): Promise<[string]> - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - }; + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise + } - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - isPausedSX(overrides?: CallOverrides): Promise; + isPausedSX(overrides?: CallOverrides): Promise - isPausedStaking(overrides?: CallOverrides): Promise; + isPausedStaking(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise - isPausedSX(overrides?: CallOverrides): Promise; + isPausedSX(overrides?: CallOverrides): Promise - isPausedStaking(overrides?: CallOverrides): Promise; + isPausedStaking(overrides?: CallOverrides): Promise - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - setMaintenanceModeAll( - isPaused: boolean, - overrides?: CallOverrides - ): Promise; + setMaintenanceModeAll(isPaused: boolean, overrides?: CallOverrides): Promise - setMaintenanceModeSX( - isPaused: boolean, - overrides?: CallOverrides - ): Promise; + setMaintenanceModeSX(isPaused: boolean, overrides?: CallOverrides): Promise - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: CallOverrides - ): Promise; - }; + setMaintenanceModeStaking(isPaused: boolean, overrides?: CallOverrides): Promise + } - filters: { - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + filters: { + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - "SXMaintenance(bool)"(isPaused?: null): SXMaintenanceEventFilter; - SXMaintenance(isPaused?: null): SXMaintenanceEventFilter; + 'SXMaintenance(bool)'(isPaused?: null): SXMaintenanceEventFilter + SXMaintenance(isPaused?: null): SXMaintenanceEventFilter - "StakingMaintenance(bool)"(isPaused?: null): StakingMaintenanceEventFilter; - StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter; - }; + 'StakingMaintenance(bool)'(isPaused?: null): StakingMaintenanceEventFilter + StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter + } - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - isPausedSX(overrides?: CallOverrides): Promise; + isPausedSX(overrides?: CallOverrides): Promise - isPausedStaking(overrides?: CallOverrides): Promise; + isPausedStaking(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - }; + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise + } - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - isPausedSX(overrides?: CallOverrides): Promise; + isPausedSX(overrides?: CallOverrides): Promise - isPausedStaking(overrides?: CallOverrides): Promise; + isPausedStaking(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - }; + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/ERC20.ts b/packages/sdk/src/contracts/types/ERC20.ts index 5a675444d2..21d2184639 100644 --- a/packages/sdk/src/contracts/types/ERC20.ts +++ b/packages/sdk/src/contracts/types/ERC20.ts @@ -2,469 +2,381 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface ERC20Interface extends utils.Interface { - functions: { - "name()": FunctionFragment; - "approve(address,uint256)": FunctionFragment; - "mint(uint256)": FunctionFragment; - "totalSupply()": FunctionFragment; - "transferFrom(address,address,uint256)": FunctionFragment; - "decimals()": FunctionFragment; - "increaseAllowance(address,uint256)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "symbol()": FunctionFragment; - "decreaseAllowance(address,uint256)": FunctionFragment; - "transfer(address,uint256)": FunctionFragment; - "allowance(address,address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "name" - | "approve" - | "mint" - | "totalSupply" - | "transferFrom" - | "decimals" - | "increaseAllowance" - | "balanceOf" - | "symbol" - | "decreaseAllowance" - | "transfer" - | "allowance" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData( - functionFragment: "approve", - values: [string, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "mint", values: [BigNumberish]): string; - encodeFunctionData( - functionFragment: "totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transferFrom", - values: [string, string, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData( - functionFragment: "increaseAllowance", - values: [string, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData( - functionFragment: "decreaseAllowance", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transfer", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "allowance", - values: [string, string] - ): string; - - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferFrom", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "increaseAllowance", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "decreaseAllowance", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - - events: { - "Transfer(address,address,uint256)": EventFragment; - "Approval(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + functions: { + 'name()': FunctionFragment + 'approve(address,uint256)': FunctionFragment + 'mint(uint256)': FunctionFragment + 'totalSupply()': FunctionFragment + 'transferFrom(address,address,uint256)': FunctionFragment + 'decimals()': FunctionFragment + 'increaseAllowance(address,uint256)': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'symbol()': FunctionFragment + 'decreaseAllowance(address,uint256)': FunctionFragment + 'transfer(address,uint256)': FunctionFragment + 'allowance(address,address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'name' + | 'approve' + | 'mint' + | 'totalSupply' + | 'transferFrom' + | 'decimals' + | 'increaseAllowance' + | 'balanceOf' + | 'symbol' + | 'decreaseAllowance' + | 'transfer' + | 'allowance' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'name', values?: undefined): string + encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'mint', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string + encodeFunctionData( + functionFragment: 'transferFrom', + values: [string, string, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'decimals', values?: undefined): string + encodeFunctionData(functionFragment: 'increaseAllowance', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'symbol', values?: undefined): string + encodeFunctionData(functionFragment: 'decreaseAllowance', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string + + decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'increaseAllowance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'decreaseAllowance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result + + events: { + 'Transfer(address,address,uint256)': EventFragment + 'Approval(address,address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment } export interface TransferEventObject { - from: string; - to: string; - value: BigNumber; + from: string + to: string + value: BigNumber } -export type TransferEvent = TypedEvent< - [string, string, BigNumber], - TransferEventObject ->; +export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> -export type TransferEventFilter = TypedEventFilter; +export type TransferEventFilter = TypedEventFilter export interface ApprovalEventObject { - owner: string; - spender: string; - value: BigNumber; + owner: string + spender: string + value: BigNumber } -export type ApprovalEvent = TypedEvent< - [string, string, BigNumber], - ApprovalEventObject ->; +export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> -export type ApprovalEventFilter = TypedEventFilter; +export type ApprovalEventFilter = TypedEventFilter export interface ERC20 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ERC20Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - name(overrides?: CallOverrides): Promise<[string]>; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - decimals(overrides?: CallOverrides): Promise<[number]>; - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - - symbol(overrides?: CallOverrides): Promise<[string]>; - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - }; - - name(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - symbol(overrides?: CallOverrides): Promise; - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - callStatic: { - name(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - mint(value: BigNumberish, overrides?: CallOverrides): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - symbol(overrides?: CallOverrides): Promise; - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: CallOverrides - ): Promise; - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "Transfer(address,address,uint256)"( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - Transfer( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - - "Approval(address,address,uint256)"( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; - Approval( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; - }; - - estimateGas: { - name(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - symbol(overrides?: CallOverrides): Promise; - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - name(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; - - symbol(overrides?: CallOverrides): Promise; - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: ERC20Interface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + name(overrides?: CallOverrides): Promise<[string]> + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + decimals(overrides?: CallOverrides): Promise<[number]> + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + symbol(overrides?: CallOverrides): Promise<[string]> + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> + } + + name(overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mint(value: BigNumberish, overrides?: Overrides & { from?: string }): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + decimals(overrides?: CallOverrides): Promise + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + symbol(overrides?: CallOverrides): Promise + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + + callStatic: { + name(overrides?: CallOverrides): Promise + + approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise + + mint(value: BigNumberish, overrides?: CallOverrides): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise + + decimals(overrides?: CallOverrides): Promise + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: CallOverrides + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + symbol(overrides?: CallOverrides): Promise + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: CallOverrides + ): Promise + + transfer(recipient: string, amount: BigNumberish, overrides?: CallOverrides): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + } + + filters: { + 'Transfer(address,address,uint256)'( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter + Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter + + 'Approval(address,address,uint256)'( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter + Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter + } + + estimateGas: { + name(overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mint(value: BigNumberish, overrides?: Overrides & { from?: string }): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + decimals(overrides?: CallOverrides): Promise + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + symbol(overrides?: CallOverrides): Promise + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + } + + populateTransaction: { + name(overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + decimals(overrides?: CallOverrides): Promise + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + symbol(overrides?: CallOverrides): Promise + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/ExchangeRates.ts b/packages/sdk/src/contracts/types/ExchangeRates.ts index 9da7ab93fe..fbedaff85a 100644 --- a/packages/sdk/src/contracts/types/ExchangeRates.ts +++ b/packages/sdk/src/contracts/types/ExchangeRates.ts @@ -2,1632 +2,1221 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IDirectIntegrationManager { - export type ParameterIntegrationSettingsStruct = { - currencyKey: BytesLike; - dexPriceAggregator: string; - atomicEquivalentForDexPricing: string; - atomicExchangeFeeRate: BigNumberish; - atomicTwapWindow: BigNumberish; - atomicMaxVolumePerBlock: BigNumberish; - atomicVolatilityConsiderationWindow: BigNumberish; - atomicVolatilityUpdateThreshold: BigNumberish; - exchangeFeeRate: BigNumberish; - exchangeMaxDynamicFee: BigNumberish; - exchangeDynamicFeeRounds: BigNumberish; - exchangeDynamicFeeThreshold: BigNumberish; - exchangeDynamicFeeWeightDecay: BigNumberish; - }; - - export type ParameterIntegrationSettingsStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - currencyKey: string; - dexPriceAggregator: string; - atomicEquivalentForDexPricing: string; - atomicExchangeFeeRate: BigNumber; - atomicTwapWindow: BigNumber; - atomicMaxVolumePerBlock: BigNumber; - atomicVolatilityConsiderationWindow: BigNumber; - atomicVolatilityUpdateThreshold: BigNumber; - exchangeFeeRate: BigNumber; - exchangeMaxDynamicFee: BigNumber; - exchangeDynamicFeeRounds: BigNumber; - exchangeDynamicFeeThreshold: BigNumber; - exchangeDynamicFeeWeightDecay: BigNumber; - }; + export type ParameterIntegrationSettingsStruct = { + currencyKey: BytesLike + dexPriceAggregator: string + atomicEquivalentForDexPricing: string + atomicExchangeFeeRate: BigNumberish + atomicTwapWindow: BigNumberish + atomicMaxVolumePerBlock: BigNumberish + atomicVolatilityConsiderationWindow: BigNumberish + atomicVolatilityUpdateThreshold: BigNumberish + exchangeFeeRate: BigNumberish + exchangeMaxDynamicFee: BigNumberish + exchangeDynamicFeeRounds: BigNumberish + exchangeDynamicFeeThreshold: BigNumberish + exchangeDynamicFeeWeightDecay: BigNumberish + } + + export type ParameterIntegrationSettingsStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + currencyKey: string + dexPriceAggregator: string + atomicEquivalentForDexPricing: string + atomicExchangeFeeRate: BigNumber + atomicTwapWindow: BigNumber + atomicMaxVolumePerBlock: BigNumber + atomicVolatilityConsiderationWindow: BigNumber + atomicVolatilityUpdateThreshold: BigNumber + exchangeFeeRate: BigNumber + exchangeMaxDynamicFee: BigNumber + exchangeDynamicFeeRounds: BigNumber + exchangeDynamicFeeThreshold: BigNumber + exchangeDynamicFeeWeightDecay: BigNumber + } } export interface ExchangeRatesInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "addAggregator(bytes32,address)": FunctionFragment; - "aggregatorKeys(uint256)": FunctionFragment; - "aggregatorWarningFlags()": FunctionFragment; - "aggregators(bytes32)": FunctionFragment; - "anyRateIsInvalid(bytes32[])": FunctionFragment; - "anyRateIsInvalidAtRound(bytes32[],uint256[])": FunctionFragment; - "currenciesUsingAggregator(address)": FunctionFragment; - "currencyKeyDecimals(bytes32)": FunctionFragment; - "effectiveAtomicValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; - "effectiveValue(bytes32,uint256,bytes32)": FunctionFragment; - "effectiveValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; - "effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)": FunctionFragment; - "getCurrentRoundId(bytes32)": FunctionFragment; - "getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)": FunctionFragment; - "isResolverCached()": FunctionFragment; - "lastRateUpdateTimes(bytes32)": FunctionFragment; - "lastRateUpdateTimesForCurrencies(bytes32[])": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "rateAndInvalid(bytes32)": FunctionFragment; - "rateAndTimestampAtRound(bytes32,uint256)": FunctionFragment; - "rateAndUpdatedTime(bytes32)": FunctionFragment; - "rateForCurrency(bytes32)": FunctionFragment; - "rateIsFlagged(bytes32)": FunctionFragment; - "rateIsInvalid(bytes32)": FunctionFragment; - "rateIsStale(bytes32)": FunctionFragment; - "rateStalePeriod()": FunctionFragment; - "rateWithSafetyChecks(bytes32)": FunctionFragment; - "ratesAndInvalidForCurrencies(bytes32[])": FunctionFragment; - "ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)": FunctionFragment; - "ratesForCurrencies(bytes32[])": FunctionFragment; - "rebuildCache()": FunctionFragment; - "removeAggregator(bytes32)": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "synthTooVolatileForAtomicExchange(bytes32)": FunctionFragment; - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "acceptOwnership" - | "addAggregator" - | "aggregatorKeys" - | "aggregatorWarningFlags" - | "aggregators" - | "anyRateIsInvalid" - | "anyRateIsInvalidAtRound" - | "currenciesUsingAggregator" - | "currencyKeyDecimals" - | "effectiveAtomicValueAndRates" - | "effectiveValue" - | "effectiveValueAndRates" - | "effectiveValueAndRatesAtRound" - | "getCurrentRoundId" - | "getLastRoundIdBeforeElapsedSecs" - | "isResolverCached" - | "lastRateUpdateTimes" - | "lastRateUpdateTimesForCurrencies" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "rateAndInvalid" - | "rateAndTimestampAtRound" - | "rateAndUpdatedTime" - | "rateForCurrency" - | "rateIsFlagged" - | "rateIsInvalid" - | "rateIsStale" - | "rateStalePeriod" - | "rateWithSafetyChecks" - | "ratesAndInvalidForCurrencies" - | "ratesAndUpdatedTimeForCurrencyLastNRounds" - | "ratesForCurrencies" - | "rebuildCache" - | "removeAggregator" - | "resolver" - | "resolverAddressesRequired" - | "synthTooVolatileForAtomicExchange(bytes32)" - | "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "addAggregator", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "aggregatorKeys", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "aggregatorWarningFlags", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "aggregators", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "anyRateIsInvalid", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "anyRateIsInvalidAtRound", - values: [BytesLike[], BigNumberish[]] - ): string; - encodeFunctionData( - functionFragment: "currenciesUsingAggregator", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "currencyKeyDecimals", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "effectiveAtomicValueAndRates", - values: [BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "effectiveValue", - values: [BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "effectiveValueAndRates", - values: [BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "effectiveValueAndRatesAtRound", - values: [BytesLike, BigNumberish, BytesLike, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getCurrentRoundId", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getLastRoundIdBeforeElapsedSecs", - values: [BytesLike, BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastRateUpdateTimes", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "lastRateUpdateTimesForCurrencies", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "rateAndInvalid", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateAndTimestampAtRound", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "rateAndUpdatedTime", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateForCurrency", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateIsFlagged", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateIsInvalid", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateIsStale", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "rateStalePeriod", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rateWithSafetyChecks", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "ratesAndInvalidForCurrencies", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", - values: [BytesLike, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "ratesForCurrencies", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "removeAggregator", - values: [BytesLike] - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", - values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] - ): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "addAggregator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "aggregatorKeys", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "aggregatorWarningFlags", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "aggregators", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "anyRateIsInvalid", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "anyRateIsInvalidAtRound", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currenciesUsingAggregator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currencyKeyDecimals", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "effectiveAtomicValueAndRates", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "effectiveValue", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "effectiveValueAndRates", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "effectiveValueAndRatesAtRound", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getCurrentRoundId", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getLastRoundIdBeforeElapsedSecs", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastRateUpdateTimes", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastRateUpdateTimesForCurrencies", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rateAndInvalid", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateAndTimestampAtRound", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateAndUpdatedTime", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateForCurrency", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateIsFlagged", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateIsInvalid", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateIsStale", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateStalePeriod", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rateWithSafetyChecks", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "ratesAndInvalidForCurrencies", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "ratesForCurrencies", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeAggregator", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", - data: BytesLike - ): Result; - - events: { - "AggregatorAdded(bytes32,address)": EventFragment; - "AggregatorRemoved(bytes32,address)": EventFragment; - "CacheUpdated(bytes32,address)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AggregatorAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AggregatorRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'addAggregator(bytes32,address)': FunctionFragment + 'aggregatorKeys(uint256)': FunctionFragment + 'aggregatorWarningFlags()': FunctionFragment + 'aggregators(bytes32)': FunctionFragment + 'anyRateIsInvalid(bytes32[])': FunctionFragment + 'anyRateIsInvalidAtRound(bytes32[],uint256[])': FunctionFragment + 'currenciesUsingAggregator(address)': FunctionFragment + 'currencyKeyDecimals(bytes32)': FunctionFragment + 'effectiveAtomicValueAndRates(bytes32,uint256,bytes32)': FunctionFragment + 'effectiveValue(bytes32,uint256,bytes32)': FunctionFragment + 'effectiveValueAndRates(bytes32,uint256,bytes32)': FunctionFragment + 'effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)': FunctionFragment + 'getCurrentRoundId(bytes32)': FunctionFragment + 'getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)': FunctionFragment + 'isResolverCached()': FunctionFragment + 'lastRateUpdateTimes(bytes32)': FunctionFragment + 'lastRateUpdateTimesForCurrencies(bytes32[])': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'rateAndInvalid(bytes32)': FunctionFragment + 'rateAndTimestampAtRound(bytes32,uint256)': FunctionFragment + 'rateAndUpdatedTime(bytes32)': FunctionFragment + 'rateForCurrency(bytes32)': FunctionFragment + 'rateIsFlagged(bytes32)': FunctionFragment + 'rateIsInvalid(bytes32)': FunctionFragment + 'rateIsStale(bytes32)': FunctionFragment + 'rateStalePeriod()': FunctionFragment + 'rateWithSafetyChecks(bytes32)': FunctionFragment + 'ratesAndInvalidForCurrencies(bytes32[])': FunctionFragment + 'ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)': FunctionFragment + 'ratesForCurrencies(bytes32[])': FunctionFragment + 'rebuildCache()': FunctionFragment + 'removeAggregator(bytes32)': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'synthTooVolatileForAtomicExchange(bytes32)': FunctionFragment + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'acceptOwnership' + | 'addAggregator' + | 'aggregatorKeys' + | 'aggregatorWarningFlags' + | 'aggregators' + | 'anyRateIsInvalid' + | 'anyRateIsInvalidAtRound' + | 'currenciesUsingAggregator' + | 'currencyKeyDecimals' + | 'effectiveAtomicValueAndRates' + | 'effectiveValue' + | 'effectiveValueAndRates' + | 'effectiveValueAndRatesAtRound' + | 'getCurrentRoundId' + | 'getLastRoundIdBeforeElapsedSecs' + | 'isResolverCached' + | 'lastRateUpdateTimes' + | 'lastRateUpdateTimesForCurrencies' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'rateAndInvalid' + | 'rateAndTimestampAtRound' + | 'rateAndUpdatedTime' + | 'rateForCurrency' + | 'rateIsFlagged' + | 'rateIsInvalid' + | 'rateIsStale' + | 'rateStalePeriod' + | 'rateWithSafetyChecks' + | 'ratesAndInvalidForCurrencies' + | 'ratesAndUpdatedTimeForCurrencyLastNRounds' + | 'ratesForCurrencies' + | 'rebuildCache' + | 'removeAggregator' + | 'resolver' + | 'resolverAddressesRequired' + | 'synthTooVolatileForAtomicExchange(bytes32)' + | 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'addAggregator', values: [BytesLike, string]): string + encodeFunctionData(functionFragment: 'aggregatorKeys', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'aggregatorWarningFlags', values?: undefined): string + encodeFunctionData(functionFragment: 'aggregators', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'anyRateIsInvalid', values: [BytesLike[]]): string + encodeFunctionData( + functionFragment: 'anyRateIsInvalidAtRound', + values: [BytesLike[], BigNumberish[]] + ): string + encodeFunctionData(functionFragment: 'currenciesUsingAggregator', values: [string]): string + encodeFunctionData(functionFragment: 'currencyKeyDecimals', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'effectiveAtomicValueAndRates', + values: [BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'effectiveValue', + values: [BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'effectiveValueAndRates', + values: [BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'effectiveValueAndRatesAtRound', + values: [BytesLike, BigNumberish, BytesLike, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getCurrentRoundId', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'getLastRoundIdBeforeElapsedSecs', + values: [BytesLike, BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'lastRateUpdateTimes', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'lastRateUpdateTimesForCurrencies', + values: [BytesLike[]] + ): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'rateAndInvalid', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'rateAndTimestampAtRound', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'rateAndUpdatedTime', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'rateForCurrency', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'rateIsFlagged', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'rateIsInvalid', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'rateIsStale', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'rateStalePeriod', values?: undefined): string + encodeFunctionData(functionFragment: 'rateWithSafetyChecks', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'ratesAndInvalidForCurrencies', + values: [BytesLike[]] + ): string + encodeFunctionData( + functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', + values: [BytesLike, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'ratesForCurrencies', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'removeAggregator', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData( + functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', + values: [BytesLike] + ): string + encodeFunctionData( + functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', + values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] + ): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'addAggregator', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'aggregatorKeys', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'aggregatorWarningFlags', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'aggregators', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'anyRateIsInvalid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'anyRateIsInvalidAtRound', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currenciesUsingAggregator', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currencyKeyDecimals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'effectiveAtomicValueAndRates', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'effectiveValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'effectiveValueAndRates', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'effectiveValueAndRatesAtRound', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getCurrentRoundId', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getLastRoundIdBeforeElapsedSecs', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastRateUpdateTimes', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'lastRateUpdateTimesForCurrencies', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateAndInvalid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateAndTimestampAtRound', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateAndUpdatedTime', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateForCurrency', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateIsFlagged', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateIsInvalid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateIsStale', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateStalePeriod', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rateWithSafetyChecks', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'ratesAndInvalidForCurrencies', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'ratesForCurrencies', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'removeAggregator', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', + data: BytesLike + ): Result + decodeFunctionResult( + functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', + data: BytesLike + ): Result + + events: { + 'AggregatorAdded(bytes32,address)': EventFragment + 'AggregatorRemoved(bytes32,address)': EventFragment + 'CacheUpdated(bytes32,address)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'AggregatorAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'AggregatorRemoved'): EventFragment + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface AggregatorAddedEventObject { - currencyKey: string; - aggregator: string; + currencyKey: string + aggregator: string } -export type AggregatorAddedEvent = TypedEvent< - [string, string], - AggregatorAddedEventObject ->; +export type AggregatorAddedEvent = TypedEvent<[string, string], AggregatorAddedEventObject> -export type AggregatorAddedEventFilter = TypedEventFilter; +export type AggregatorAddedEventFilter = TypedEventFilter export interface AggregatorRemovedEventObject { - currencyKey: string; - aggregator: string; + currencyKey: string + aggregator: string } -export type AggregatorRemovedEvent = TypedEvent< - [string, string], - AggregatorRemovedEventObject ->; +export type AggregatorRemovedEvent = TypedEvent<[string, string], AggregatorRemovedEventObject> -export type AggregatorRemovedEventFilter = - TypedEventFilter; +export type AggregatorRemovedEventFilter = TypedEventFilter export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface ExchangeRates extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ExchangeRatesInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - aggregatorKeys( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]>; - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]>; - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[boolean]>; - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise<[boolean]>; - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise<[string[]] & { currencies: string[] }>; - - currencyKeyDecimals( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[number]>; - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - systemValue: BigNumber; - systemSourceRate: BigNumber; - systemDestinationRate: BigNumber; - } - >; - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber] & { value: BigNumber }>; - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[]]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - rateIsFlagged( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - rateIsInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - rateIsStale( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]>; - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } - >; - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } - >; - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[]]>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise<[string]>; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; - - "synthTooVolatileForAtomicExchange(bytes32)"( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise<[boolean]>; - }; - - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - aggregatorKeys( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - aggregatorWarningFlags(overrides?: CallOverrides): Promise; - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise; - - currencyKeyDecimals( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - systemValue: BigNumber; - systemSourceRate: BigNumber; - systemDestinationRate: BigNumber; - } - >; - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsFlagged( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsStale( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateStalePeriod(overrides?: CallOverrides): Promise; - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } - >; - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } - >; - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - "synthTooVolatileForAtomicExchange(bytes32)"( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise; - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: CallOverrides - ): Promise; - - aggregatorKeys( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - aggregatorWarningFlags(overrides?: CallOverrides): Promise; - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise; - - currencyKeyDecimals( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - systemValue: BigNumber; - systemSourceRate: BigNumber; - systemDestinationRate: BigNumber; - } - >; - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber; - sourceRate: BigNumber; - destinationRate: BigNumber; - } - >; - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsFlagged( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsStale( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateStalePeriod(overrides?: CallOverrides): Promise; - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean, boolean] & { - rate: BigNumber; - broken: boolean; - staleOrInvalid: boolean; - } - >; - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } - >; - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } - >; - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - rebuildCache(overrides?: CallOverrides): Promise; - - removeAggregator( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - "synthTooVolatileForAtomicExchange(bytes32)"( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AggregatorAdded(bytes32,address)"( - currencyKey?: null, - aggregator?: null - ): AggregatorAddedEventFilter; - AggregatorAdded( - currencyKey?: null, - aggregator?: null - ): AggregatorAddedEventFilter; - - "AggregatorRemoved(bytes32,address)"( - currencyKey?: null, - aggregator?: null - ): AggregatorRemovedEventFilter; - AggregatorRemoved( - currencyKey?: null, - aggregator?: null - ): AggregatorRemovedEventFilter; - - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - aggregatorKeys( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - aggregatorWarningFlags(overrides?: CallOverrides): Promise; - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise; - - currencyKeyDecimals( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsFlagged( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsStale( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateStalePeriod(overrides?: CallOverrides): Promise; - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - rebuildCache(overrides?: Overrides & { from?: string }): Promise; - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - "synthTooVolatileForAtomicExchange(bytes32)"( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - aggregatorKeys( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - aggregatorWarningFlags( - overrides?: CallOverrides - ): Promise; - - aggregators( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise; - - currencyKeyDecimals( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsFlagged( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateIsStale( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - rateStalePeriod(overrides?: CallOverrides): Promise; - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - "synthTooVolatileForAtomicExchange(bytes32)"( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: ExchangeRatesInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]> + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]> + + anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise<[boolean]> + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise<[boolean]> + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise<[string[]] & { currencies: string[] }> + + currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise<[number]> + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber + systemValue: BigNumber + systemSourceRate: BigNumber + systemDestinationRate: BigNumber + } + > + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { value: BigNumber }> + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[]]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> + + rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]> + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> + + ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise<[BigNumber[]]> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + 'synthTooVolatileForAtomicExchange(bytes32)'( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]> + + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise<[boolean]> + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise + + aggregatorWarningFlags(overrides?: CallOverrides): Promise + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise + + anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise + + currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise + + currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber + systemValue: BigNumber + systemSourceRate: BigNumber + systemDestinationRate: BigNumber + } + > + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateStalePeriod(overrides?: CallOverrides): Promise + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> + + ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + 'synthTooVolatileForAtomicExchange(bytes32)'( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise + + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: CallOverrides + ): Promise + + aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise + + aggregatorWarningFlags(overrides?: CallOverrides): Promise + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise + + anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise + + currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise + + currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber + systemValue: BigNumber + systemSourceRate: BigNumber + systemDestinationRate: BigNumber + } + > + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber + sourceRate: BigNumber + destinationRate: BigNumber + } + > + + getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> + + rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateStalePeriod(overrides?: CallOverrides): Promise + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean, boolean] & { + rate: BigNumber + broken: boolean + staleOrInvalid: boolean + } + > + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> + + ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + rebuildCache(overrides?: CallOverrides): Promise + + removeAggregator(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + 'synthTooVolatileForAtomicExchange(bytes32)'( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise + + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise + } + + filters: { + 'AggregatorAdded(bytes32,address)'( + currencyKey?: null, + aggregator?: null + ): AggregatorAddedEventFilter + AggregatorAdded(currencyKey?: null, aggregator?: null): AggregatorAddedEventFilter + + 'AggregatorRemoved(bytes32,address)'( + currencyKey?: null, + aggregator?: null + ): AggregatorRemovedEventFilter + AggregatorRemoved(currencyKey?: null, aggregator?: null): AggregatorRemovedEventFilter + + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise + + aggregatorWarningFlags(overrides?: CallOverrides): Promise + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise + + anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise + + currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise + + currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise + + getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rateAndInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise + + rateAndUpdatedTime(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateStalePeriod(overrides?: CallOverrides): Promise + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise + + ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + 'synthTooVolatileForAtomicExchange(bytes32)'( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise + + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise + } + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise + + aggregatorWarningFlags(overrides?: CallOverrides): Promise + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise + + currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rateAndInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + rateStalePeriod(overrides?: CallOverrides): Promise + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + 'synthTooVolatileForAtomicExchange(bytes32)'( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise + + 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/Exchanger.ts b/packages/sdk/src/contracts/types/Exchanger.ts index d73b36420d..c59747049a 100644 --- a/packages/sdk/src/contracts/types/Exchanger.ts +++ b/packages/sdk/src/contracts/types/Exchanger.ts @@ -2,1110 +2,882 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface ExchangerInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "calculateAmountAfterSettlement(address,bytes32,uint256,uint256)": FunctionFragment; - "dynamicFeeRateForExchange(bytes32,bytes32)": FunctionFragment; - "exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)": FunctionFragment; - "exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)": FunctionFragment; - "feeRateForExchange(bytes32,bytes32)": FunctionFragment; - "getAmountsForExchange(uint256,bytes32,bytes32)": FunctionFragment; - "hasWaitingPeriodOrSettlementOwing(address,bytes32)": FunctionFragment; - "isResolverCached()": FunctionFragment; - "isSynthRateInvalid(bytes32)": FunctionFragment; - "lastExchangeRate(bytes32)": FunctionFragment; - "maxSecsLeftInWaitingPeriod(address,bytes32)": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "priceDeviationThresholdFactor()": FunctionFragment; - "rebuildCache()": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "settle(address,bytes32)": FunctionFragment; - "settlementOwing(address,bytes32)": FunctionFragment; - "tradingRewardsEnabled()": FunctionFragment; - "waitingPeriodSecs()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "acceptOwnership" - | "calculateAmountAfterSettlement" - | "dynamicFeeRateForExchange" - | "exchange" - | "exchangeAtomically" - | "feeRateForExchange" - | "getAmountsForExchange" - | "hasWaitingPeriodOrSettlementOwing" - | "isResolverCached" - | "isSynthRateInvalid" - | "lastExchangeRate" - | "maxSecsLeftInWaitingPeriod" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "priceDeviationThresholdFactor" - | "rebuildCache" - | "resolver" - | "resolverAddressesRequired" - | "settle" - | "settlementOwing" - | "tradingRewardsEnabled" - | "waitingPeriodSecs" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "calculateAmountAfterSettlement", - values: [string, BytesLike, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "dynamicFeeRateForExchange", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchange", - values: [ - string, - string, - BytesLike, - BigNumberish, - BytesLike, - string, - boolean, - string, - BytesLike - ] - ): string; - encodeFunctionData( - functionFragment: "exchangeAtomically", - values: [ - string, - BytesLike, - BigNumberish, - BytesLike, - string, - BytesLike, - BigNumberish - ] - ): string; - encodeFunctionData( - functionFragment: "feeRateForExchange", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getAmountsForExchange", - values: [BigNumberish, BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "hasWaitingPeriodOrSettlementOwing", - values: [string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isSynthRateInvalid", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "lastExchangeRate", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "maxSecsLeftInWaitingPeriod", - values: [string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "priceDeviationThresholdFactor", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "settle", - values: [string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "settlementOwing", - values: [string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "tradingRewardsEnabled", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "waitingPeriodSecs", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "calculateAmountAfterSettlement", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "dynamicFeeRateForExchange", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "exchangeAtomically", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "feeRateForExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAmountsForExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "hasWaitingPeriodOrSettlementOwing", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isSynthRateInvalid", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastExchangeRate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "maxSecsLeftInWaitingPeriod", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "priceDeviationThresholdFactor", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "settlementOwing", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "tradingRewardsEnabled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "waitingPeriodSecs", - data: BytesLike - ): Result; - - events: { - "CacheUpdated(bytes32,address)": EventFragment; - "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)": EventFragment; - "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeEntryAppended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeEntrySettled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'calculateAmountAfterSettlement(address,bytes32,uint256,uint256)': FunctionFragment + 'dynamicFeeRateForExchange(bytes32,bytes32)': FunctionFragment + 'exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)': FunctionFragment + 'exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)': FunctionFragment + 'feeRateForExchange(bytes32,bytes32)': FunctionFragment + 'getAmountsForExchange(uint256,bytes32,bytes32)': FunctionFragment + 'hasWaitingPeriodOrSettlementOwing(address,bytes32)': FunctionFragment + 'isResolverCached()': FunctionFragment + 'isSynthRateInvalid(bytes32)': FunctionFragment + 'lastExchangeRate(bytes32)': FunctionFragment + 'maxSecsLeftInWaitingPeriod(address,bytes32)': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'priceDeviationThresholdFactor()': FunctionFragment + 'rebuildCache()': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'settle(address,bytes32)': FunctionFragment + 'settlementOwing(address,bytes32)': FunctionFragment + 'tradingRewardsEnabled()': FunctionFragment + 'waitingPeriodSecs()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'acceptOwnership' + | 'calculateAmountAfterSettlement' + | 'dynamicFeeRateForExchange' + | 'exchange' + | 'exchangeAtomically' + | 'feeRateForExchange' + | 'getAmountsForExchange' + | 'hasWaitingPeriodOrSettlementOwing' + | 'isResolverCached' + | 'isSynthRateInvalid' + | 'lastExchangeRate' + | 'maxSecsLeftInWaitingPeriod' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'priceDeviationThresholdFactor' + | 'rebuildCache' + | 'resolver' + | 'resolverAddressesRequired' + | 'settle' + | 'settlementOwing' + | 'tradingRewardsEnabled' + | 'waitingPeriodSecs' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData( + functionFragment: 'calculateAmountAfterSettlement', + values: [string, BytesLike, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'dynamicFeeRateForExchange', + values: [BytesLike, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchange', + values: [string, string, BytesLike, BigNumberish, BytesLike, string, boolean, string, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeAtomically', + values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'feeRateForExchange', values: [BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: 'getAmountsForExchange', + values: [BigNumberish, BytesLike, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'hasWaitingPeriodOrSettlementOwing', + values: [string, BytesLike] + ): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'isSynthRateInvalid', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'lastExchangeRate', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'maxSecsLeftInWaitingPeriod', + values: [string, BytesLike] + ): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'priceDeviationThresholdFactor', values?: undefined): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'settle', values: [string, BytesLike]): string + encodeFunctionData(functionFragment: 'settlementOwing', values: [string, BytesLike]): string + encodeFunctionData(functionFragment: 'tradingRewardsEnabled', values?: undefined): string + encodeFunctionData(functionFragment: 'waitingPeriodSecs', values?: undefined): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'calculateAmountAfterSettlement', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'dynamicFeeRateForExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'feeRateForExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAmountsForExchange', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'hasWaitingPeriodOrSettlementOwing', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isSynthRateInvalid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastExchangeRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'maxSecsLeftInWaitingPeriod', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'priceDeviationThresholdFactor', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'settlementOwing', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'tradingRewardsEnabled', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'waitingPeriodSecs', data: BytesLike): Result + + events: { + 'CacheUpdated(bytes32,address)': EventFragment + 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)': EventFragment + 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeEntryAppended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeEntrySettled'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface ExchangeEntryAppendedEventObject { - account: string; - src: string; - amount: BigNumber; - dest: string; - amountReceived: BigNumber; - exchangeFeeRate: BigNumber; - roundIdForSrc: BigNumber; - roundIdForDest: BigNumber; + account: string + src: string + amount: BigNumber + dest: string + amountReceived: BigNumber + exchangeFeeRate: BigNumber + roundIdForSrc: BigNumber + roundIdForDest: BigNumber } export type ExchangeEntryAppendedEvent = TypedEvent< - [ - string, - string, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ], - ExchangeEntryAppendedEventObject ->; - -export type ExchangeEntryAppendedEventFilter = - TypedEventFilter; + [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber], + ExchangeEntryAppendedEventObject +> + +export type ExchangeEntryAppendedEventFilter = TypedEventFilter export interface ExchangeEntrySettledEventObject { - from: string; - src: string; - amount: BigNumber; - dest: string; - reclaim: BigNumber; - rebate: BigNumber; - srcRoundIdAtPeriodEnd: BigNumber; - destRoundIdAtPeriodEnd: BigNumber; - exchangeTimestamp: BigNumber; + from: string + src: string + amount: BigNumber + dest: string + reclaim: BigNumber + rebate: BigNumber + srcRoundIdAtPeriodEnd: BigNumber + destRoundIdAtPeriodEnd: BigNumber + exchangeTimestamp: BigNumber } export type ExchangeEntrySettledEvent = TypedEvent< - [ - string, - string, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ], - ExchangeEntrySettledEventObject ->; - -export type ExchangeEntrySettledEventFilter = - TypedEventFilter; + [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + ExchangeEntrySettledEventObject +> + +export type ExchangeEntrySettledEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface Exchanger extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: ExchangerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }>; - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } - >; - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber; - fee: BigNumber; - exchangeFeeRate: BigNumber; - } - >; - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - priceDeviationThresholdFactor( - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise<[string]>; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber; - rebateAmount: BigNumber; - numEntries: BigNumber; - } - >; - - tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]>; - - waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]>; - }; - - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise; - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } - >; - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber; - fee: BigNumber; - exchangeFeeRate: BigNumber; - } - >; - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber; - rebateAmount: BigNumber; - numEntries: BigNumber; - } - >; - - tradingRewardsEnabled(overrides?: CallOverrides): Promise; - - waitingPeriodSecs(overrides?: CallOverrides): Promise; - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise; - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } - >; - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } - >; - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: CallOverrides - ): Promise; - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber; - fee: BigNumber; - exchangeFeeRate: BigNumber; - } - >; - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - priceDeviationThresholdFactor( - overrides?: CallOverrides - ): Promise; - - rebuildCache(overrides?: CallOverrides): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - settle( - from: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber; - refunded: BigNumber; - numEntriesSettled: BigNumber; - } - >; - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber; - rebateAmount: BigNumber; - numEntries: BigNumber; - } - >; - - tradingRewardsEnabled(overrides?: CallOverrides): Promise; - - waitingPeriodSecs(overrides?: CallOverrides): Promise; - }; - - filters: { - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - - "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)"( - account?: string | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter; - ExchangeEntryAppended( - account?: string | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter; - - "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)"( - from?: string | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter; - ExchangeEntrySettled( - from?: string | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise; - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - priceDeviationThresholdFactor( - overrides?: CallOverrides - ): Promise; - - rebuildCache(overrides?: Overrides & { from?: string }): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - tradingRewardsEnabled(overrides?: CallOverrides): Promise; - - waitingPeriodSecs(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise; - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - priceDeviationThresholdFactor( - overrides?: CallOverrides - ): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - tradingRewardsEnabled( - overrides?: CallOverrides - ): Promise; - - waitingPeriodSecs(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: ExchangerInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }> + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber + fee: BigNumber + exchangeFeeRate: BigNumber + } + > + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise<[BigNumber]> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber + rebateAmount: BigNumber + numEntries: BigNumber + } + > + + tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]> + + waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]> + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber + fee: BigNumber + exchangeFeeRate: BigNumber + } + > + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber + rebateAmount: BigNumber + numEntries: BigNumber + } + > + + tradingRewardsEnabled(overrides?: CallOverrides): Promise + + waitingPeriodSecs(overrides?: CallOverrides): Promise + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: CallOverrides + ): Promise + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber + fee: BigNumber + exchangeFeeRate: BigNumber + } + > + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + settle( + from: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber + refunded: BigNumber + numEntriesSettled: BigNumber + } + > + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber + rebateAmount: BigNumber + numEntries: BigNumber + } + > + + tradingRewardsEnabled(overrides?: CallOverrides): Promise + + waitingPeriodSecs(overrides?: CallOverrides): Promise + } + + filters: { + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + + 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)'( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter + ExchangeEntryAppended( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter + + 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)'( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter + ExchangeEntrySettled( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + tradingRewardsEnabled(overrides?: CallOverrides): Promise + + waitingPeriodSecs(overrides?: CallOverrides): Promise + } + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + tradingRewardsEnabled(overrides?: CallOverrides): Promise + + waitingPeriodSecs(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/FuturesMarket.ts b/packages/sdk/src/contracts/types/FuturesMarket.ts index dc4be5c5d5..1b4d602966 100644 --- a/packages/sdk/src/contracts/types/FuturesMarket.ts +++ b/packages/sdk/src/contracts/types/FuturesMarket.ts @@ -2,1574 +2,1188 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface FuturesMarketInterface extends utils.Interface { - functions: { - "accessibleMargin(address)": FunctionFragment; - "accruedFunding(address)": FunctionFragment; - "assetPrice()": FunctionFragment; - "baseAsset()": FunctionFragment; - "canLiquidate(address)": FunctionFragment; - "cancelNextPriceOrder(address)": FunctionFragment; - "closePosition()": FunctionFragment; - "closePositionWithTracking(bytes32)": FunctionFragment; - "currentFundingRate()": FunctionFragment; - "executeNextPriceOrder(address)": FunctionFragment; - "fundingLastRecomputed()": FunctionFragment; - "fundingSequence(uint256)": FunctionFragment; - "fundingSequenceLength()": FunctionFragment; - "isResolverCached()": FunctionFragment; - "liquidatePosition(address)": FunctionFragment; - "liquidationFee(address)": FunctionFragment; - "liquidationPrice(address)": FunctionFragment; - "marketDebt()": FunctionFragment; - "marketKey()": FunctionFragment; - "marketSize()": FunctionFragment; - "marketSizes()": FunctionFragment; - "marketSkew()": FunctionFragment; - "modifyPosition(int256)": FunctionFragment; - "modifyPositionWithTracking(int256,bytes32)": FunctionFragment; - "nextPriceOrders(address)": FunctionFragment; - "notionalValue(address)": FunctionFragment; - "orderFee(int256)": FunctionFragment; - "positions(address)": FunctionFragment; - "postTradeDetails(int256,address)": FunctionFragment; - "profitLoss(address)": FunctionFragment; - "rebuildCache()": FunctionFragment; - "recomputeFunding()": FunctionFragment; - "remainingMargin(address)": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "submitNextPriceOrder(int256)": FunctionFragment; - "submitNextPriceOrderWithTracking(int256,bytes32)": FunctionFragment; - "transferMargin(int256)": FunctionFragment; - "unrecordedFunding()": FunctionFragment; - "withdrawAllMargin()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "accessibleMargin" - | "accruedFunding" - | "assetPrice" - | "baseAsset" - | "canLiquidate" - | "cancelNextPriceOrder" - | "closePosition" - | "closePositionWithTracking" - | "currentFundingRate" - | "executeNextPriceOrder" - | "fundingLastRecomputed" - | "fundingSequence" - | "fundingSequenceLength" - | "isResolverCached" - | "liquidatePosition" - | "liquidationFee" - | "liquidationPrice" - | "marketDebt" - | "marketKey" - | "marketSize" - | "marketSizes" - | "marketSkew" - | "modifyPosition" - | "modifyPositionWithTracking" - | "nextPriceOrders" - | "notionalValue" - | "orderFee" - | "positions" - | "postTradeDetails" - | "profitLoss" - | "rebuildCache" - | "recomputeFunding" - | "remainingMargin" - | "resolver" - | "resolverAddressesRequired" - | "submitNextPriceOrder" - | "submitNextPriceOrderWithTracking" - | "transferMargin" - | "unrecordedFunding" - | "withdrawAllMargin" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "accessibleMargin", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "accruedFunding", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "assetPrice", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; - encodeFunctionData( - functionFragment: "canLiquidate", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "cancelNextPriceOrder", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "closePosition", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "closePositionWithTracking", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "currentFundingRate", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "executeNextPriceOrder", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "fundingLastRecomputed", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "fundingSequence", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "fundingSequenceLength", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "liquidatePosition", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidationFee", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidationPrice", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "marketDebt", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; - encodeFunctionData( - functionFragment: "marketSize", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSizes", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSkew", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "modifyPosition", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "modifyPositionWithTracking", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "nextPriceOrders", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "notionalValue", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "orderFee", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "positions", values: [string]): string; - encodeFunctionData( - functionFragment: "postTradeDetails", - values: [BigNumberish, string] - ): string; - encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "recomputeFunding", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "remainingMargin", - values: [string] - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "submitNextPriceOrder", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "submitNextPriceOrderWithTracking", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "transferMargin", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "unrecordedFunding", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "withdrawAllMargin", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "accessibleMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accruedFunding", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "canLiquidate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "cancelNextPriceOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "closePosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "closePositionWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingRate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeNextPriceOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingLastRecomputed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequence", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequenceLength", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidatePosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationFee", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationPrice", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketSizes", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "modifyPosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "modifyPositionWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nextPriceOrders", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notionalValue", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "postTradeDetails", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "recomputeFunding", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "remainingMargin", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitNextPriceOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitNextPriceOrderWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unrecordedFunding", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawAllMargin", - data: BytesLike - ): Result; - - events: { - "CacheUpdated(bytes32,address)": EventFragment; - "FundingRecomputed(int256,uint256,uint256)": EventFragment; - "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; - "MarginTransferred(address,int256)": EventFragment; - "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; - "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)": EventFragment; - "PositionLiquidated(uint256,address,address,int256,uint256,uint256)": EventFragment; - "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FuturesTracking"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; - getEvent(nameOrSignatureOrTopic: "NextPriceOrderRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "NextPriceOrderSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; + functions: { + 'accessibleMargin(address)': FunctionFragment + 'accruedFunding(address)': FunctionFragment + 'assetPrice()': FunctionFragment + 'baseAsset()': FunctionFragment + 'canLiquidate(address)': FunctionFragment + 'cancelNextPriceOrder(address)': FunctionFragment + 'closePosition()': FunctionFragment + 'closePositionWithTracking(bytes32)': FunctionFragment + 'currentFundingRate()': FunctionFragment + 'executeNextPriceOrder(address)': FunctionFragment + 'fundingLastRecomputed()': FunctionFragment + 'fundingSequence(uint256)': FunctionFragment + 'fundingSequenceLength()': FunctionFragment + 'isResolverCached()': FunctionFragment + 'liquidatePosition(address)': FunctionFragment + 'liquidationFee(address)': FunctionFragment + 'liquidationPrice(address)': FunctionFragment + 'marketDebt()': FunctionFragment + 'marketKey()': FunctionFragment + 'marketSize()': FunctionFragment + 'marketSizes()': FunctionFragment + 'marketSkew()': FunctionFragment + 'modifyPosition(int256)': FunctionFragment + 'modifyPositionWithTracking(int256,bytes32)': FunctionFragment + 'nextPriceOrders(address)': FunctionFragment + 'notionalValue(address)': FunctionFragment + 'orderFee(int256)': FunctionFragment + 'positions(address)': FunctionFragment + 'postTradeDetails(int256,address)': FunctionFragment + 'profitLoss(address)': FunctionFragment + 'rebuildCache()': FunctionFragment + 'recomputeFunding()': FunctionFragment + 'remainingMargin(address)': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'submitNextPriceOrder(int256)': FunctionFragment + 'submitNextPriceOrderWithTracking(int256,bytes32)': FunctionFragment + 'transferMargin(int256)': FunctionFragment + 'unrecordedFunding()': FunctionFragment + 'withdrawAllMargin()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'accessibleMargin' + | 'accruedFunding' + | 'assetPrice' + | 'baseAsset' + | 'canLiquidate' + | 'cancelNextPriceOrder' + | 'closePosition' + | 'closePositionWithTracking' + | 'currentFundingRate' + | 'executeNextPriceOrder' + | 'fundingLastRecomputed' + | 'fundingSequence' + | 'fundingSequenceLength' + | 'isResolverCached' + | 'liquidatePosition' + | 'liquidationFee' + | 'liquidationPrice' + | 'marketDebt' + | 'marketKey' + | 'marketSize' + | 'marketSizes' + | 'marketSkew' + | 'modifyPosition' + | 'modifyPositionWithTracking' + | 'nextPriceOrders' + | 'notionalValue' + | 'orderFee' + | 'positions' + | 'postTradeDetails' + | 'profitLoss' + | 'rebuildCache' + | 'recomputeFunding' + | 'remainingMargin' + | 'resolver' + | 'resolverAddressesRequired' + | 'submitNextPriceOrder' + | 'submitNextPriceOrderWithTracking' + | 'transferMargin' + | 'unrecordedFunding' + | 'withdrawAllMargin' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string + encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string + encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string + encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string + encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string + encodeFunctionData(functionFragment: 'cancelNextPriceOrder', values: [string]): string + encodeFunctionData(functionFragment: 'closePosition', values?: undefined): string + encodeFunctionData(functionFragment: 'closePositionWithTracking', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string + encodeFunctionData(functionFragment: 'executeNextPriceOrder', values: [string]): string + encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string + encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'liquidatePosition', values: [string]): string + encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string + encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string + encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string + encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string + encodeFunctionData(functionFragment: 'modifyPosition', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'modifyPositionWithTracking', + values: [BigNumberish, BytesLike] + ): string + encodeFunctionData(functionFragment: 'nextPriceOrders', values: [string]): string + encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string + encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'positions', values: [string]): string + encodeFunctionData(functionFragment: 'postTradeDetails', values: [BigNumberish, string]): string + encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string + encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'submitNextPriceOrder', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'submitNextPriceOrderWithTracking', + values: [BigNumberish, BytesLike] + ): string + encodeFunctionData(functionFragment: 'transferMargin', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string + encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string + + decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'cancelNextPriceOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'executeNextPriceOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nextPriceOrders', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'submitNextPriceOrder', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'submitNextPriceOrderWithTracking', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result + + events: { + 'CacheUpdated(bytes32,address)': EventFragment + 'FundingRecomputed(int256,uint256,uint256)': EventFragment + 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment + 'MarginTransferred(address,int256)': EventFragment + 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment + 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)': EventFragment + 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)': EventFragment + 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FuturesTracking'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment + getEvent(nameOrSignatureOrTopic: 'NextPriceOrderRemoved'): EventFragment + getEvent(nameOrSignatureOrTopic: 'NextPriceOrderSubmitted'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment } export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface FundingRecomputedEventObject { - funding: BigNumber; - index: BigNumber; - timestamp: BigNumber; + funding: BigNumber + index: BigNumber + timestamp: BigNumber } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject ->; + [BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +> -export type FundingRecomputedEventFilter = - TypedEventFilter; +export type FundingRecomputedEventFilter = TypedEventFilter export interface FuturesTrackingEventObject { - trackingCode: string; - baseAsset: string; - marketKey: string; - sizeDelta: BigNumber; - fee: BigNumber; + trackingCode: string + baseAsset: string + marketKey: string + sizeDelta: BigNumber + fee: BigNumber } export type FuturesTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - FuturesTrackingEventObject ->; + [string, string, string, BigNumber, BigNumber], + FuturesTrackingEventObject +> -export type FuturesTrackingEventFilter = TypedEventFilter; +export type FuturesTrackingEventFilter = TypedEventFilter export interface MarginTransferredEventObject { - account: string; - marginDelta: BigNumber; + account: string + marginDelta: BigNumber } -export type MarginTransferredEvent = TypedEvent< - [string, BigNumber], - MarginTransferredEventObject ->; +export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> -export type MarginTransferredEventFilter = - TypedEventFilter; +export type MarginTransferredEventFilter = TypedEventFilter export interface NextPriceOrderRemovedEventObject { - account: string; - currentRoundId: BigNumber; - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; + account: string + currentRoundId: BigNumber + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string } export type NextPriceOrderRemovedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderRemovedEventObject ->; + [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderRemovedEventObject +> -export type NextPriceOrderRemovedEventFilter = - TypedEventFilter; +export type NextPriceOrderRemovedEventFilter = TypedEventFilter export interface NextPriceOrderSubmittedEventObject { - account: string; - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; + account: string + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string } export type NextPriceOrderSubmittedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderSubmittedEventObject ->; + [string, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderSubmittedEventObject +> -export type NextPriceOrderSubmittedEventFilter = - TypedEventFilter; +export type NextPriceOrderSubmittedEventFilter = TypedEventFilter export interface PositionLiquidatedEventObject { - id: BigNumber; - account: string; - liquidator: string; - size: BigNumber; - price: BigNumber; - fee: BigNumber; + id: BigNumber + account: string + liquidator: string + size: BigNumber + price: BigNumber + fee: BigNumber } export type PositionLiquidatedEvent = TypedEvent< - [BigNumber, string, string, BigNumber, BigNumber, BigNumber], - PositionLiquidatedEventObject ->; + [BigNumber, string, string, BigNumber, BigNumber, BigNumber], + PositionLiquidatedEventObject +> -export type PositionLiquidatedEventFilter = - TypedEventFilter; +export type PositionLiquidatedEventFilter = TypedEventFilter export interface PositionModifiedEventObject { - id: BigNumber; - account: string; - margin: BigNumber; - size: BigNumber; - tradeSize: BigNumber; - lastPrice: BigNumber; - fundingIndex: BigNumber; - fee: BigNumber; + id: BigNumber + account: string + margin: BigNumber + size: BigNumber + tradeSize: BigNumber + lastPrice: BigNumber + fundingIndex: BigNumber + fee: BigNumber } export type PositionModifiedEvent = TypedEvent< - [ - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ], - PositionModifiedEventObject ->; - -export type PositionModifiedEventFilter = - TypedEventFilter; + [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + PositionModifiedEventObject +> + +export type PositionModifiedEventFilter = TypedEventFilter export interface FuturesMarket extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: FuturesMarketInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise<[string]>; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; - - fundingSequence( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise<[string]>; - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; - } - >; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - } - >; - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - resolver(overrides?: CallOverrides): Promise<[string]>; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; - } - >; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - } - >; - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - cancelNextPriceOrder( - account: string, - overrides?: CallOverrides - ): Promise; - - closePosition(overrides?: CallOverrides): Promise; - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - executeNextPriceOrder( - account: string, - overrides?: CallOverrides - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; - } - >; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - } - >; - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - rebuildCache(overrides?: CallOverrides): Promise; - - recomputeFunding(overrides?: CallOverrides): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin(overrides?: CallOverrides): Promise; - }; - - filters: { - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - - "FundingRecomputed(int256,uint256,uint256)"( - funding?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter; - FundingRecomputed( - funding?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter; - - "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)"( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter; - FuturesTracking( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter; - - "MarginTransferred(address,int256)"( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter; - MarginTransferred( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter; - - "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)"( - account?: string | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter; - NextPriceOrderRemoved( - account?: string | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter; - - "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)"( - account?: string | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter; - NextPriceOrderSubmitted( - account?: string | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter; - - "PositionLiquidated(uint256,address,address,int256,uint256,uint256)"( - id?: BigNumberish | null, - account?: string | null, - liquidator?: string | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter; - PositionLiquidated( - id?: BigNumberish | null, - account?: string | null, - liquidator?: string | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter; - - "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)"( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter; - PositionModified( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter; - }; - - estimateGas: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; - - assetPrice(overrides?: CallOverrides): Promise; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; - - marketDebt(overrides?: CallOverrides): Promise; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes(overrides?: CallOverrides): Promise; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: FuturesMarketInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise<[string]> + + canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition(overrides?: Overrides & { from?: string }): Promise + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> + + fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise<[string]> + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]> + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string + } + > + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } + > + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition(overrides?: Overrides & { from?: string }): Promise + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string + } + > + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } + > + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelNextPriceOrder(account: string, overrides?: CallOverrides): Promise + + closePosition(overrides?: CallOverrides): Promise + + closePositionWithTracking(trackingCode: BytesLike, overrides?: CallOverrides): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + executeNextPriceOrder(account: string, overrides?: CallOverrides): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + liquidatePosition(account: string, overrides?: CallOverrides): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string + } + > + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } + > + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + rebuildCache(overrides?: CallOverrides): Promise + + recomputeFunding(overrides?: CallOverrides): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + submitNextPriceOrder(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + transferMargin(marginDelta: BigNumberish, overrides?: CallOverrides): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: CallOverrides): Promise + } + + filters: { + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + + 'FundingRecomputed(int256,uint256,uint256)'( + funding?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter + FundingRecomputed(funding?: null, index?: null, timestamp?: null): FundingRecomputedEventFilter + + 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)'( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter + FuturesTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter + + 'MarginTransferred(address,int256)'( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter + MarginTransferred(account?: string | null, marginDelta?: null): MarginTransferredEventFilter + + 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)'( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter + NextPriceOrderRemoved( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter + + 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)'( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter + NextPriceOrderSubmitted( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter + + 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)'( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter + PositionLiquidated( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter + + 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)'( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter + } + + estimateGas: { + accessibleMargin(account: string, overrides?: CallOverrides): Promise + + accruedFunding(account: string, overrides?: CallOverrides): Promise + + assetPrice(overrides?: CallOverrides): Promise + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition(overrides?: Overrides & { from?: string }): Promise + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice(account: string, overrides?: CallOverrides): Promise + + marketDebt(overrides?: CallOverrides): Promise + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes(overrides?: CallOverrides): Promise + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nextPriceOrders(arg0: string, overrides?: CallOverrides): Promise + + notionalValue(account: string, overrides?: CallOverrides): Promise + + orderFee(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + + positions(arg0: string, overrides?: CallOverrides): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise + + profitLoss(account: string, overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin(account: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding(overrides?: CallOverrides): Promise + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } + + populateTransaction: { + accessibleMargin(account: string, overrides?: CallOverrides): Promise + + accruedFunding(account: string, overrides?: CallOverrides): Promise + + assetPrice(overrides?: CallOverrides): Promise + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition(overrides?: Overrides & { from?: string }): Promise + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice(account: string, overrides?: CallOverrides): Promise - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; + marketDebt(overrides?: CallOverrides): Promise - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; + marketKey(overrides?: CallOverrides): Promise - positions(arg0: string, overrides?: CallOverrides): Promise; + marketSize(overrides?: CallOverrides): Promise - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; + marketSizes(overrides?: CallOverrides): Promise - profitLoss(account: string, overrides?: CallOverrides): Promise; + marketSkew(overrides?: CallOverrides): Promise - rebuildCache(overrides?: Overrides & { from?: string }): Promise; + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; + nextPriceOrders(arg0: string, overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + notionalValue(account: string, overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + orderFee(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + positions(arg0: string, overrides?: CallOverrides): Promise - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + profitLoss(account: string, overrides?: CallOverrides): Promise - unrecordedFunding(overrides?: CallOverrides): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; + recomputeFunding(overrides?: Overrides & { from?: string }): Promise - populateTransaction: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; + remainingMargin(account: string, overrides?: CallOverrides): Promise - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; + resolver(overrides?: CallOverrides): Promise - assetPrice(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - baseAsset(overrides?: CallOverrides): Promise; + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate( - overrides?: CallOverrides - ): Promise; - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed( - overrides?: CallOverrides - ): Promise; + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - fundingSequence( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; + unrecordedFunding(overrides?: CallOverrides): Promise - fundingSequenceLength( - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; - - marketDebt(overrides?: CallOverrides): Promise; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes(overrides?: CallOverrides): Promise; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise; - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding(overrides?: CallOverrides): Promise; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } } diff --git a/packages/sdk/src/contracts/types/FuturesMarketData.ts b/packages/sdk/src/contracts/types/FuturesMarketData.ts index 62511c5ad3..e64a14b500 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketData.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketData.ts @@ -2,642 +2,535 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace FuturesMarketData { - export type FeeRatesStruct = { - takerFee: BigNumberish; - makerFee: BigNumberish; - takerFeeNextPrice: BigNumberish; - makerFeeNextPrice: BigNumberish; - }; - - export type FeeRatesStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber; - makerFee: BigNumber; - takerFeeNextPrice: BigNumber; - makerFeeNextPrice: BigNumber; - }; - - export type MarketSummaryStruct = { - market: string; - asset: BytesLike; - key: BytesLike; - maxLeverage: BigNumberish; - price: BigNumberish; - marketSize: BigNumberish; - marketSkew: BigNumberish; - marketDebt: BigNumberish; - currentFundingRate: BigNumberish; - feeRates: FuturesMarketData.FeeRatesStruct; - }; - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - FuturesMarketData.FeeRatesStructOutput - ] & { - market: string; - asset: string; - key: string; - maxLeverage: BigNumber; - price: BigNumber; - marketSize: BigNumber; - marketSkew: BigNumber; - marketDebt: BigNumber; - currentFundingRate: BigNumber; - feeRates: FuturesMarketData.FeeRatesStructOutput; - }; - - export type FuturesGlobalsStruct = { - minInitialMargin: BigNumberish; - liquidationFeeRatio: BigNumberish; - liquidationBufferRatio: BigNumberish; - minKeeperFee: BigNumberish; - }; - - export type FuturesGlobalsStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - minInitialMargin: BigNumber; - liquidationFeeRatio: BigNumber; - liquidationBufferRatio: BigNumber; - minKeeperFee: BigNumber; - }; - - export type MarketLimitsStruct = { - maxLeverage: BigNumberish; - maxMarketValueUSD: BigNumberish; - }; - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber; - maxMarketValueUSD: BigNumber; - }; - - export type FundingParametersStruct = { - maxFundingRate: BigNumberish; - skewScaleUSD: BigNumberish; - }; - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingRate: BigNumber; - skewScaleUSD: BigNumber; - }; - - export type SidesStruct = { long: BigNumberish; short: BigNumberish }; - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber; - short: BigNumber; - }; - - export type MarketSizeDetailsStruct = { - marketSize: BigNumberish; - sides: FuturesMarketData.SidesStruct; - marketDebt: BigNumberish; - marketSkew: BigNumberish; - }; - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - FuturesMarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber; - sides: FuturesMarketData.SidesStructOutput; - marketDebt: BigNumber; - marketSkew: BigNumber; - }; - - export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber; - invalid: boolean; - }; - - export type MarketDataStruct = { - market: string; - baseAsset: BytesLike; - marketKey: BytesLike; - feeRates: FuturesMarketData.FeeRatesStruct; - limits: FuturesMarketData.MarketLimitsStruct; - fundingParameters: FuturesMarketData.FundingParametersStruct; - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct; - priceDetails: FuturesMarketData.PriceDetailsStruct; - }; - - export type MarketDataStructOutput = [ - string, - string, - string, - FuturesMarketData.FeeRatesStructOutput, - FuturesMarketData.MarketLimitsStructOutput, - FuturesMarketData.FundingParametersStructOutput, - FuturesMarketData.MarketSizeDetailsStructOutput, - FuturesMarketData.PriceDetailsStructOutput - ] & { - market: string; - baseAsset: string; - marketKey: string; - feeRates: FuturesMarketData.FeeRatesStructOutput; - limits: FuturesMarketData.MarketLimitsStructOutput; - fundingParameters: FuturesMarketData.FundingParametersStructOutput; - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput; - priceDetails: FuturesMarketData.PriceDetailsStructOutput; - }; - - export type PositionDataStruct = { - position: IFuturesMarketBaseTypes.PositionStruct; - notionalValue: BigNumberish; - profitLoss: BigNumberish; - accruedFunding: BigNumberish; - remainingMargin: BigNumberish; - accessibleMargin: BigNumberish; - liquidationPrice: BigNumberish; - canLiquidatePosition: boolean; - }; - - export type PositionDataStructOutput = [ - IFuturesMarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IFuturesMarketBaseTypes.PositionStructOutput; - notionalValue: BigNumber; - profitLoss: BigNumber; - accruedFunding: BigNumber; - remainingMargin: BigNumber; - accessibleMargin: BigNumber; - liquidationPrice: BigNumber; - canLiquidatePosition: boolean; - }; + export type FeeRatesStruct = { + takerFee: BigNumberish + makerFee: BigNumberish + takerFeeNextPrice: BigNumberish + makerFeeNextPrice: BigNumberish + } + + export type FeeRatesStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { + takerFee: BigNumber + makerFee: BigNumber + takerFeeNextPrice: BigNumber + makerFeeNextPrice: BigNumber + } + + export type MarketSummaryStruct = { + market: string + asset: BytesLike + key: BytesLike + maxLeverage: BigNumberish + price: BigNumberish + marketSize: BigNumberish + marketSkew: BigNumberish + marketDebt: BigNumberish + currentFundingRate: BigNumberish + feeRates: FuturesMarketData.FeeRatesStruct + } + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + FuturesMarketData.FeeRatesStructOutput + ] & { + market: string + asset: string + key: string + maxLeverage: BigNumber + price: BigNumber + marketSize: BigNumber + marketSkew: BigNumber + marketDebt: BigNumber + currentFundingRate: BigNumber + feeRates: FuturesMarketData.FeeRatesStructOutput + } + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish + liquidationFeeRatio: BigNumberish + liquidationBufferRatio: BigNumberish + minKeeperFee: BigNumberish + } + + export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { + minInitialMargin: BigNumber + liquidationFeeRatio: BigNumber + liquidationBufferRatio: BigNumber + minKeeperFee: BigNumber + } + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish + maxMarketValueUSD: BigNumberish + } + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber + maxMarketValueUSD: BigNumber + } + + export type FundingParametersStruct = { + maxFundingRate: BigNumberish + skewScaleUSD: BigNumberish + } + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingRate: BigNumber + skewScaleUSD: BigNumber + } + + export type SidesStruct = { long: BigNumberish; short: BigNumberish } + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber + short: BigNumber + } + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish + sides: FuturesMarketData.SidesStruct + marketDebt: BigNumberish + marketSkew: BigNumberish + } + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + FuturesMarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber + sides: FuturesMarketData.SidesStructOutput + marketDebt: BigNumber + marketSkew: BigNumber + } + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean } + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber + invalid: boolean + } + + export type MarketDataStruct = { + market: string + baseAsset: BytesLike + marketKey: BytesLike + feeRates: FuturesMarketData.FeeRatesStruct + limits: FuturesMarketData.MarketLimitsStruct + fundingParameters: FuturesMarketData.FundingParametersStruct + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct + priceDetails: FuturesMarketData.PriceDetailsStruct + } + + export type MarketDataStructOutput = [ + string, + string, + string, + FuturesMarketData.FeeRatesStructOutput, + FuturesMarketData.MarketLimitsStructOutput, + FuturesMarketData.FundingParametersStructOutput, + FuturesMarketData.MarketSizeDetailsStructOutput, + FuturesMarketData.PriceDetailsStructOutput + ] & { + market: string + baseAsset: string + marketKey: string + feeRates: FuturesMarketData.FeeRatesStructOutput + limits: FuturesMarketData.MarketLimitsStructOutput + fundingParameters: FuturesMarketData.FundingParametersStructOutput + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput + priceDetails: FuturesMarketData.PriceDetailsStructOutput + } + + export type PositionDataStruct = { + position: IFuturesMarketBaseTypes.PositionStruct + notionalValue: BigNumberish + profitLoss: BigNumberish + accruedFunding: BigNumberish + remainingMargin: BigNumberish + accessibleMargin: BigNumberish + liquidationPrice: BigNumberish + canLiquidatePosition: boolean + } + + export type PositionDataStructOutput = [ + IFuturesMarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IFuturesMarketBaseTypes.PositionStructOutput + notionalValue: BigNumber + profitLoss: BigNumber + accruedFunding: BigNumber + remainingMargin: BigNumber + accessibleMargin: BigNumber + liquidationPrice: BigNumber + canLiquidatePosition: boolean + } } export declare namespace IFuturesMarketSettings { - export type ParametersStruct = { - takerFee: BigNumberish; - makerFee: BigNumberish; - takerFeeNextPrice: BigNumberish; - makerFeeNextPrice: BigNumberish; - nextPriceConfirmWindow: BigNumberish; - maxLeverage: BigNumberish; - maxMarketValueUSD: BigNumberish; - maxFundingRate: BigNumberish; - skewScaleUSD: BigNumberish; - }; - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber; - makerFee: BigNumber; - takerFeeNextPrice: BigNumber; - makerFeeNextPrice: BigNumber; - nextPriceConfirmWindow: BigNumber; - maxLeverage: BigNumber; - maxMarketValueUSD: BigNumber; - maxFundingRate: BigNumber; - skewScaleUSD: BigNumber; - }; + export type ParametersStruct = { + takerFee: BigNumberish + makerFee: BigNumberish + takerFeeNextPrice: BigNumberish + makerFeeNextPrice: BigNumberish + nextPriceConfirmWindow: BigNumberish + maxLeverage: BigNumberish + maxMarketValueUSD: BigNumberish + maxFundingRate: BigNumberish + skewScaleUSD: BigNumberish + } + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber + makerFee: BigNumber + takerFeeNextPrice: BigNumber + makerFeeNextPrice: BigNumber + nextPriceConfirmWindow: BigNumber + maxLeverage: BigNumber + maxMarketValueUSD: BigNumber + maxFundingRate: BigNumber + skewScaleUSD: BigNumber + } } export declare namespace IFuturesMarketBaseTypes { - export type PositionStruct = { - id: BigNumberish; - lastFundingIndex: BigNumberish; - margin: BigNumberish; - lastPrice: BigNumberish; - size: BigNumberish; - }; - - export type PositionStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - }; + export type PositionStruct = { + id: BigNumberish + lastFundingIndex: BigNumberish + margin: BigNumberish + lastPrice: BigNumberish + size: BigNumberish + } + + export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } } export interface FuturesMarketDataInterface extends utils.Interface { - functions: { - "allMarketSummaries()": FunctionFragment; - "globals()": FunctionFragment; - "marketDetails(address)": FunctionFragment; - "marketDetailsForKey(bytes32)": FunctionFragment; - "marketSummaries(address[])": FunctionFragment; - "marketSummariesForKeys(bytes32[])": FunctionFragment; - "parameters(bytes32)": FunctionFragment; - "positionDetails(address,address)": FunctionFragment; - "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; - "resolverProxy()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "allMarketSummaries" - | "globals" - | "marketDetails" - | "marketDetailsForKey" - | "marketSummaries" - | "marketSummariesForKeys" - | "parameters" - | "positionDetails" - | "positionDetailsForMarketKey" - | "resolverProxy" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "allMarketSummaries", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "globals", values?: undefined): string; - encodeFunctionData( - functionFragment: "marketDetails", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "marketDetailsForKey", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "marketSummaries", - values: [string[]] - ): string; - encodeFunctionData( - functionFragment: "marketSummariesForKeys", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "parameters", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "positionDetails", - values: [string, string] - ): string; - encodeFunctionData( - functionFragment: "positionDetailsForMarketKey", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "resolverProxy", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "allMarketSummaries", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketDetails", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketDetailsForKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketSummaries", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketSummariesForKeys", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "positionDetails", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "positionDetailsForMarketKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resolverProxy", - data: BytesLike - ): Result; - - events: {}; + functions: { + 'allMarketSummaries()': FunctionFragment + 'globals()': FunctionFragment + 'marketDetails(address)': FunctionFragment + 'marketDetailsForKey(bytes32)': FunctionFragment + 'marketSummaries(address[])': FunctionFragment + 'marketSummariesForKeys(bytes32[])': FunctionFragment + 'parameters(bytes32)': FunctionFragment + 'positionDetails(address,address)': FunctionFragment + 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment + 'resolverProxy()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'allMarketSummaries' + | 'globals' + | 'marketDetails' + | 'marketDetailsForKey' + | 'marketSummaries' + | 'marketSummariesForKeys' + | 'parameters' + | 'positionDetails' + | 'positionDetailsForMarketKey' + | 'resolverProxy' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string + encodeFunctionData(functionFragment: 'globals', values?: undefined): string + encodeFunctionData(functionFragment: 'marketDetails', values: [string]): string + encodeFunctionData(functionFragment: 'marketDetailsForKey', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'marketSummaries', values: [string[]]): string + encodeFunctionData(functionFragment: 'marketSummariesForKeys', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'positionDetails', values: [string, string]): string + encodeFunctionData( + functionFragment: 'positionDetailsForMarketKey', + values: [BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string + + decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result + + events: {} } export interface FuturesMarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: FuturesMarketDataInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; - - globals( - overrides?: CallOverrides - ): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]>; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]>; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]>; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[IFuturesMarketSettings.ParametersStructOutput]>; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]>; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]>; - - resolverProxy(overrides?: CallOverrides): Promise<[string]>; - }; - - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals( - overrides?: CallOverrides - ): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals( - overrides?: CallOverrides - ): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise; - - globals(overrides?: CallOverrides): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals(overrides?: CallOverrides): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: FuturesMarketDataInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> + + globals(overrides?: CallOverrides): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]> + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]> + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]> + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IFuturesMarketSettings.ParametersStructOutput]> + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]> + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]> + + resolverProxy(overrides?: CallOverrides): Promise<[string]> + } + + allMarketSummaries( + overrides?: CallOverrides + ): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } + + filters: {} + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails(market: string, overrides?: CallOverrides): Promise + + marketDetailsForKey(marketKey: BytesLike, overrides?: CallOverrides): Promise + + marketSummaries(markets: string[], overrides?: CallOverrides): Promise + + marketSummariesForKeys(marketKeys: BytesLike[], overrides?: CallOverrides): Promise + + parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise + + positionDetails(market: string, account: string, overrides?: CallOverrides): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } + + populateTransaction: { + allMarketSummaries(overrides?: CallOverrides): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails(market: string, overrides?: CallOverrides): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries(markets: string[], overrides?: CallOverrides): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts index abb7a378ec..2a7686c976 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts @@ -237,9 +237,8 @@ export type LiquidationBufferRatioUpdatedEvent = TypedEvent< LiquidationBufferRatioUpdatedEventObject > -export type LiquidationBufferRatioUpdatedEventFilter = TypedEventFilter< - LiquidationBufferRatioUpdatedEvent -> +export type LiquidationBufferRatioUpdatedEventFilter = + TypedEventFilter export interface LiquidationFeeRatioUpdatedEventObject { bps: BigNumber @@ -249,9 +248,8 @@ export type LiquidationFeeRatioUpdatedEvent = TypedEvent< LiquidationFeeRatioUpdatedEventObject > -export type LiquidationFeeRatioUpdatedEventFilter = TypedEventFilter< - LiquidationFeeRatioUpdatedEvent -> +export type LiquidationFeeRatioUpdatedEventFilter = + TypedEventFilter export interface MinInitialMarginUpdatedEventObject { minMargin: BigNumber diff --git a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts index 164d7f8f65..ce22700ddf 100644 --- a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts +++ b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts @@ -453,9 +453,7 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise<[string] & { positionID: string }> - getUnderlyingBalances( - overrides?: CallOverrides - ): Promise< + getUnderlyingBalances(overrides?: CallOverrides): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber @@ -649,9 +647,7 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise - getUnderlyingBalances( - overrides?: CallOverrides - ): Promise< + getUnderlyingBalances(overrides?: CallOverrides): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber @@ -847,9 +843,7 @@ export interface KwentaArrakisVault extends BaseContract { getPositionID(overrides?: CallOverrides): Promise - getUnderlyingBalances( - overrides?: CallOverrides - ): Promise< + getUnderlyingBalances(overrides?: CallOverrides): Promise< [BigNumber, BigNumber] & { amount0Current: BigNumber amount1Current: BigNumber diff --git a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts index 743af98c61..7581d4b0db 100644 --- a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts +++ b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts @@ -2,1139 +2,811 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface KwentaStakingRewardsInterface extends utils.Interface { - functions: { - "_totalSupply()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "earned(address)": FunctionFragment; - "escrowedBalanceOf(address)": FunctionFragment; - "exit()": FunctionFragment; - "getReward()": FunctionFragment; - "getRewardForDuration()": FunctionFragment; - "lastTimeRewardApplicable()": FunctionFragment; - "lastUpdateTime()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "nonEscrowedBalanceOf(address)": FunctionFragment; - "notifyRewardAmount(uint256)": FunctionFragment; - "owner()": FunctionFragment; - "pauseStakingRewards()": FunctionFragment; - "paused()": FunctionFragment; - "periodFinish()": FunctionFragment; - "recoverERC20(address,uint256)": FunctionFragment; - "rewardEscrow()": FunctionFragment; - "rewardPerToken()": FunctionFragment; - "rewardPerTokenStored()": FunctionFragment; - "rewardRate()": FunctionFragment; - "rewards(address)": FunctionFragment; - "rewardsDuration()": FunctionFragment; - "setRewardsDuration(uint256)": FunctionFragment; - "stake(uint256)": FunctionFragment; - "stakeEscrow(address,uint256)": FunctionFragment; - "supplySchedule()": FunctionFragment; - "token()": FunctionFragment; - "totalSupply()": FunctionFragment; - "unpauseStakingRewards()": FunctionFragment; - "unstake(uint256)": FunctionFragment; - "unstakeEscrow(address,uint256)": FunctionFragment; - "userRewardPerTokenPaid(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "_totalSupply" - | "acceptOwnership" - | "balanceOf" - | "earned" - | "escrowedBalanceOf" - | "exit" - | "getReward" - | "getRewardForDuration" - | "lastTimeRewardApplicable" - | "lastUpdateTime" - | "nominateNewOwner" - | "nominatedOwner" - | "nonEscrowedBalanceOf" - | "notifyRewardAmount" - | "owner" - | "pauseStakingRewards" - | "paused" - | "periodFinish" - | "recoverERC20" - | "rewardEscrow" - | "rewardPerToken" - | "rewardPerTokenStored" - | "rewardRate" - | "rewards" - | "rewardsDuration" - | "setRewardsDuration" - | "stake" - | "stakeEscrow" - | "supplySchedule" - | "token" - | "totalSupply" - | "unpauseStakingRewards" - | "unstake" - | "unstakeEscrow" - | "userRewardPerTokenPaid" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "_totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData(functionFragment: "earned", values: [string]): string; - encodeFunctionData( - functionFragment: "escrowedBalanceOf", - values: [string] - ): string; - encodeFunctionData(functionFragment: "exit", values?: undefined): string; - encodeFunctionData(functionFragment: "getReward", values?: undefined): string; - encodeFunctionData( - functionFragment: "getRewardForDuration", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastTimeRewardApplicable", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastUpdateTime", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nonEscrowedBalanceOf", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "notifyRewardAmount", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "pauseStakingRewards", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData( - functionFragment: "periodFinish", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "recoverERC20", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "rewardEscrow", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardPerToken", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardPerTokenStored", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardRate", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "rewards", values: [string]): string; - encodeFunctionData( - functionFragment: "rewardsDuration", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "setRewardsDuration", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; - encodeFunctionData( - functionFragment: "stakeEscrow", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "supplySchedule", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "token", values?: undefined): string; - encodeFunctionData( - functionFragment: "totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "unpauseStakingRewards", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "unstake", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "unstakeEscrow", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "userRewardPerTokenPaid", - values: [string] - ): string; - - decodeFunctionResult( - functionFragment: "_totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "escrowedBalanceOf", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getRewardForDuration", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastTimeRewardApplicable", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastUpdateTime", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nonEscrowedBalanceOf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notifyRewardAmount", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "pauseStakingRewards", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "periodFinish", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "recoverERC20", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardEscrow", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardPerToken", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardPerTokenStored", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rewardsDuration", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setRewardsDuration", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "stakeEscrow", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supplySchedule", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unpauseStakingRewards", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "unstake", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "unstakeEscrow", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "userRewardPerTokenPaid", - data: BytesLike - ): Result; - - events: { - "EscrowStaked(address,uint256)": EventFragment; - "EscrowUnstaked(address,uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "Paused(address)": EventFragment; - "Recovered(address,uint256)": EventFragment; - "RewardAdded(uint256)": EventFragment; - "RewardPaid(address,uint256)": EventFragment; - "RewardsDurationUpdated(uint256)": EventFragment; - "Staked(address,uint256)": EventFragment; - "Unpaused(address)": EventFragment; - "Unstaked(address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "EscrowStaked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "EscrowUnstaked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Unstaked"): EventFragment; + functions: { + '_totalSupply()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'earned(address)': FunctionFragment + 'escrowedBalanceOf(address)': FunctionFragment + 'exit()': FunctionFragment + 'getReward()': FunctionFragment + 'getRewardForDuration()': FunctionFragment + 'lastTimeRewardApplicable()': FunctionFragment + 'lastUpdateTime()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'nonEscrowedBalanceOf(address)': FunctionFragment + 'notifyRewardAmount(uint256)': FunctionFragment + 'owner()': FunctionFragment + 'pauseStakingRewards()': FunctionFragment + 'paused()': FunctionFragment + 'periodFinish()': FunctionFragment + 'recoverERC20(address,uint256)': FunctionFragment + 'rewardEscrow()': FunctionFragment + 'rewardPerToken()': FunctionFragment + 'rewardPerTokenStored()': FunctionFragment + 'rewardRate()': FunctionFragment + 'rewards(address)': FunctionFragment + 'rewardsDuration()': FunctionFragment + 'setRewardsDuration(uint256)': FunctionFragment + 'stake(uint256)': FunctionFragment + 'stakeEscrow(address,uint256)': FunctionFragment + 'supplySchedule()': FunctionFragment + 'token()': FunctionFragment + 'totalSupply()': FunctionFragment + 'unpauseStakingRewards()': FunctionFragment + 'unstake(uint256)': FunctionFragment + 'unstakeEscrow(address,uint256)': FunctionFragment + 'userRewardPerTokenPaid(address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | '_totalSupply' + | 'acceptOwnership' + | 'balanceOf' + | 'earned' + | 'escrowedBalanceOf' + | 'exit' + | 'getReward' + | 'getRewardForDuration' + | 'lastTimeRewardApplicable' + | 'lastUpdateTime' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'nonEscrowedBalanceOf' + | 'notifyRewardAmount' + | 'owner' + | 'pauseStakingRewards' + | 'paused' + | 'periodFinish' + | 'recoverERC20' + | 'rewardEscrow' + | 'rewardPerToken' + | 'rewardPerTokenStored' + | 'rewardRate' + | 'rewards' + | 'rewardsDuration' + | 'setRewardsDuration' + | 'stake' + | 'stakeEscrow' + | 'supplySchedule' + | 'token' + | 'totalSupply' + | 'unpauseStakingRewards' + | 'unstake' + | 'unstakeEscrow' + | 'userRewardPerTokenPaid' + ): FunctionFragment + + encodeFunctionData(functionFragment: '_totalSupply', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'earned', values: [string]): string + encodeFunctionData(functionFragment: 'escrowedBalanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'exit', values?: undefined): string + encodeFunctionData(functionFragment: 'getReward', values?: undefined): string + encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string + encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string + encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'nonEscrowedBalanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'notifyRewardAmount', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'pauseStakingRewards', values?: undefined): string + encodeFunctionData(functionFragment: 'paused', values?: undefined): string + encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string + encodeFunctionData(functionFragment: 'recoverERC20', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string + encodeFunctionData(functionFragment: 'rewards', values: [string]): string + encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string + encodeFunctionData(functionFragment: 'setRewardsDuration', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'stake', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'stakeEscrow', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'supplySchedule', values?: undefined): string + encodeFunctionData(functionFragment: 'token', values?: undefined): string + encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string + encodeFunctionData(functionFragment: 'unpauseStakingRewards', values?: undefined): string + encodeFunctionData(functionFragment: 'unstake', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'unstakeEscrow', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'userRewardPerTokenPaid', values: [string]): string + + decodeFunctionResult(functionFragment: '_totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'escrowedBalanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nonEscrowedBalanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'pauseStakingRewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'supplySchedule', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unpauseStakingRewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unstake', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result + + events: { + 'EscrowStaked(address,uint256)': EventFragment + 'EscrowUnstaked(address,uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'Paused(address)': EventFragment + 'Recovered(address,uint256)': EventFragment + 'RewardAdded(uint256)': EventFragment + 'RewardPaid(address,uint256)': EventFragment + 'RewardsDurationUpdated(uint256)': EventFragment + 'Staked(address,uint256)': EventFragment + 'Unpaused(address)': EventFragment + 'Unstaked(address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'EscrowStaked'): EventFragment + getEvent(nameOrSignatureOrTopic: 'EscrowUnstaked'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Paused'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Unpaused'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Unstaked'): EventFragment } export interface EscrowStakedEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type EscrowStakedEvent = TypedEvent< - [string, BigNumber], - EscrowStakedEventObject ->; +export type EscrowStakedEvent = TypedEvent<[string, BigNumber], EscrowStakedEventObject> -export type EscrowStakedEventFilter = TypedEventFilter; +export type EscrowStakedEventFilter = TypedEventFilter export interface EscrowUnstakedEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type EscrowUnstakedEvent = TypedEvent< - [string, BigNumber], - EscrowUnstakedEventObject ->; +export type EscrowUnstakedEvent = TypedEvent<[string, BigNumber], EscrowUnstakedEventObject> -export type EscrowUnstakedEventFilter = TypedEventFilter; +export type EscrowUnstakedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface PausedEventObject { - account: string; + account: string } -export type PausedEvent = TypedEvent<[string], PausedEventObject>; +export type PausedEvent = TypedEvent<[string], PausedEventObject> -export type PausedEventFilter = TypedEventFilter; +export type PausedEventFilter = TypedEventFilter export interface RecoveredEventObject { - token: string; - amount: BigNumber; + token: string + amount: BigNumber } -export type RecoveredEvent = TypedEvent< - [string, BigNumber], - RecoveredEventObject ->; +export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> -export type RecoveredEventFilter = TypedEventFilter; +export type RecoveredEventFilter = TypedEventFilter export interface RewardAddedEventObject { - reward: BigNumber; + reward: BigNumber } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> -export type RewardAddedEventFilter = TypedEventFilter; +export type RewardAddedEventFilter = TypedEventFilter export interface RewardPaidEventObject { - user: string; - reward: BigNumber; + user: string + reward: BigNumber } -export type RewardPaidEvent = TypedEvent< - [string, BigNumber], - RewardPaidEventObject ->; +export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> -export type RewardPaidEventFilter = TypedEventFilter; +export type RewardPaidEventFilter = TypedEventFilter export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber; + newDuration: BigNumber } -export type RewardsDurationUpdatedEvent = TypedEvent< - [BigNumber], - RewardsDurationUpdatedEventObject ->; +export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> -export type RewardsDurationUpdatedEventFilter = - TypedEventFilter; +export type RewardsDurationUpdatedEventFilter = TypedEventFilter export interface StakedEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> -export type StakedEventFilter = TypedEventFilter; +export type StakedEventFilter = TypedEventFilter export interface UnpausedEventObject { - account: string; + account: string } -export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject>; +export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject> -export type UnpausedEventFilter = TypedEventFilter; +export type UnpausedEventFilter = TypedEventFilter export interface UnstakedEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type UnstakedEvent = TypedEvent< - [string, BigNumber], - UnstakedEventObject ->; +export type UnstakedEvent = TypedEvent<[string, BigNumber], UnstakedEventObject> -export type UnstakedEventFilter = TypedEventFilter; +export type UnstakedEventFilter = TypedEventFilter export interface KwentaStakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: KwentaStakingRewardsInterface; + interface: KwentaStakingRewardsInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + functions: { + _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - escrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - exit( - overrides?: Overrides & { from?: string } - ): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + nominatedOwner(overrides?: CallOverrides): Promise<[string]> - nonEscrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise<[string]>; + owner(overrides?: CallOverrides): Promise<[string]> - pauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - paused(overrides?: CallOverrides): Promise<[boolean]>; + paused(overrides?: CallOverrides): Promise<[boolean]> - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + rewardEscrow(overrides?: CallOverrides): Promise<[string]> - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> - rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - supplySchedule(overrides?: CallOverrides): Promise<[string]>; + supplySchedule(overrides?: CallOverrides): Promise<[string]> - token(overrides?: CallOverrides): Promise<[string]>; + token(overrides?: CallOverrides): Promise<[string]> - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - unpauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - }; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + } - _totalSupply(overrides?: CallOverrides): Promise; + _totalSupply(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - escrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - exit(overrides?: Overrides & { from?: string }): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - nonEscrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - pauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - supplySchedule(overrides?: CallOverrides): Promise; + supplySchedule(overrides?: CallOverrides): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - unpauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - callStatic: { - _totalSupply(overrides?: CallOverrides): Promise; + callStatic: { + _totalSupply(overrides?: CallOverrides): Promise - acceptOwnership(overrides?: CallOverrides): Promise; + acceptOwnership(overrides?: CallOverrides): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - escrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - exit(overrides?: CallOverrides): Promise; + exit(overrides?: CallOverrides): Promise - getReward(overrides?: CallOverrides): Promise; + getReward(overrides?: CallOverrides): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - nonEscrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: CallOverrides - ): Promise; + notifyRewardAmount(reward: BigNumberish, overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - pauseStakingRewards(overrides?: CallOverrides): Promise; + pauseStakingRewards(overrides?: CallOverrides): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: CallOverrides - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: CallOverrides - ): Promise; + setRewardsDuration(_rewardsDuration: BigNumberish, overrides?: CallOverrides): Promise - stake(amount: BigNumberish, overrides?: CallOverrides): Promise; + stake(amount: BigNumberish, overrides?: CallOverrides): Promise - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; + stakeEscrow(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise - supplySchedule(overrides?: CallOverrides): Promise; + supplySchedule(overrides?: CallOverrides): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - unpauseStakingRewards(overrides?: CallOverrides): Promise; + unpauseStakingRewards(overrides?: CallOverrides): Promise - unstake(amount: BigNumberish, overrides?: CallOverrides): Promise; + unstake(amount: BigNumberish, overrides?: CallOverrides): Promise - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; + unstakeEscrow(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; - }; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + } - filters: { - "EscrowStaked(address,uint256)"( - user?: string | null, - amount?: null - ): EscrowStakedEventFilter; - EscrowStaked(user?: string | null, amount?: null): EscrowStakedEventFilter; + filters: { + 'EscrowStaked(address,uint256)'(user?: string | null, amount?: null): EscrowStakedEventFilter + EscrowStaked(user?: string | null, amount?: null): EscrowStakedEventFilter - "EscrowUnstaked(address,uint256)"( - user?: null, - amount?: null - ): EscrowUnstakedEventFilter; - EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter; + 'EscrowUnstaked(address,uint256)'(user?: null, amount?: null): EscrowUnstakedEventFilter + EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - "Paused(address)"(account?: null): PausedEventFilter; - Paused(account?: null): PausedEventFilter; + 'Paused(address)'(account?: null): PausedEventFilter + Paused(account?: null): PausedEventFilter - "Recovered(address,uint256)"( - token?: null, - amount?: null - ): RecoveredEventFilter; - Recovered(token?: null, amount?: null): RecoveredEventFilter; + 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter + Recovered(token?: null, amount?: null): RecoveredEventFilter - "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; - RewardAdded(reward?: null): RewardAddedEventFilter; + 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter + RewardAdded(reward?: null): RewardAddedEventFilter - "RewardPaid(address,uint256)"( - user?: string | null, - reward?: null - ): RewardPaidEventFilter; - RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; + 'RewardPaid(address,uint256)'(user?: string | null, reward?: null): RewardPaidEventFilter + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter - "RewardsDurationUpdated(uint256)"( - newDuration?: null - ): RewardsDurationUpdatedEventFilter; - RewardsDurationUpdated( - newDuration?: null - ): RewardsDurationUpdatedEventFilter; + 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter + RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter - "Staked(address,uint256)"( - user?: string | null, - amount?: null - ): StakedEventFilter; - Staked(user?: string | null, amount?: null): StakedEventFilter; + 'Staked(address,uint256)'(user?: string | null, amount?: null): StakedEventFilter + Staked(user?: string | null, amount?: null): StakedEventFilter - "Unpaused(address)"(account?: null): UnpausedEventFilter; - Unpaused(account?: null): UnpausedEventFilter; + 'Unpaused(address)'(account?: null): UnpausedEventFilter + Unpaused(account?: null): UnpausedEventFilter - "Unstaked(address,uint256)"( - user?: string | null, - amount?: null - ): UnstakedEventFilter; - Unstaked(user?: string | null, amount?: null): UnstakedEventFilter; - }; + 'Unstaked(address,uint256)'(user?: string | null, amount?: null): UnstakedEventFilter + Unstaked(user?: string | null, amount?: null): UnstakedEventFilter + } - estimateGas: { - _totalSupply(overrides?: CallOverrides): Promise; + estimateGas: { + _totalSupply(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - escrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - exit(overrides?: Overrides & { from?: string }): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward(overrides?: Overrides & { from?: string }): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - nonEscrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - pauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - supplySchedule(overrides?: CallOverrides): Promise; + supplySchedule(overrides?: CallOverrides): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - unpauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; - }; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + } - populateTransaction: { - _totalSupply(overrides?: CallOverrides): Promise; + populateTransaction: { + _totalSupply(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned( - account: string, - overrides?: CallOverrides - ): Promise; + earned(account: string, overrides?: CallOverrides): Promise - escrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - exit( - overrides?: Overrides & { from?: string } - ): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration( - overrides?: CallOverrides - ): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastTimeRewardApplicable( - overrides?: CallOverrides - ): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - nonEscrowedBalanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - pauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored( - overrides?: CallOverrides - ): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards( - arg0: string, - overrides?: CallOverrides - ): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - supplySchedule(overrides?: CallOverrides): Promise; + supplySchedule(overrides?: CallOverrides): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - unpauseStakingRewards( - overrides?: Overrides & { from?: string } - ): Promise; + unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; - }; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts index 4996cd20f4..c4e5ef3ecc 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts @@ -2,515 +2,399 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish; - account: string; - amount: BigNumberish; - merkleProof: BytesLike[]; - epoch: BigNumberish; - }; - - export type ClaimsStructOutput = [ - BigNumber, - string, - BigNumber, - string[], - BigNumber - ] & { - index: BigNumber; - account: string; - amount: BigNumber; - merkleProof: string[]; - epoch: BigNumber; - }; + export type ClaimsStruct = { + index: BigNumberish + account: string + amount: BigNumberish + merkleProof: BytesLike[] + epoch: BigNumberish + } + + export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { + index: BigNumber + account: string + amount: BigNumber + merkleProof: string[] + epoch: BigNumber + } } export interface MultipleMerkleDistributorInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; - "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; - "distributionEpoch()": FunctionFragment; - "isClaimed(uint256,uint256)": FunctionFragment; - "merkleRoots(uint256)": FunctionFragment; - "newMerkleRoot(bytes32)": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "rewardEscrow()": FunctionFragment; - "token()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "claim" - | "claimMultiple" - | "distributionEpoch" - | "isClaimed" - | "merkleRoots" - | "newMerkleRoot" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "rewardEscrow" - | "token" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "claim", - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "claimMultiple", - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string; - encodeFunctionData( - functionFragment: "distributionEpoch", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isClaimed", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "merkleRoots", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "newMerkleRoot", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "rewardEscrow", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "token", values?: undefined): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "claimMultiple", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "distributionEpoch", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "merkleRoots", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "newMerkleRoot", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rewardEscrow", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; - - events: { - "Claimed(uint256,address,uint256,uint256)": EventFragment; - "MerkleRootAdded(uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MerkleRootAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment + 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment + 'distributionEpoch()': FunctionFragment + 'isClaimed(uint256,uint256)': FunctionFragment + 'merkleRoots(uint256)': FunctionFragment + 'newMerkleRoot(bytes32)': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'rewardEscrow()': FunctionFragment + 'token()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'claim' + | 'claimMultiple' + | 'distributionEpoch' + | 'isClaimed' + | 'merkleRoots' + | 'newMerkleRoot' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'rewardEscrow' + | 'token' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData( + functionFragment: 'claim', + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'claimMultiple', + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string + encodeFunctionData(functionFragment: 'distributionEpoch', values?: undefined): string + encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'newMerkleRoot', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string + encodeFunctionData(functionFragment: 'token', values?: undefined): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'distributionEpoch', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'newMerkleRoot', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result + + events: { + 'Claimed(uint256,address,uint256,uint256)': EventFragment + 'MerkleRootAdded(uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MerkleRootAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface ClaimedEventObject { - index: BigNumber; - account: string; - amount: BigNumber; - epoch: BigNumber; + index: BigNumber + account: string + amount: BigNumber + epoch: BigNumber } -export type ClaimedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber], - ClaimedEventObject ->; +export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> -export type ClaimedEventFilter = TypedEventFilter; +export type ClaimedEventFilter = TypedEventFilter export interface MerkleRootAddedEventObject { - epoch: BigNumber; + epoch: BigNumber } -export type MerkleRootAddedEvent = TypedEvent< - [BigNumber], - MerkleRootAddedEventObject ->; +export type MerkleRootAddedEvent = TypedEvent<[BigNumber], MerkleRootAddedEventObject> -export type MerkleRootAddedEventFilter = TypedEventFilter; +export type MerkleRootAddedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface MultipleMerkleDistributor extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: MultipleMerkleDistributorInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]>; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]>; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - - token(overrides?: CallOverrides): Promise<[string]>; - }; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - distributionEpoch(overrides?: CallOverrides): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - token(overrides?: CallOverrides): Promise; - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise; - - distributionEpoch(overrides?: CallOverrides): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - filters: { - "Claimed(uint256,address,uint256,uint256)"( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - Claimed( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - - "MerkleRootAdded(uint256)"(epoch?: null): MerkleRootAddedEventFilter; - MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; - - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - distributionEpoch(overrides?: CallOverrides): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - distributionEpoch(overrides?: CallOverrides): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - token(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: MultipleMerkleDistributorInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]> + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]> + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + rewardEscrow(overrides?: CallOverrides): Promise<[string]> + + token(overrides?: CallOverrides): Promise<[string]> + } + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + distributionEpoch(overrides?: CallOverrides): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + token(overrides?: CallOverrides): Promise + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise + + distributionEpoch(overrides?: CallOverrides): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + newMerkleRoot(_merkleRoot: BytesLike, overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + token(overrides?: CallOverrides): Promise + } + + filters: { + 'Claimed(uint256,address,uint256,uint256)'( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter + Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter + + 'MerkleRootAdded(uint256)'(epoch?: null): MerkleRootAddedEventFilter + MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } + + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + distributionEpoch(overrides?: CallOverrides): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + token(overrides?: CallOverrides): Promise + } + + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + distributionEpoch(overrides?: CallOverrides): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + token(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts index 87616c572c..82fbe0569b 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts @@ -2,481 +2,382 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish; - account: string; - amount: BigNumberish; - merkleProof: BytesLike[]; - epoch: BigNumberish; - }; - - export type ClaimsStructOutput = [ - BigNumber, - string, - BigNumber, - string[], - BigNumber - ] & { - index: BigNumber; - account: string; - amount: BigNumber; - merkleProof: string[]; - epoch: BigNumber; - }; + export type ClaimsStruct = { + index: BigNumberish + account: string + amount: BigNumberish + merkleProof: BytesLike[] + epoch: BigNumberish + } + + export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { + index: BigNumber + account: string + amount: BigNumber + merkleProof: string[] + epoch: BigNumber + } } export interface MultipleMerkleDistributorOpInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; - "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; - "isClaimed(uint256,uint256)": FunctionFragment; - "merkleRoots(uint256)": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; - "token()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "claim" - | "claimMultiple" - | "isClaimed" - | "merkleRoots" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "setMerkleRootForEpoch" - | "token" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "claim", - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "claimMultiple", - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string; - encodeFunctionData( - functionFragment: "isClaimed", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "merkleRoots", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "setMerkleRootForEpoch", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "token", values?: undefined): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "claimMultiple", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "merkleRoots", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setMerkleRootForEpoch", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; - - events: { - "Claimed(uint256,address,uint256,uint256)": EventFragment; - "MerkleRootModified(uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment + 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment + 'isClaimed(uint256,uint256)': FunctionFragment + 'merkleRoots(uint256)': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment + 'token()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'claim' + | 'claimMultiple' + | 'isClaimed' + | 'merkleRoots' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'setMerkleRootForEpoch' + | 'token' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData( + functionFragment: 'claim', + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'claimMultiple', + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string + encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData( + functionFragment: 'setMerkleRootForEpoch', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'token', values?: undefined): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result + + events: { + 'Claimed(uint256,address,uint256,uint256)': EventFragment + 'MerkleRootModified(uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface ClaimedEventObject { - index: BigNumber; - account: string; - amount: BigNumber; - epoch: BigNumber; + index: BigNumber + account: string + amount: BigNumber + epoch: BigNumber } -export type ClaimedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber], - ClaimedEventObject ->; +export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> -export type ClaimedEventFilter = TypedEventFilter; +export type ClaimedEventFilter = TypedEventFilter export interface MerkleRootModifiedEventObject { - epoch: BigNumber; + epoch: BigNumber } -export type MerkleRootModifiedEvent = TypedEvent< - [BigNumber], - MerkleRootModifiedEventObject ->; +export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> -export type MerkleRootModifiedEventFilter = - TypedEventFilter; +export type MerkleRootModifiedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface MultipleMerkleDistributorOp extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: MultipleMerkleDistributorOpInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]>; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise<[string]>; - }; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - filters: { - "Claimed(uint256,address,uint256,uint256)"( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - Claimed( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - - "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; - - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: MultipleMerkleDistributorOpInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]> + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise<[string]> + } + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + token(overrides?: CallOverrides): Promise + } + + filters: { + 'Claimed(uint256,address,uint256,uint256)'( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter + Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter + + 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } + + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + } + + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts index ba84317629..a9967ab9bb 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts @@ -2,502 +2,396 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish; - account: string; - amount: BigNumberish; - merkleProof: BytesLike[]; - epoch: BigNumberish; - }; - - export type ClaimsStructOutput = [ - BigNumber, - string, - BigNumber, - string[], - BigNumber - ] & { - index: BigNumber; - account: string; - amount: BigNumber; - merkleProof: string[]; - epoch: BigNumber; - }; + export type ClaimsStruct = { + index: BigNumberish + account: string + amount: BigNumberish + merkleProof: BytesLike[] + epoch: BigNumberish + } + + export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { + index: BigNumber + account: string + amount: BigNumber + merkleProof: string[] + epoch: BigNumber + } } -export interface MultipleMerkleDistributorPerpsV2Interface - extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; - "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; - "isClaimed(uint256,uint256)": FunctionFragment; - "merkleRoots(uint256)": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "rewardEscrow()": FunctionFragment; - "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; - "token()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "claim" - | "claimMultiple" - | "isClaimed" - | "merkleRoots" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "rewardEscrow" - | "setMerkleRootForEpoch" - | "token" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "claim", - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "claimMultiple", - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string; - encodeFunctionData( - functionFragment: "isClaimed", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "merkleRoots", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "rewardEscrow", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "setMerkleRootForEpoch", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "token", values?: undefined): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "claimMultiple", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "merkleRoots", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rewardEscrow", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMerkleRootForEpoch", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; - - events: { - "Claimed(uint256,address,uint256,uint256)": EventFragment; - "MerkleRootModified(uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; +export interface MultipleMerkleDistributorPerpsV2Interface extends utils.Interface { + functions: { + 'acceptOwnership()': FunctionFragment + 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment + 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment + 'isClaimed(uint256,uint256)': FunctionFragment + 'merkleRoots(uint256)': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'rewardEscrow()': FunctionFragment + 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment + 'token()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'claim' + | 'claimMultiple' + | 'isClaimed' + | 'merkleRoots' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'rewardEscrow' + | 'setMerkleRootForEpoch' + | 'token' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData( + functionFragment: 'claim', + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'claimMultiple', + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string + encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string + encodeFunctionData( + functionFragment: 'setMerkleRootForEpoch', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'token', values?: undefined): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result + + events: { + 'Claimed(uint256,address,uint256,uint256)': EventFragment + 'MerkleRootModified(uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface ClaimedEventObject { - index: BigNumber; - account: string; - amount: BigNumber; - epoch: BigNumber; + index: BigNumber + account: string + amount: BigNumber + epoch: BigNumber } -export type ClaimedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber], - ClaimedEventObject ->; +export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> -export type ClaimedEventFilter = TypedEventFilter; +export type ClaimedEventFilter = TypedEventFilter export interface MerkleRootModifiedEventObject { - epoch: BigNumber; + epoch: BigNumber } -export type MerkleRootModifiedEvent = TypedEvent< - [BigNumber], - MerkleRootModifiedEventObject ->; +export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> -export type MerkleRootModifiedEventFilter = - TypedEventFilter; +export type MerkleRootModifiedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface MultipleMerkleDistributorPerpsV2 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: MultipleMerkleDistributorPerpsV2Interface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]>; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise<[string]>; - }; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - filters: { - "Claimed(uint256,address,uint256,uint256)"( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - Claimed( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter; - - "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; - - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise; - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise; - - merkleRoots( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rewardEscrow(overrides?: CallOverrides): Promise; - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - token(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: MultipleMerkleDistributorPerpsV2Interface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]> + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + rewardEscrow(overrides?: CallOverrides): Promise<[string]> + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise<[string]> + } + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise + + isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + token(overrides?: CallOverrides): Promise + } + + filters: { + 'Claimed(uint256,address,uint256,uint256)'( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter + Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter + + 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } + + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + } + + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rewardEscrow(overrides?: CallOverrides): Promise + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + token(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/PerpsV2Market.ts b/packages/sdk/src/contracts/types/PerpsV2Market.ts index 2d7ed6c78f..12a9fb7288 100644 --- a/packages/sdk/src/contracts/types/PerpsV2Market.ts +++ b/packages/sdk/src/contracts/types/PerpsV2Market.ts @@ -2,2039 +2,1615 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: boolean; - sizeDelta: BigNumberish; - desiredFillPrice: BigNumberish; - targetRoundId: BigNumberish; - commitDeposit: BigNumberish; - keeperDeposit: BigNumberish; - executableAtTime: BigNumberish; - intentionTime: BigNumberish; - trackingCode: BytesLike; - }; - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean; - sizeDelta: BigNumber; - desiredFillPrice: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - executableAtTime: BigNumber; - intentionTime: BigNumber; - trackingCode: string; - }; - - export type PositionStruct = { - id: BigNumberish; - lastFundingIndex: BigNumberish; - margin: BigNumberish; - lastPrice: BigNumberish; - size: BigNumberish; - }; - - export type PositionStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - }; + export type DelayedOrderStruct = { + isOffchain: boolean + sizeDelta: BigNumberish + desiredFillPrice: BigNumberish + targetRoundId: BigNumberish + commitDeposit: BigNumberish + keeperDeposit: BigNumberish + executableAtTime: BigNumberish + intentionTime: BigNumberish + trackingCode: BytesLike + } + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean + sizeDelta: BigNumber + desiredFillPrice: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + executableAtTime: BigNumber + intentionTime: BigNumber + trackingCode: string + } + + export type PositionStruct = { + id: BigNumberish + lastFundingIndex: BigNumberish + margin: BigNumberish + lastPrice: BigNumberish + size: BigNumberish + } + + export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } } export interface PerpsV2MarketInterface extends utils.Interface { - functions: { - "accessibleMargin(address)": FunctionFragment; - "accruedFunding(address)": FunctionFragment; - "assetPrice()": FunctionFragment; - "baseAsset()": FunctionFragment; - "canLiquidate(address)": FunctionFragment; - "cancelDelayedOrder(address)": FunctionFragment; - "cancelOffchainDelayedOrder(address)": FunctionFragment; - "closePosition(uint256)": FunctionFragment; - "closePositionWithTracking(uint256,bytes32)": FunctionFragment; - "currentFundingRate()": FunctionFragment; - "currentFundingVelocity()": FunctionFragment; - "delayedOrders(address)": FunctionFragment; - "executeDelayedOrder(address)": FunctionFragment; - "executeOffchainDelayedOrder(address,bytes[])": FunctionFragment; - "fillPrice(int256)": FunctionFragment; - "flagPosition(address)": FunctionFragment; - "forceLiquidatePosition(address)": FunctionFragment; - "fundingLastRecomputed()": FunctionFragment; - "fundingRateLastRecomputed()": FunctionFragment; - "fundingSequence(uint256)": FunctionFragment; - "fundingSequenceLength()": FunctionFragment; - "isFlagged(address)": FunctionFragment; - "liquidatePosition(address)": FunctionFragment; - "liquidationFee(address)": FunctionFragment; - "liquidationPrice(address)": FunctionFragment; - "marketDebt()": FunctionFragment; - "marketKey()": FunctionFragment; - "marketSize()": FunctionFragment; - "marketSizes()": FunctionFragment; - "marketSkew()": FunctionFragment; - "modifyPosition(int256,uint256)": FunctionFragment; - "modifyPositionWithTracking(int256,uint256,bytes32)": FunctionFragment; - "notionalValue(address)": FunctionFragment; - "orderFee(int256,uint8)": FunctionFragment; - "positions(address)": FunctionFragment; - "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; - "profitLoss(address)": FunctionFragment; - "recomputeFunding()": FunctionFragment; - "remainingMargin(address)": FunctionFragment; - "submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)": FunctionFragment; - "submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)": FunctionFragment; - "submitDelayedOrder(int256,uint256,uint256)": FunctionFragment; - "submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)": FunctionFragment; - "submitOffchainDelayedOrder(int256,uint256)": FunctionFragment; - "submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)": FunctionFragment; - "transferMargin(int256)": FunctionFragment; - "unrecordedFunding()": FunctionFragment; - "withdrawAllMargin()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "accessibleMargin" - | "accruedFunding" - | "assetPrice" - | "baseAsset" - | "canLiquidate" - | "cancelDelayedOrder" - | "cancelOffchainDelayedOrder" - | "closePosition" - | "closePositionWithTracking" - | "currentFundingRate" - | "currentFundingVelocity" - | "delayedOrders" - | "executeDelayedOrder" - | "executeOffchainDelayedOrder" - | "fillPrice" - | "flagPosition" - | "forceLiquidatePosition" - | "fundingLastRecomputed" - | "fundingRateLastRecomputed" - | "fundingSequence" - | "fundingSequenceLength" - | "isFlagged" - | "liquidatePosition" - | "liquidationFee" - | "liquidationPrice" - | "marketDebt" - | "marketKey" - | "marketSize" - | "marketSizes" - | "marketSkew" - | "modifyPosition" - | "modifyPositionWithTracking" - | "notionalValue" - | "orderFee" - | "positions" - | "postTradeDetails" - | "profitLoss" - | "recomputeFunding" - | "remainingMargin" - | "submitCloseDelayedOrderWithTracking" - | "submitCloseOffchainDelayedOrderWithTracking" - | "submitDelayedOrder" - | "submitDelayedOrderWithTracking" - | "submitOffchainDelayedOrder" - | "submitOffchainDelayedOrderWithTracking" - | "transferMargin" - | "unrecordedFunding" - | "withdrawAllMargin" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "accessibleMargin", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "accruedFunding", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "assetPrice", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; - encodeFunctionData( - functionFragment: "canLiquidate", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "cancelDelayedOrder", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "cancelOffchainDelayedOrder", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "closePosition", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "closePositionWithTracking", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "currentFundingRate", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "currentFundingVelocity", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "delayedOrders", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "executeDelayedOrder", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "executeOffchainDelayedOrder", - values: [string, BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "fillPrice", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "flagPosition", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "forceLiquidatePosition", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "fundingLastRecomputed", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "fundingRateLastRecomputed", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "fundingSequence", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "fundingSequenceLength", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "isFlagged", values: [string]): string; - encodeFunctionData( - functionFragment: "liquidatePosition", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidationFee", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidationPrice", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "marketDebt", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; - encodeFunctionData( - functionFragment: "marketSize", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSizes", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSkew", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "modifyPosition", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "modifyPositionWithTracking", - values: [BigNumberish, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "notionalValue", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "orderFee", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "positions", values: [string]): string; - encodeFunctionData( - functionFragment: "postTradeDetails", - values: [BigNumberish, BigNumberish, BigNumberish, string] - ): string; - encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; - encodeFunctionData( - functionFragment: "recomputeFunding", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "remainingMargin", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "submitCloseDelayedOrderWithTracking", - values: [BigNumberish, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "submitCloseOffchainDelayedOrderWithTracking", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "submitDelayedOrder", - values: [BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "submitDelayedOrderWithTracking", - values: [BigNumberish, BigNumberish, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "submitOffchainDelayedOrder", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "submitOffchainDelayedOrderWithTracking", - values: [BigNumberish, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "transferMargin", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "unrecordedFunding", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "withdrawAllMargin", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "accessibleMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accruedFunding", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "canLiquidate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "cancelDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "cancelOffchainDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "closePosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "closePositionWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingRate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingVelocity", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "delayedOrders", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "executeOffchainDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "flagPosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "forceLiquidatePosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingLastRecomputed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingRateLastRecomputed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequence", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequenceLength", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isFlagged", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "liquidatePosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationFee", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationPrice", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketSizes", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "modifyPosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "modifyPositionWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notionalValue", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "postTradeDetails", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "recomputeFunding", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "remainingMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitCloseDelayedOrderWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitCloseOffchainDelayedOrderWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitDelayedOrderWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitOffchainDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "submitOffchainDelayedOrderWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unrecordedFunding", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "withdrawAllMargin", - data: BytesLike - ): Result; - - events: { - "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; - "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)": EventFragment; - "FundingRecomputed(int256,int256,uint256,uint256)": EventFragment; - "MarginTransferred(address,int256)": EventFragment; - "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; - "PositionFlagged(uint256,address,address,uint256)": EventFragment; - "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)": EventFragment; - "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DelayedOrderRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DelayedOrderSubmitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PerpsTracking"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PositionFlagged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; + functions: { + 'accessibleMargin(address)': FunctionFragment + 'accruedFunding(address)': FunctionFragment + 'assetPrice()': FunctionFragment + 'baseAsset()': FunctionFragment + 'canLiquidate(address)': FunctionFragment + 'cancelDelayedOrder(address)': FunctionFragment + 'cancelOffchainDelayedOrder(address)': FunctionFragment + 'closePosition(uint256)': FunctionFragment + 'closePositionWithTracking(uint256,bytes32)': FunctionFragment + 'currentFundingRate()': FunctionFragment + 'currentFundingVelocity()': FunctionFragment + 'delayedOrders(address)': FunctionFragment + 'executeDelayedOrder(address)': FunctionFragment + 'executeOffchainDelayedOrder(address,bytes[])': FunctionFragment + 'fillPrice(int256)': FunctionFragment + 'flagPosition(address)': FunctionFragment + 'forceLiquidatePosition(address)': FunctionFragment + 'fundingLastRecomputed()': FunctionFragment + 'fundingRateLastRecomputed()': FunctionFragment + 'fundingSequence(uint256)': FunctionFragment + 'fundingSequenceLength()': FunctionFragment + 'isFlagged(address)': FunctionFragment + 'liquidatePosition(address)': FunctionFragment + 'liquidationFee(address)': FunctionFragment + 'liquidationPrice(address)': FunctionFragment + 'marketDebt()': FunctionFragment + 'marketKey()': FunctionFragment + 'marketSize()': FunctionFragment + 'marketSizes()': FunctionFragment + 'marketSkew()': FunctionFragment + 'modifyPosition(int256,uint256)': FunctionFragment + 'modifyPositionWithTracking(int256,uint256,bytes32)': FunctionFragment + 'notionalValue(address)': FunctionFragment + 'orderFee(int256,uint8)': FunctionFragment + 'positions(address)': FunctionFragment + 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment + 'profitLoss(address)': FunctionFragment + 'recomputeFunding()': FunctionFragment + 'remainingMargin(address)': FunctionFragment + 'submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)': FunctionFragment + 'submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)': FunctionFragment + 'submitDelayedOrder(int256,uint256,uint256)': FunctionFragment + 'submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)': FunctionFragment + 'submitOffchainDelayedOrder(int256,uint256)': FunctionFragment + 'submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)': FunctionFragment + 'transferMargin(int256)': FunctionFragment + 'unrecordedFunding()': FunctionFragment + 'withdrawAllMargin()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'accessibleMargin' + | 'accruedFunding' + | 'assetPrice' + | 'baseAsset' + | 'canLiquidate' + | 'cancelDelayedOrder' + | 'cancelOffchainDelayedOrder' + | 'closePosition' + | 'closePositionWithTracking' + | 'currentFundingRate' + | 'currentFundingVelocity' + | 'delayedOrders' + | 'executeDelayedOrder' + | 'executeOffchainDelayedOrder' + | 'fillPrice' + | 'flagPosition' + | 'forceLiquidatePosition' + | 'fundingLastRecomputed' + | 'fundingRateLastRecomputed' + | 'fundingSequence' + | 'fundingSequenceLength' + | 'isFlagged' + | 'liquidatePosition' + | 'liquidationFee' + | 'liquidationPrice' + | 'marketDebt' + | 'marketKey' + | 'marketSize' + | 'marketSizes' + | 'marketSkew' + | 'modifyPosition' + | 'modifyPositionWithTracking' + | 'notionalValue' + | 'orderFee' + | 'positions' + | 'postTradeDetails' + | 'profitLoss' + | 'recomputeFunding' + | 'remainingMargin' + | 'submitCloseDelayedOrderWithTracking' + | 'submitCloseOffchainDelayedOrderWithTracking' + | 'submitDelayedOrder' + | 'submitDelayedOrderWithTracking' + | 'submitOffchainDelayedOrder' + | 'submitOffchainDelayedOrderWithTracking' + | 'transferMargin' + | 'unrecordedFunding' + | 'withdrawAllMargin' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string + encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string + encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string + encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string + encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string + encodeFunctionData(functionFragment: 'cancelDelayedOrder', values: [string]): string + encodeFunctionData(functionFragment: 'cancelOffchainDelayedOrder', values: [string]): string + encodeFunctionData(functionFragment: 'closePosition', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'closePositionWithTracking', + values: [BigNumberish, BytesLike] + ): string + encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string + encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string + encodeFunctionData(functionFragment: 'delayedOrders', values: [string]): string + encodeFunctionData(functionFragment: 'executeDelayedOrder', values: [string]): string + encodeFunctionData( + functionFragment: 'executeOffchainDelayedOrder', + values: [string, BytesLike[]] + ): string + encodeFunctionData(functionFragment: 'fillPrice', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'flagPosition', values: [string]): string + encodeFunctionData(functionFragment: 'forceLiquidatePosition', values: [string]): string + encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string + encodeFunctionData(functionFragment: 'fundingRateLastRecomputed', values?: undefined): string + encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string + encodeFunctionData(functionFragment: 'isFlagged', values: [string]): string + encodeFunctionData(functionFragment: 'liquidatePosition', values: [string]): string + encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string + encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string + encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string + encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string + encodeFunctionData( + functionFragment: 'modifyPosition', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'modifyPositionWithTracking', + values: [BigNumberish, BigNumberish, BytesLike] + ): string + encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string + encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'positions', values: [string]): string + encodeFunctionData( + functionFragment: 'postTradeDetails', + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string + encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string + encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string + encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string + encodeFunctionData( + functionFragment: 'submitCloseDelayedOrderWithTracking', + values: [BigNumberish, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', + values: [BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'submitDelayedOrder', + values: [BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'submitDelayedOrderWithTracking', + values: [BigNumberish, BigNumberish, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'submitOffchainDelayedOrder', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'submitOffchainDelayedOrderWithTracking', + values: [BigNumberish, BigNumberish, BytesLike] + ): string + encodeFunctionData(functionFragment: 'transferMargin', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string + encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string + + decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'cancelDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'cancelOffchainDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'delayedOrders', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'executeDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'executeOffchainDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'flagPosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'forceLiquidatePosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingRateLastRecomputed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isFlagged', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'submitCloseDelayedOrderWithTracking', + data: BytesLike + ): Result + decodeFunctionResult( + functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'submitDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'submitDelayedOrderWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'submitOffchainDelayedOrder', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'submitOffchainDelayedOrderWithTracking', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result + + events: { + 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment + 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)': EventFragment + 'FundingRecomputed(int256,int256,uint256,uint256)': EventFragment + 'MarginTransferred(address,int256)': EventFragment + 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment + 'PositionFlagged(uint256,address,address,uint256)': EventFragment + 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)': EventFragment + 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'DelayedOrderRemoved'): EventFragment + getEvent(nameOrSignatureOrTopic: 'DelayedOrderSubmitted'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PerpsTracking'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PositionFlagged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment } export interface DelayedOrderRemovedEventObject { - account: string; - isOffchain: boolean; - currentRoundId: BigNumber; - sizeDelta: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; + account: string + isOffchain: boolean + currentRoundId: BigNumber + sizeDelta: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string } export type DelayedOrderRemovedEvent = TypedEvent< - [ - string, - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ], - DelayedOrderRemovedEventObject ->; - -export type DelayedOrderRemovedEventFilter = - TypedEventFilter; + [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], + DelayedOrderRemovedEventObject +> + +export type DelayedOrderRemovedEventFilter = TypedEventFilter export interface DelayedOrderSubmittedEventObject { - account: string; - isOffchain: boolean; - sizeDelta: BigNumber; - targetRoundId: BigNumber; - intentionTime: BigNumber; - executableAtTime: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - trackingCode: string; + account: string + isOffchain: boolean + sizeDelta: BigNumber + targetRoundId: BigNumber + intentionTime: BigNumber + executableAtTime: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + trackingCode: string } export type DelayedOrderSubmittedEvent = TypedEvent< - [ - string, - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ], - DelayedOrderSubmittedEventObject ->; - -export type DelayedOrderSubmittedEventFilter = - TypedEventFilter; + [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], + DelayedOrderSubmittedEventObject +> + +export type DelayedOrderSubmittedEventFilter = TypedEventFilter export interface FundingRecomputedEventObject { - funding: BigNumber; - fundingRate: BigNumber; - index: BigNumber; - timestamp: BigNumber; + funding: BigNumber + fundingRate: BigNumber + index: BigNumber + timestamp: BigNumber } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject ->; + [BigNumber, BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +> -export type FundingRecomputedEventFilter = - TypedEventFilter; +export type FundingRecomputedEventFilter = TypedEventFilter export interface MarginTransferredEventObject { - account: string; - marginDelta: BigNumber; + account: string + marginDelta: BigNumber } -export type MarginTransferredEvent = TypedEvent< - [string, BigNumber], - MarginTransferredEventObject ->; +export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> -export type MarginTransferredEventFilter = - TypedEventFilter; +export type MarginTransferredEventFilter = TypedEventFilter export interface PerpsTrackingEventObject { - trackingCode: string; - baseAsset: string; - marketKey: string; - sizeDelta: BigNumber; - fee: BigNumber; + trackingCode: string + baseAsset: string + marketKey: string + sizeDelta: BigNumber + fee: BigNumber } export type PerpsTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - PerpsTrackingEventObject ->; + [string, string, string, BigNumber, BigNumber], + PerpsTrackingEventObject +> -export type PerpsTrackingEventFilter = TypedEventFilter; +export type PerpsTrackingEventFilter = TypedEventFilter export interface PositionFlaggedEventObject { - id: BigNumber; - account: string; - flagger: string; - timestamp: BigNumber; + id: BigNumber + account: string + flagger: string + timestamp: BigNumber } export type PositionFlaggedEvent = TypedEvent< - [BigNumber, string, string, BigNumber], - PositionFlaggedEventObject ->; + [BigNumber, string, string, BigNumber], + PositionFlaggedEventObject +> -export type PositionFlaggedEventFilter = TypedEventFilter; +export type PositionFlaggedEventFilter = TypedEventFilter export interface PositionLiquidatedEventObject { - id: BigNumber; - account: string; - liquidator: string; - size: BigNumber; - price: BigNumber; - flaggerFee: BigNumber; - liquidatorFee: BigNumber; - stakersFee: BigNumber; + id: BigNumber + account: string + liquidator: string + size: BigNumber + price: BigNumber + flaggerFee: BigNumber + liquidatorFee: BigNumber + stakersFee: BigNumber } export type PositionLiquidatedEvent = TypedEvent< - [ - BigNumber, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ], - PositionLiquidatedEventObject ->; - -export type PositionLiquidatedEventFilter = - TypedEventFilter; + [BigNumber, string, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + PositionLiquidatedEventObject +> + +export type PositionLiquidatedEventFilter = TypedEventFilter export interface PositionModifiedEventObject { - id: BigNumber; - account: string; - margin: BigNumber; - size: BigNumber; - tradeSize: BigNumber; - lastPrice: BigNumber; - fundingIndex: BigNumber; - fee: BigNumber; - skew: BigNumber; + id: BigNumber + account: string + margin: BigNumber + size: BigNumber + tradeSize: BigNumber + lastPrice: BigNumber + fundingIndex: BigNumber + fee: BigNumber + skew: BigNumber } export type PositionModifiedEvent = TypedEvent< - [ - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ], - PositionModifiedEventObject ->; - -export type PositionModifiedEventFilter = - TypedEventFilter; + [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + PositionModifiedEventObject +> + +export type PositionModifiedEventFilter = TypedEventFilter export interface PerpsV2Market extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: PerpsV2MarketInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingRate: BigNumber }>; - - currentFundingVelocity( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingVelocity: BigNumber }>; - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]>; - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed( - overrides?: CallOverrides - ): Promise<[number] & { timestamp: number }>; - - fundingRateLastRecomputed( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingRate: BigNumber }>; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { netFunding: BigNumber }>; - - fundingSequenceLength( - overrides?: CallOverrides - ): Promise<[BigNumber] & { length: BigNumber }>; - - isFlagged(account: string, overrides?: CallOverrides): Promise<[boolean]>; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; - - marketSize( - overrides?: CallOverrides - ): Promise<[BigNumber] & { size: BigNumber }>; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew( - overrides?: CallOverrides - ): Promise<[BigNumber] & { skew: BigNumber }>; - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]>; - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - currentFundingVelocity(overrides?: CallOverrides): Promise; - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise; - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isFlagged(account: string, overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - account: string, - overrides?: CallOverrides - ): Promise; - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - cancelDelayedOrder( - account: string, - overrides?: CallOverrides - ): Promise; - - cancelOffchainDelayedOrder( - account: string, - overrides?: CallOverrides - ): Promise; - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise; - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - currentFundingVelocity(overrides?: CallOverrides): Promise; - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise; - - executeDelayedOrder( - account: string, - overrides?: CallOverrides - ): Promise; - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - flagPosition(account: string, overrides?: CallOverrides): Promise; - - forceLiquidatePosition( - account: string, - overrides?: CallOverrides - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isFlagged(account: string, overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - positions( - account: string, - overrides?: CallOverrides - ): Promise; - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - - recomputeFunding(overrides?: CallOverrides): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise; - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise; - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - withdrawAllMargin(overrides?: CallOverrides): Promise; - }; - - filters: { - "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)"( - account?: string | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter; - DelayedOrderRemoved( - account?: string | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter; - - "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)"( - account?: string | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter; - DelayedOrderSubmitted( - account?: string | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter; - - "FundingRecomputed(int256,int256,uint256,uint256)"( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter; - FundingRecomputed( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter; - - "MarginTransferred(address,int256)"( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter; - MarginTransferred( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter; - - "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)"( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter; - PerpsTracking( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter; - - "PositionFlagged(uint256,address,address,uint256)"( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter; - PositionFlagged( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter; - - "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)"( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter; - PositionLiquidated( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter; - - "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)"( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter; - PositionModified( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter; - }; - - estimateGas: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; - - assetPrice(overrides?: CallOverrides): Promise; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - currentFundingVelocity(overrides?: CallOverrides): Promise; - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise; - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isFlagged(account: string, overrides?: CallOverrides): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; - - marketDebt(overrides?: CallOverrides): Promise; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes(overrides?: CallOverrides): Promise; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise; - - positions(account: string, overrides?: CallOverrides): Promise; - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; - - profitLoss(account: string, overrides?: CallOverrides): Promise; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding(overrides?: CallOverrides): Promise; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; - - assetPrice(overrides?: CallOverrides): Promise; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - currentFundingRate( - overrides?: CallOverrides - ): Promise; - - currentFundingVelocity( - overrides?: CallOverrides - ): Promise; - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise; - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - fundingLastRecomputed( - overrides?: CallOverrides - ): Promise; - - fundingRateLastRecomputed( - overrides?: CallOverrides - ): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength( - overrides?: CallOverrides - ): Promise; - - isFlagged( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; - - marketDebt(overrides?: CallOverrides): Promise; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes(overrides?: CallOverrides): Promise; - - marketSkew(overrides?: CallOverrides): Promise; - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise; - - positions( - account: string, - overrides?: CallOverrides - ): Promise; - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise; - - recomputeFunding( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - unrecordedFunding(overrides?: CallOverrides): Promise; - - withdrawAllMargin( - overrides?: Overrides & { from?: string } - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: PerpsV2MarketInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> + + canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber] & { fundingRate: BigNumber }> + + currentFundingVelocity( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingVelocity: BigNumber }> + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]> + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number] & { timestamp: number }> + + fundingRateLastRecomputed( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingRate: BigNumber }> + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { netFunding: BigNumber }> + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber] & { length: BigNumber }> + + isFlagged(account: string, overrides?: CallOverrides): Promise<[boolean]> + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> + + marketSize(overrides?: CallOverrides): Promise<[BigNumber] & { size: BigNumber }> + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber] & { skew: BigNumber }> + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]> + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + currentFundingVelocity(overrides?: CallOverrides): Promise + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isFlagged(account: string, overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + account: string, + overrides?: CallOverrides + ): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelDelayedOrder(account: string, overrides?: CallOverrides): Promise + + cancelOffchainDelayedOrder(account: string, overrides?: CallOverrides): Promise + + closePosition(desiredFillPrice: BigNumberish, overrides?: CallOverrides): Promise + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + currentFundingVelocity(overrides?: CallOverrides): Promise + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise + + executeDelayedOrder(account: string, overrides?: CallOverrides): Promise + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: CallOverrides + ): Promise + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + flagPosition(account: string, overrides?: CallOverrides): Promise + + forceLiquidatePosition(account: string, overrides?: CallOverrides): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isFlagged(account: string, overrides?: CallOverrides): Promise + + liquidatePosition(account: string, overrides?: CallOverrides): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + positions( + account: string, + overrides?: CallOverrides + ): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + recomputeFunding(overrides?: CallOverrides): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + transferMargin(marginDelta: BigNumberish, overrides?: CallOverrides): Promise + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + withdrawAllMargin(overrides?: CallOverrides): Promise + } + + filters: { + 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)'( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter + DelayedOrderRemoved( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter + + 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)'( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter + DelayedOrderSubmitted( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter + + 'FundingRecomputed(int256,int256,uint256,uint256)'( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter + FundingRecomputed( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter + + 'MarginTransferred(address,int256)'( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter + MarginTransferred(account?: string | null, marginDelta?: null): MarginTransferredEventFilter + + 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)'( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter + PerpsTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter + + 'PositionFlagged(uint256,address,address,uint256)'( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter + PositionFlagged( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter + + 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)'( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter + PositionLiquidated( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter + + 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)'( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter + } + + estimateGas: { + accessibleMargin(account: string, overrides?: CallOverrides): Promise + + accruedFunding(account: string, overrides?: CallOverrides): Promise + + assetPrice(overrides?: CallOverrides): Promise + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + currentFundingVelocity(overrides?: CallOverrides): Promise + + delayedOrders(account: string, overrides?: CallOverrides): Promise + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + + flagPosition(account: string, overrides?: Overrides & { from?: string }): Promise + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isFlagged(account: string, overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice(account: string, overrides?: CallOverrides): Promise + + marketDebt(overrides?: CallOverrides): Promise + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes(overrides?: CallOverrides): Promise + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + notionalValue(account: string, overrides?: CallOverrides): Promise + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise + + positions(account: string, overrides?: CallOverrides): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise + + profitLoss(account: string, overrides?: CallOverrides): Promise + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin(account: string, overrides?: CallOverrides): Promise + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding(overrides?: CallOverrides): Promise + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } + + populateTransaction: { + accessibleMargin(account: string, overrides?: CallOverrides): Promise + + accruedFunding(account: string, overrides?: CallOverrides): Promise + + assetPrice(overrides?: CallOverrides): Promise + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + currentFundingVelocity(overrides?: CallOverrides): Promise + + delayedOrders(account: string, overrides?: CallOverrides): Promise + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isFlagged(account: string, overrides?: CallOverrides): Promise + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice(account: string, overrides?: CallOverrides): Promise + + marketDebt(overrides?: CallOverrides): Promise + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes(overrides?: CallOverrides): Promise + + marketSkew(overrides?: CallOverrides): Promise + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + notionalValue(account: string, overrides?: CallOverrides): Promise + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise + + positions(account: string, overrides?: CallOverrides): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise + + profitLoss(account: string, overrides?: CallOverrides): Promise + + recomputeFunding(overrides?: Overrides & { from?: string }): Promise + + remainingMargin(account: string, overrides?: CallOverrides): Promise + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + unrecordedFunding(overrides?: CallOverrides): Promise + + withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise + } } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts index cc4cc45a4e..52b0fdd28b 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts @@ -2,718 +2,608 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace PerpsV2MarketData { - export type FeeRatesStruct = { - takerFee: BigNumberish; - makerFee: BigNumberish; - takerFeeDelayedOrder: BigNumberish; - makerFeeDelayedOrder: BigNumberish; - takerFeeOffchainDelayedOrder: BigNumberish; - makerFeeOffchainDelayedOrder: BigNumberish; - }; - - export type FeeRatesStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber; - makerFee: BigNumber; - takerFeeDelayedOrder: BigNumber; - makerFeeDelayedOrder: BigNumber; - takerFeeOffchainDelayedOrder: BigNumber; - makerFeeOffchainDelayedOrder: BigNumber; - }; - - export type MarketSummaryStruct = { - market: string; - asset: BytesLike; - key: BytesLike; - maxLeverage: BigNumberish; - price: BigNumberish; - marketSize: BigNumberish; - marketSkew: BigNumberish; - marketDebt: BigNumberish; - currentFundingRate: BigNumberish; - currentFundingVelocity: BigNumberish; - feeRates: PerpsV2MarketData.FeeRatesStruct; - }; - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - PerpsV2MarketData.FeeRatesStructOutput - ] & { - market: string; - asset: string; - key: string; - maxLeverage: BigNumber; - price: BigNumber; - marketSize: BigNumber; - marketSkew: BigNumber; - marketDebt: BigNumber; - currentFundingRate: BigNumber; - currentFundingVelocity: BigNumber; - feeRates: PerpsV2MarketData.FeeRatesStructOutput; - }; - - export type FuturesGlobalsStruct = { - minInitialMargin: BigNumberish; - liquidationFeeRatio: BigNumberish; - minKeeperFee: BigNumberish; - maxKeeperFee: BigNumberish; - }; - - export type FuturesGlobalsStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - minInitialMargin: BigNumber; - liquidationFeeRatio: BigNumber; - minKeeperFee: BigNumber; - maxKeeperFee: BigNumber; - }; - - export type MarketLimitsStruct = { - maxLeverage: BigNumberish; - maxMarketValue: BigNumberish; - }; - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber; - maxMarketValue: BigNumber; - }; - - export type FundingParametersStruct = { - maxFundingVelocity: BigNumberish; - skewScale: BigNumberish; - }; - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingVelocity: BigNumber; - skewScale: BigNumber; - }; - - export type SidesStruct = { long: BigNumberish; short: BigNumberish }; - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber; - short: BigNumber; - }; - - export type MarketSizeDetailsStruct = { - marketSize: BigNumberish; - sides: PerpsV2MarketData.SidesStruct; - marketDebt: BigNumberish; - marketSkew: BigNumberish; - }; - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - PerpsV2MarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber; - sides: PerpsV2MarketData.SidesStructOutput; - marketDebt: BigNumber; - marketSkew: BigNumber; - }; - - export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber; - invalid: boolean; - }; - - export type MarketDataStruct = { - market: string; - baseAsset: BytesLike; - marketKey: BytesLike; - feeRates: PerpsV2MarketData.FeeRatesStruct; - limits: PerpsV2MarketData.MarketLimitsStruct; - fundingParameters: PerpsV2MarketData.FundingParametersStruct; - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct; - priceDetails: PerpsV2MarketData.PriceDetailsStruct; - }; - - export type MarketDataStructOutput = [ - string, - string, - string, - PerpsV2MarketData.FeeRatesStructOutput, - PerpsV2MarketData.MarketLimitsStructOutput, - PerpsV2MarketData.FundingParametersStructOutput, - PerpsV2MarketData.MarketSizeDetailsStructOutput, - PerpsV2MarketData.PriceDetailsStructOutput - ] & { - market: string; - baseAsset: string; - marketKey: string; - feeRates: PerpsV2MarketData.FeeRatesStructOutput; - limits: PerpsV2MarketData.MarketLimitsStructOutput; - fundingParameters: PerpsV2MarketData.FundingParametersStructOutput; - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput; - priceDetails: PerpsV2MarketData.PriceDetailsStructOutput; - }; - - export type PositionDataStruct = { - position: IPerpsV2MarketBaseTypes.PositionStruct; - notionalValue: BigNumberish; - profitLoss: BigNumberish; - accruedFunding: BigNumberish; - remainingMargin: BigNumberish; - accessibleMargin: BigNumberish; - liquidationPrice: BigNumberish; - canLiquidatePosition: boolean; - }; - - export type PositionDataStructOutput = [ - IPerpsV2MarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IPerpsV2MarketBaseTypes.PositionStructOutput; - notionalValue: BigNumber; - profitLoss: BigNumber; - accruedFunding: BigNumber; - remainingMargin: BigNumber; - accessibleMargin: BigNumber; - liquidationPrice: BigNumber; - canLiquidatePosition: boolean; - }; + export type FeeRatesStruct = { + takerFee: BigNumberish + makerFee: BigNumberish + takerFeeDelayedOrder: BigNumberish + makerFeeDelayedOrder: BigNumberish + takerFeeOffchainDelayedOrder: BigNumberish + makerFeeOffchainDelayedOrder: BigNumberish + } + + export type FeeRatesStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber + makerFee: BigNumber + takerFeeDelayedOrder: BigNumber + makerFeeDelayedOrder: BigNumber + takerFeeOffchainDelayedOrder: BigNumber + makerFeeOffchainDelayedOrder: BigNumber + } + + export type MarketSummaryStruct = { + market: string + asset: BytesLike + key: BytesLike + maxLeverage: BigNumberish + price: BigNumberish + marketSize: BigNumberish + marketSkew: BigNumberish + marketDebt: BigNumberish + currentFundingRate: BigNumberish + currentFundingVelocity: BigNumberish + feeRates: PerpsV2MarketData.FeeRatesStruct + } + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + PerpsV2MarketData.FeeRatesStructOutput + ] & { + market: string + asset: string + key: string + maxLeverage: BigNumber + price: BigNumber + marketSize: BigNumber + marketSkew: BigNumber + marketDebt: BigNumber + currentFundingRate: BigNumber + currentFundingVelocity: BigNumber + feeRates: PerpsV2MarketData.FeeRatesStructOutput + } + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish + liquidationFeeRatio: BigNumberish + minKeeperFee: BigNumberish + maxKeeperFee: BigNumberish + } + + export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { + minInitialMargin: BigNumber + liquidationFeeRatio: BigNumber + minKeeperFee: BigNumber + maxKeeperFee: BigNumber + } + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish + maxMarketValue: BigNumberish + } + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber + maxMarketValue: BigNumber + } + + export type FundingParametersStruct = { + maxFundingVelocity: BigNumberish + skewScale: BigNumberish + } + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingVelocity: BigNumber + skewScale: BigNumber + } + + export type SidesStruct = { long: BigNumberish; short: BigNumberish } + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber + short: BigNumber + } + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish + sides: PerpsV2MarketData.SidesStruct + marketDebt: BigNumberish + marketSkew: BigNumberish + } + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + PerpsV2MarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber + sides: PerpsV2MarketData.SidesStructOutput + marketDebt: BigNumber + marketSkew: BigNumber + } + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean } + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber + invalid: boolean + } + + export type MarketDataStruct = { + market: string + baseAsset: BytesLike + marketKey: BytesLike + feeRates: PerpsV2MarketData.FeeRatesStruct + limits: PerpsV2MarketData.MarketLimitsStruct + fundingParameters: PerpsV2MarketData.FundingParametersStruct + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct + priceDetails: PerpsV2MarketData.PriceDetailsStruct + } + + export type MarketDataStructOutput = [ + string, + string, + string, + PerpsV2MarketData.FeeRatesStructOutput, + PerpsV2MarketData.MarketLimitsStructOutput, + PerpsV2MarketData.FundingParametersStructOutput, + PerpsV2MarketData.MarketSizeDetailsStructOutput, + PerpsV2MarketData.PriceDetailsStructOutput + ] & { + market: string + baseAsset: string + marketKey: string + feeRates: PerpsV2MarketData.FeeRatesStructOutput + limits: PerpsV2MarketData.MarketLimitsStructOutput + fundingParameters: PerpsV2MarketData.FundingParametersStructOutput + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput + priceDetails: PerpsV2MarketData.PriceDetailsStructOutput + } + + export type PositionDataStruct = { + position: IPerpsV2MarketBaseTypes.PositionStruct + notionalValue: BigNumberish + profitLoss: BigNumberish + accruedFunding: BigNumberish + remainingMargin: BigNumberish + accessibleMargin: BigNumberish + liquidationPrice: BigNumberish + canLiquidatePosition: boolean + } + + export type PositionDataStructOutput = [ + IPerpsV2MarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IPerpsV2MarketBaseTypes.PositionStructOutput + notionalValue: BigNumber + profitLoss: BigNumber + accruedFunding: BigNumber + remainingMargin: BigNumber + accessibleMargin: BigNumber + liquidationPrice: BigNumber + canLiquidatePosition: boolean + } } export declare namespace IPerpsV2MarketSettings { - export type ParametersStruct = { - takerFee: BigNumberish; - makerFee: BigNumberish; - takerFeeDelayedOrder: BigNumberish; - makerFeeDelayedOrder: BigNumberish; - takerFeeOffchainDelayedOrder: BigNumberish; - makerFeeOffchainDelayedOrder: BigNumberish; - maxLeverage: BigNumberish; - maxMarketValue: BigNumberish; - maxFundingVelocity: BigNumberish; - skewScale: BigNumberish; - nextPriceConfirmWindow: BigNumberish; - delayedOrderConfirmWindow: BigNumberish; - minDelayTimeDelta: BigNumberish; - maxDelayTimeDelta: BigNumberish; - offchainDelayedOrderMinAge: BigNumberish; - offchainDelayedOrderMaxAge: BigNumberish; - offchainMarketKey: BytesLike; - offchainPriceDivergence: BigNumberish; - liquidationPremiumMultiplier: BigNumberish; - liquidationBufferRatio: BigNumberish; - maxLiquidationDelta: BigNumberish; - maxPD: BigNumberish; - }; - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber; - makerFee: BigNumber; - takerFeeDelayedOrder: BigNumber; - makerFeeDelayedOrder: BigNumber; - takerFeeOffchainDelayedOrder: BigNumber; - makerFeeOffchainDelayedOrder: BigNumber; - maxLeverage: BigNumber; - maxMarketValue: BigNumber; - maxFundingVelocity: BigNumber; - skewScale: BigNumber; - nextPriceConfirmWindow: BigNumber; - delayedOrderConfirmWindow: BigNumber; - minDelayTimeDelta: BigNumber; - maxDelayTimeDelta: BigNumber; - offchainDelayedOrderMinAge: BigNumber; - offchainDelayedOrderMaxAge: BigNumber; - offchainMarketKey: string; - offchainPriceDivergence: BigNumber; - liquidationPremiumMultiplier: BigNumber; - liquidationBufferRatio: BigNumber; - maxLiquidationDelta: BigNumber; - maxPD: BigNumber; - }; + export type ParametersStruct = { + takerFee: BigNumberish + makerFee: BigNumberish + takerFeeDelayedOrder: BigNumberish + makerFeeDelayedOrder: BigNumberish + takerFeeOffchainDelayedOrder: BigNumberish + makerFeeOffchainDelayedOrder: BigNumberish + maxLeverage: BigNumberish + maxMarketValue: BigNumberish + maxFundingVelocity: BigNumberish + skewScale: BigNumberish + nextPriceConfirmWindow: BigNumberish + delayedOrderConfirmWindow: BigNumberish + minDelayTimeDelta: BigNumberish + maxDelayTimeDelta: BigNumberish + offchainDelayedOrderMinAge: BigNumberish + offchainDelayedOrderMaxAge: BigNumberish + offchainMarketKey: BytesLike + offchainPriceDivergence: BigNumberish + liquidationPremiumMultiplier: BigNumberish + liquidationBufferRatio: BigNumberish + maxLiquidationDelta: BigNumberish + maxPD: BigNumberish + } + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber + makerFee: BigNumber + takerFeeDelayedOrder: BigNumber + makerFeeDelayedOrder: BigNumber + takerFeeOffchainDelayedOrder: BigNumber + makerFeeOffchainDelayedOrder: BigNumber + maxLeverage: BigNumber + maxMarketValue: BigNumber + maxFundingVelocity: BigNumber + skewScale: BigNumber + nextPriceConfirmWindow: BigNumber + delayedOrderConfirmWindow: BigNumber + minDelayTimeDelta: BigNumber + maxDelayTimeDelta: BigNumber + offchainDelayedOrderMinAge: BigNumber + offchainDelayedOrderMaxAge: BigNumber + offchainMarketKey: string + offchainPriceDivergence: BigNumber + liquidationPremiumMultiplier: BigNumber + liquidationBufferRatio: BigNumber + maxLiquidationDelta: BigNumber + maxPD: BigNumber + } } export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: BigNumberish; - lastFundingIndex: BigNumberish; - margin: BigNumberish; - lastPrice: BigNumberish; - size: BigNumberish; - }; - - export type PositionStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - }; + export type PositionStruct = { + id: BigNumberish + lastFundingIndex: BigNumberish + margin: BigNumberish + lastPrice: BigNumberish + size: BigNumberish + } + + export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } } export interface PerpsV2MarketDataInterface extends utils.Interface { - functions: { - "allMarketSummaries()": FunctionFragment; - "allProxiedMarketSummaries()": FunctionFragment; - "globals()": FunctionFragment; - "marketDetails(address)": FunctionFragment; - "marketDetailsForKey(bytes32)": FunctionFragment; - "marketSummaries(address[])": FunctionFragment; - "marketSummariesForKeys(bytes32[])": FunctionFragment; - "parameters(bytes32)": FunctionFragment; - "positionDetails(address,address)": FunctionFragment; - "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; - "resolverProxy()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "allMarketSummaries" - | "allProxiedMarketSummaries" - | "globals" - | "marketDetails" - | "marketDetailsForKey" - | "marketSummaries" - | "marketSummariesForKeys" - | "parameters" - | "positionDetails" - | "positionDetailsForMarketKey" - | "resolverProxy" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "allMarketSummaries", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "allProxiedMarketSummaries", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "globals", values?: undefined): string; - encodeFunctionData( - functionFragment: "marketDetails", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "marketDetailsForKey", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "marketSummaries", - values: [string[]] - ): string; - encodeFunctionData( - functionFragment: "marketSummariesForKeys", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "parameters", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "positionDetails", - values: [string, string] - ): string; - encodeFunctionData( - functionFragment: "positionDetailsForMarketKey", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "resolverProxy", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "allMarketSummaries", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "allProxiedMarketSummaries", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketDetails", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketDetailsForKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketSummaries", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "marketSummariesForKeys", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "positionDetails", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "positionDetailsForMarketKey", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resolverProxy", - data: BytesLike - ): Result; - - events: {}; + functions: { + 'allMarketSummaries()': FunctionFragment + 'allProxiedMarketSummaries()': FunctionFragment + 'globals()': FunctionFragment + 'marketDetails(address)': FunctionFragment + 'marketDetailsForKey(bytes32)': FunctionFragment + 'marketSummaries(address[])': FunctionFragment + 'marketSummariesForKeys(bytes32[])': FunctionFragment + 'parameters(bytes32)': FunctionFragment + 'positionDetails(address,address)': FunctionFragment + 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment + 'resolverProxy()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'allMarketSummaries' + | 'allProxiedMarketSummaries' + | 'globals' + | 'marketDetails' + | 'marketDetailsForKey' + | 'marketSummaries' + | 'marketSummariesForKeys' + | 'parameters' + | 'positionDetails' + | 'positionDetailsForMarketKey' + | 'resolverProxy' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string + encodeFunctionData(functionFragment: 'allProxiedMarketSummaries', values?: undefined): string + encodeFunctionData(functionFragment: 'globals', values?: undefined): string + encodeFunctionData(functionFragment: 'marketDetails', values: [string]): string + encodeFunctionData(functionFragment: 'marketDetailsForKey', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'marketSummaries', values: [string[]]): string + encodeFunctionData(functionFragment: 'marketSummariesForKeys', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'positionDetails', values: [string, string]): string + encodeFunctionData( + functionFragment: 'positionDetailsForMarketKey', + values: [BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string + + decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'allProxiedMarketSummaries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result + + events: {} } export interface PerpsV2MarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: PerpsV2MarketDataInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; - - globals( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]>; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]>; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; - - resolverProxy(overrides?: CallOverrides): Promise<[string]>; - }; - - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals( - overrides?: CallOverrides - ): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals( - overrides?: CallOverrides - ): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; - - filters: {}; - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise; - - allProxiedMarketSummaries(overrides?: CallOverrides): Promise; - - globals(overrides?: CallOverrides): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; - - populateTransaction: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise; - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise; - - globals(overrides?: CallOverrides): Promise; - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise; - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise; - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise; - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - resolverProxy(overrides?: CallOverrides): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: PerpsV2MarketDataInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> + + globals(overrides?: CallOverrides): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]> + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]> + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> + + resolverProxy(overrides?: CallOverrides): Promise<[string]> + } + + allMarketSummaries( + overrides?: CallOverrides + ): Promise + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } + + filters: {} + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise + + allProxiedMarketSummaries(overrides?: CallOverrides): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails(market: string, overrides?: CallOverrides): Promise + + marketDetailsForKey(marketKey: BytesLike, overrides?: CallOverrides): Promise + + marketSummaries(markets: string[], overrides?: CallOverrides): Promise + + marketSummariesForKeys(marketKeys: BytesLike[], overrides?: CallOverrides): Promise + + parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise + + positionDetails(market: string, account: string, overrides?: CallOverrides): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } + + populateTransaction: { + allMarketSummaries(overrides?: CallOverrides): Promise + + allProxiedMarketSummaries(overrides?: CallOverrides): Promise + + globals(overrides?: CallOverrides): Promise + + marketDetails(market: string, overrides?: CallOverrides): Promise + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise + + marketSummaries(markets: string[], overrides?: CallOverrides): Promise + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + resolverProxy(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts index a3c032d521..9dedfe74fa 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts @@ -459,9 +459,8 @@ export type KeeperLiquidationFeeUpdatedEvent = TypedEvent< KeeperLiquidationFeeUpdatedEventObject > -export type KeeperLiquidationFeeUpdatedEventFilter = TypedEventFilter< - KeeperLiquidationFeeUpdatedEvent -> +export type KeeperLiquidationFeeUpdatedEventFilter = + TypedEventFilter export interface LiquidationBufferRatioUpdatedEventObject { bps: BigNumber @@ -471,9 +470,8 @@ export type LiquidationBufferRatioUpdatedEvent = TypedEvent< LiquidationBufferRatioUpdatedEventObject > -export type LiquidationBufferRatioUpdatedEventFilter = TypedEventFilter< - LiquidationBufferRatioUpdatedEvent -> +export type LiquidationBufferRatioUpdatedEventFilter = + TypedEventFilter export interface LiquidationFeeRatioUpdatedEventObject { bps: BigNumber @@ -483,9 +481,8 @@ export type LiquidationFeeRatioUpdatedEvent = TypedEvent< LiquidationFeeRatioUpdatedEventObject > -export type LiquidationFeeRatioUpdatedEventFilter = TypedEventFilter< - LiquidationFeeRatioUpdatedEvent -> +export type LiquidationFeeRatioUpdatedEventFilter = + TypedEventFilter export interface MaxKeeperFeeUpdatedEventObject { sUSD: BigNumber diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts index 0d7af7c19b..eb4bc15345 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts @@ -2,1085 +2,786 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: BigNumberish; - lastFundingIndex: BigNumberish; - margin: BigNumberish; - lastPrice: BigNumberish; - size: BigNumberish; - }; - - export type PositionStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - }; + export type PositionStruct = { + id: BigNumberish + lastFundingIndex: BigNumberish + margin: BigNumberish + lastPrice: BigNumberish + size: BigNumberish + } + + export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } } export interface PerpsV2MarketViewsInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "accessibleMargin(address)": FunctionFragment; - "accruedFunding(address)": FunctionFragment; - "assetPrice()": FunctionFragment; - "baseAsset()": FunctionFragment; - "canLiquidate(address)": FunctionFragment; - "currentFundingRate()": FunctionFragment; - "currentFundingVelocity()": FunctionFragment; - "fillPrice(int256)": FunctionFragment; - "fundingLastRecomputed()": FunctionFragment; - "fundingSequence(uint256)": FunctionFragment; - "fundingSequenceLength()": FunctionFragment; - "isResolverCached()": FunctionFragment; - "liquidationFee(address)": FunctionFragment; - "liquidationPrice(address)": FunctionFragment; - "marketDebt()": FunctionFragment; - "marketKey()": FunctionFragment; - "marketSize()": FunctionFragment; - "marketSizes()": FunctionFragment; - "marketSkew()": FunctionFragment; - "marketState()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "notionalValue(address)": FunctionFragment; - "orderFee(int256,uint8)": FunctionFragment; - "owner()": FunctionFragment; - "positions(address)": FunctionFragment; - "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; - "profitLoss(address)": FunctionFragment; - "rebuildCache()": FunctionFragment; - "remainingMargin(address)": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "unrecordedFunding()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "accessibleMargin" - | "accruedFunding" - | "assetPrice" - | "baseAsset" - | "canLiquidate" - | "currentFundingRate" - | "currentFundingVelocity" - | "fillPrice" - | "fundingLastRecomputed" - | "fundingSequence" - | "fundingSequenceLength" - | "isResolverCached" - | "liquidationFee" - | "liquidationPrice" - | "marketDebt" - | "marketKey" - | "marketSize" - | "marketSizes" - | "marketSkew" - | "marketState" - | "nominateNewOwner" - | "nominatedOwner" - | "notionalValue" - | "orderFee" - | "owner" - | "positions" - | "postTradeDetails" - | "profitLoss" - | "rebuildCache" - | "remainingMargin" - | "resolver" - | "resolverAddressesRequired" - | "unrecordedFunding" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "accessibleMargin", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "accruedFunding", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "assetPrice", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; - encodeFunctionData( - functionFragment: "canLiquidate", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "currentFundingRate", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "currentFundingVelocity", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "fillPrice", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "fundingLastRecomputed", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "fundingSequence", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "fundingSequenceLength", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "liquidationFee", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidationPrice", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "marketDebt", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; - encodeFunctionData( - functionFragment: "marketSize", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSizes", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketSkew", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "marketState", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "notionalValue", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "orderFee", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "positions", values: [string]): string; - encodeFunctionData( - functionFragment: "postTradeDetails", - values: [BigNumberish, BigNumberish, BigNumberish, string] - ): string; - encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "remainingMargin", - values: [string] - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "unrecordedFunding", - values?: undefined - ): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accessibleMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accruedFunding", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "canLiquidate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingRate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingVelocity", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "fundingLastRecomputed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequence", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "fundingSequenceLength", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationFee", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidationPrice", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketSizes", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "marketState", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notionalValue", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "postTradeDetails", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "remainingMargin", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unrecordedFunding", - data: BytesLike - ): Result; - - events: { - "CacheUpdated(bytes32,address)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'accessibleMargin(address)': FunctionFragment + 'accruedFunding(address)': FunctionFragment + 'assetPrice()': FunctionFragment + 'baseAsset()': FunctionFragment + 'canLiquidate(address)': FunctionFragment + 'currentFundingRate()': FunctionFragment + 'currentFundingVelocity()': FunctionFragment + 'fillPrice(int256)': FunctionFragment + 'fundingLastRecomputed()': FunctionFragment + 'fundingSequence(uint256)': FunctionFragment + 'fundingSequenceLength()': FunctionFragment + 'isResolverCached()': FunctionFragment + 'liquidationFee(address)': FunctionFragment + 'liquidationPrice(address)': FunctionFragment + 'marketDebt()': FunctionFragment + 'marketKey()': FunctionFragment + 'marketSize()': FunctionFragment + 'marketSizes()': FunctionFragment + 'marketSkew()': FunctionFragment + 'marketState()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'notionalValue(address)': FunctionFragment + 'orderFee(int256,uint8)': FunctionFragment + 'owner()': FunctionFragment + 'positions(address)': FunctionFragment + 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment + 'profitLoss(address)': FunctionFragment + 'rebuildCache()': FunctionFragment + 'remainingMargin(address)': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'unrecordedFunding()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'accessibleMargin' + | 'accruedFunding' + | 'assetPrice' + | 'baseAsset' + | 'canLiquidate' + | 'currentFundingRate' + | 'currentFundingVelocity' + | 'fillPrice' + | 'fundingLastRecomputed' + | 'fundingSequence' + | 'fundingSequenceLength' + | 'isResolverCached' + | 'liquidationFee' + | 'liquidationPrice' + | 'marketDebt' + | 'marketKey' + | 'marketSize' + | 'marketSizes' + | 'marketSkew' + | 'marketState' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'notionalValue' + | 'orderFee' + | 'owner' + | 'positions' + | 'postTradeDetails' + | 'profitLoss' + | 'rebuildCache' + | 'remainingMargin' + | 'resolver' + | 'resolverAddressesRequired' + | 'unrecordedFunding' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string + encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string + encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string + encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string + encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string + encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string + encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string + encodeFunctionData(functionFragment: 'fillPrice', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string + encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string + encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string + encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string + encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string + encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string + encodeFunctionData(functionFragment: 'marketState', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string + encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'positions', values: [string]): string + encodeFunctionData( + functionFragment: 'postTradeDetails', + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string + encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'marketState', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result + + events: { + 'CacheUpdated(bytes32,address)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment } export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface PerpsV2MarketViews extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: PerpsV2MarketViewsInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> + + canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> + + currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]> + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]> + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> + + marketState(overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + owner(overrides?: CallOverrides): Promise<[string]> + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]> + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + } + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + baseAsset(overrides?: CallOverrides): Promise + + canLiquidate(account: string, overrides?: CallOverrides): Promise + + currentFundingRate(overrides?: CallOverrides): Promise + + currentFundingVelocity(overrides?: CallOverrides): Promise + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + fundingLastRecomputed(overrides?: CallOverrides): Promise + + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + + fundingSequenceLength(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + liquidationFee(account: string, overrides?: CallOverrides): Promise + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + + marketKey(overrides?: CallOverrides): Promise + + marketSize(overrides?: CallOverrides): Promise + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + + marketSkew(overrides?: CallOverrides): Promise + + marketState(overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + + owner(overrides?: CallOverrides): Promise + + positions( + account: string, + overrides?: CallOverrides + ): Promise + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > - interface: PerpsV2MarketViewsInterface; + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; - - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; - - currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]>; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; - - marketState(overrides?: CallOverrides): Promise<[string]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - positions( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]>; + resolver(overrides?: CallOverrides): Promise - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; + resolverAddressesRequired(overrides?: CallOverrides): Promise - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - resolver(overrides?: CallOverrides): Promise<[string]>; + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - }; + baseAsset(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - currentFundingVelocity(overrides?: CallOverrides): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; + canLiquidate(account: string, overrides?: CallOverrides): Promise - marketState(overrides?: CallOverrides): Promise; + currentFundingRate(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + currentFundingVelocity(overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + fundingLastRecomputed(overrides?: CallOverrides): Promise - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + fundingSequenceLength(overrides?: CallOverrides): Promise - positions( - account: string, - overrides?: CallOverrides - ): Promise; + isResolverCached(overrides?: CallOverrides): Promise - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; + liquidationFee(account: string, overrides?: CallOverrides): Promise - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; + marketKey(overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + marketSize(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + marketSkew(overrides?: CallOverrides): Promise - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; + marketState(overrides?: CallOverrides): Promise - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } - >; - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - baseAsset(overrides?: CallOverrides): Promise; - - canLiquidate(account: string, overrides?: CallOverrides): Promise; - - currentFundingRate(overrides?: CallOverrides): Promise; - - currentFundingVelocity(overrides?: CallOverrides): Promise; - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - fundingLastRecomputed(overrides?: CallOverrides): Promise; - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fundingSequenceLength(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; - - marketKey(overrides?: CallOverrides): Promise; - - marketSize(overrides?: CallOverrides): Promise; - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; - - marketSkew(overrides?: CallOverrides): Promise; - - marketState(overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - positions( - account: string, - overrides?: CallOverrides - ): Promise; + positions( + account: string, + overrides?: CallOverrides + ): Promise - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber; - size: BigNumber; - price: BigNumber; - liqPrice: BigNumber; - fee: BigNumber; - status: number; - } - >; + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber + size: BigNumber + price: BigNumber + liqPrice: BigNumber + fee: BigNumber + status: number + } + > - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - rebuildCache(overrides?: CallOverrides): Promise; + rebuildCache(overrides?: CallOverrides): Promise - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } - >; + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - resolver(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - }; + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + } - filters: { - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + filters: { + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - }; + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + } - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; + accessibleMargin(account: string, overrides?: CallOverrides): Promise - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; + accruedFunding(account: string, overrides?: CallOverrides): Promise - assetPrice(overrides?: CallOverrides): Promise; + assetPrice(overrides?: CallOverrides): Promise - baseAsset(overrides?: CallOverrides): Promise; + baseAsset(overrides?: CallOverrides): Promise - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; + canLiquidate(account: string, overrides?: CallOverrides): Promise - currentFundingRate(overrides?: CallOverrides): Promise; + currentFundingRate(overrides?: CallOverrides): Promise - currentFundingVelocity(overrides?: CallOverrides): Promise; + currentFundingVelocity(overrides?: CallOverrides): Promise - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; + fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - fundingLastRecomputed(overrides?: CallOverrides): Promise; + fundingLastRecomputed(overrides?: CallOverrides): Promise - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - fundingSequenceLength(overrides?: CallOverrides): Promise; + fundingSequenceLength(overrides?: CallOverrides): Promise - isResolverCached(overrides?: CallOverrides): Promise; + isResolverCached(overrides?: CallOverrides): Promise - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; + liquidationFee(account: string, overrides?: CallOverrides): Promise - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; + liquidationPrice(account: string, overrides?: CallOverrides): Promise - marketDebt(overrides?: CallOverrides): Promise; + marketDebt(overrides?: CallOverrides): Promise - marketKey(overrides?: CallOverrides): Promise; + marketKey(overrides?: CallOverrides): Promise - marketSize(overrides?: CallOverrides): Promise; + marketSize(overrides?: CallOverrides): Promise - marketSizes(overrides?: CallOverrides): Promise; + marketSizes(overrides?: CallOverrides): Promise - marketSkew(overrides?: CallOverrides): Promise; + marketSkew(overrides?: CallOverrides): Promise - marketState(overrides?: CallOverrides): Promise; + marketState(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; + notionalValue(account: string, overrides?: CallOverrides): Promise - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise; + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - positions(account: string, overrides?: CallOverrides): Promise; + positions(account: string, overrides?: CallOverrides): Promise - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise - profitLoss(account: string, overrides?: CallOverrides): Promise; + profitLoss(account: string, overrides?: CallOverrides): Promise - rebuildCache(overrides?: Overrides & { from?: string }): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; + remainingMargin(account: string, overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - unrecordedFunding(overrides?: CallOverrides): Promise; - }; + unrecordedFunding(overrides?: CallOverrides): Promise + } - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise; + accessibleMargin(account: string, overrides?: CallOverrides): Promise - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise; + accruedFunding(account: string, overrides?: CallOverrides): Promise - assetPrice(overrides?: CallOverrides): Promise; + assetPrice(overrides?: CallOverrides): Promise - baseAsset(overrides?: CallOverrides): Promise; + baseAsset(overrides?: CallOverrides): Promise - canLiquidate( - account: string, - overrides?: CallOverrides - ): Promise; + canLiquidate(account: string, overrides?: CallOverrides): Promise - currentFundingRate( - overrides?: CallOverrides - ): Promise; + currentFundingRate(overrides?: CallOverrides): Promise - currentFundingVelocity( - overrides?: CallOverrides - ): Promise; + currentFundingVelocity(overrides?: CallOverrides): Promise - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; + fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - fundingLastRecomputed( - overrides?: CallOverrides - ): Promise; + fundingLastRecomputed(overrides?: CallOverrides): Promise - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; + fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - fundingSequenceLength( - overrides?: CallOverrides - ): Promise; + fundingSequenceLength(overrides?: CallOverrides): Promise - isResolverCached(overrides?: CallOverrides): Promise; + isResolverCached(overrides?: CallOverrides): Promise - liquidationFee( - account: string, - overrides?: CallOverrides - ): Promise; + liquidationFee(account: string, overrides?: CallOverrides): Promise - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise; + liquidationPrice(account: string, overrides?: CallOverrides): Promise - marketDebt(overrides?: CallOverrides): Promise; + marketDebt(overrides?: CallOverrides): Promise - marketKey(overrides?: CallOverrides): Promise; + marketKey(overrides?: CallOverrides): Promise - marketSize(overrides?: CallOverrides): Promise; + marketSize(overrides?: CallOverrides): Promise - marketSizes(overrides?: CallOverrides): Promise; + marketSizes(overrides?: CallOverrides): Promise - marketSkew(overrides?: CallOverrides): Promise; + marketSkew(overrides?: CallOverrides): Promise - marketState(overrides?: CallOverrides): Promise; + marketState(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise; + notionalValue(account: string, overrides?: CallOverrides): Promise - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise; + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - positions( - account: string, - overrides?: CallOverrides - ): Promise; + positions(account: string, overrides?: CallOverrides): Promise - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise; + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise; + profitLoss(account: string, overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise; + remainingMargin(account: string, overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - unrecordedFunding(overrides?: CallOverrides): Promise; - }; + unrecordedFunding(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts index 90eb398cb4..06d6ec5c70 100644 --- a/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts +++ b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts @@ -2,4202 +2,3382 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IAccountModule { - export type AccountPermissionsStruct = { - user: string; - permissions: BytesLike[]; - }; - - export type AccountPermissionsStructOutput = [string, string[]] & { - user: string; - permissions: string[]; - }; + export type AccountPermissionsStruct = { + user: string + permissions: BytesLike[] + } + + export type AccountPermissionsStructOutput = [string, string[]] & { + user: string + permissions: string[] + } } export declare namespace AsyncOrder { - export type DataStruct = { - accountId: BigNumberish; - marketId: BigNumberish; - sizeDelta: BigNumberish; - settlementStrategyId: BigNumberish; - settlementTime: BigNumberish; - acceptablePrice: BigNumberish; - trackingCode: BytesLike; - }; - - export type DataStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - accountId: BigNumber; - marketId: BigNumber; - sizeDelta: BigNumber; - settlementStrategyId: BigNumber; - settlementTime: BigNumber; - acceptablePrice: BigNumber; - trackingCode: string; - }; - - export type OrderCommitmentRequestStruct = { - marketId: BigNumberish; - accountId: BigNumberish; - sizeDelta: BigNumberish; - settlementStrategyId: BigNumberish; - acceptablePrice: BigNumberish; - trackingCode: BytesLike; - }; - - export type OrderCommitmentRequestStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - marketId: BigNumber; - accountId: BigNumber; - sizeDelta: BigNumber; - settlementStrategyId: BigNumber; - acceptablePrice: BigNumber; - trackingCode: string; - }; + export type DataStruct = { + accountId: BigNumberish + marketId: BigNumberish + sizeDelta: BigNumberish + settlementStrategyId: BigNumberish + settlementTime: BigNumberish + acceptablePrice: BigNumberish + trackingCode: BytesLike + } + + export type DataStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + accountId: BigNumber + marketId: BigNumber + sizeDelta: BigNumber + settlementStrategyId: BigNumber + settlementTime: BigNumber + acceptablePrice: BigNumber + trackingCode: string + } + + export type OrderCommitmentRequestStruct = { + marketId: BigNumberish + accountId: BigNumberish + sizeDelta: BigNumberish + settlementStrategyId: BigNumberish + acceptablePrice: BigNumberish + trackingCode: BytesLike + } + + export type OrderCommitmentRequestStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + marketId: BigNumber + accountId: BigNumber + sizeDelta: BigNumber + settlementStrategyId: BigNumber + acceptablePrice: BigNumber + trackingCode: string + } } export declare namespace IPerpsMarketModule { - export type MarketSummaryStruct = { - skew: BigNumberish; - size: BigNumberish; - maxOpenInterest: BigNumberish; - currentFundingRate: BigNumberish; - currentFundingVelocity: BigNumberish; - indexPrice: BigNumberish; - }; - - export type MarketSummaryStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - skew: BigNumber; - size: BigNumber; - maxOpenInterest: BigNumber; - currentFundingRate: BigNumber; - currentFundingVelocity: BigNumber; - indexPrice: BigNumber; - }; + export type MarketSummaryStruct = { + skew: BigNumberish + size: BigNumberish + maxOpenInterest: BigNumberish + currentFundingRate: BigNumberish + currentFundingVelocity: BigNumberish + indexPrice: BigNumberish + } + + export type MarketSummaryStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + skew: BigNumber + size: BigNumber + maxOpenInterest: BigNumber + currentFundingRate: BigNumber + currentFundingVelocity: BigNumber + indexPrice: BigNumber + } } export declare namespace SettlementStrategy { - export type DataStruct = { - strategyType: BigNumberish; - settlementDelay: BigNumberish; - settlementWindowDuration: BigNumberish; - priceWindowDuration: BigNumberish; - priceVerificationContract: string; - feedId: BytesLike; - url: string; - settlementReward: BigNumberish; - priceDeviationTolerance: BigNumberish; - disabled: boolean; - }; - - export type DataStructOutput = [ - number, - BigNumber, - BigNumber, - BigNumber, - string, - string, - string, - BigNumber, - BigNumber, - boolean - ] & { - strategyType: number; - settlementDelay: BigNumber; - settlementWindowDuration: BigNumber; - priceWindowDuration: BigNumber; - priceVerificationContract: string; - feedId: string; - url: string; - settlementReward: BigNumber; - priceDeviationTolerance: BigNumber; - disabled: boolean; - }; + export type DataStruct = { + strategyType: BigNumberish + settlementDelay: BigNumberish + settlementWindowDuration: BigNumberish + priceWindowDuration: BigNumberish + priceVerificationContract: string + feedId: BytesLike + url: string + settlementReward: BigNumberish + priceDeviationTolerance: BigNumberish + disabled: boolean + } + + export type DataStructOutput = [ + number, + BigNumber, + BigNumber, + BigNumber, + string, + string, + string, + BigNumber, + BigNumber, + boolean + ] & { + strategyType: number + settlementDelay: BigNumber + settlementWindowDuration: BigNumber + priceWindowDuration: BigNumber + priceVerificationContract: string + feedId: string + url: string + settlementReward: BigNumber + priceDeviationTolerance: BigNumber + disabled: boolean + } } export interface PerpsV3MarketProxyInterface extends utils.Interface { - functions: { - "createAccount()": FunctionFragment; - "createAccount(uint128)": FunctionFragment; - "getAccountLastInteraction(uint128)": FunctionFragment; - "getAccountOwner(uint128)": FunctionFragment; - "getAccountPermissions(uint128)": FunctionFragment; - "getAccountTokenAddress()": FunctionFragment; - "grantPermission(uint128,bytes32,address)": FunctionFragment; - "hasPermission(uint128,bytes32,address)": FunctionFragment; - "isAuthorized(uint128,bytes32,address)": FunctionFragment; - "notifyAccountTransfer(address,uint128)": FunctionFragment; - "renouncePermission(uint128,bytes32)": FunctionFragment; - "revokePermission(uint128,bytes32,address)": FunctionFragment; - "getAssociatedSystem(bytes32)": FunctionFragment; - "initOrUpgradeNft(bytes32,string,string,string,address)": FunctionFragment; - "initOrUpgradeToken(bytes32,string,string,uint8,address)": FunctionFragment; - "registerUnmanagedSystem(bytes32,address)": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "getImplementation()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "renounceNomination()": FunctionFragment; - "simulateUpgradeTo(address)": FunctionFragment; - "upgradeTo(address)": FunctionFragment; - "acceptMarketOwnership(uint128)": FunctionFragment; - "createMarket(string,string,address)": FunctionFragment; - "getMarketOwner(uint128)": FunctionFragment; - "minimumCredit(uint128)": FunctionFragment; - "name(uint128)": FunctionFragment; - "nominateMarketOwner(uint128,address)": FunctionFragment; - "reportedDebt(uint128)": FunctionFragment; - "setSpotMarket(address)": FunctionFragment; - "setSynthetix(address)": FunctionFragment; - "supportsInterface(bytes4)": FunctionFragment; - "symbol(uint128)": FunctionFragment; - "updatePriceData(uint128,bytes32)": FunctionFragment; - "getAsyncOrderClaim(uint128,uint128)": FunctionFragment; - "getAvailableMargin(uint128)": FunctionFragment; - "getOpenPosition(uint128,uint128)": FunctionFragment; - "modifyCollateral(uint128,uint128,int256)": FunctionFragment; - "totalAccountOpenInterest(uint128)": FunctionFragment; - "totalCollateralValue(uint128)": FunctionFragment; - "currentFundingRate(uint128)": FunctionFragment; - "currentFundingVelocity(uint128)": FunctionFragment; - "fillPrice(uint128,int256,uint256)": FunctionFragment; - "getMarketSummary(uint128)": FunctionFragment; - "indexPrice(uint128)": FunctionFragment; - "maxOpenInterest(uint128)": FunctionFragment; - "size(uint128)": FunctionFragment; - "skew(uint128)": FunctionFragment; - "PRECISION()": FunctionFragment; - "cancelOrder(uint128,uint128)": FunctionFragment; - "commitOrder((uint128,uint128,int128,uint128,uint256,bytes32))": FunctionFragment; - "getOrder(uint128,uint128)": FunctionFragment; - "settle(uint128,uint128)": FunctionFragment; - "settlePythOrder(bytes,bytes)": FunctionFragment; - "addToFeatureFlagAllowlist(bytes32,address)": FunctionFragment; - "getDeniers(bytes32)": FunctionFragment; - "getFeatureFlagAllowAll(bytes32)": FunctionFragment; - "getFeatureFlagAllowlist(bytes32)": FunctionFragment; - "getFeatureFlagDenyAll(bytes32)": FunctionFragment; - "isFeatureAllowed(bytes32,address)": FunctionFragment; - "removeFromFeatureFlagAllowlist(bytes32,address)": FunctionFragment; - "setDeniers(bytes32,address[])": FunctionFragment; - "setFeatureFlagAllowAll(bytes32,bool)": FunctionFragment; - "setFeatureFlagDenyAll(bytes32,bool)": FunctionFragment; - "liquidate(uint128)": FunctionFragment; - "liquidateFlagged()": FunctionFragment; - "addSettlementStrategy(uint128,(uint8,uint256,uint256,uint256,address,bytes32,string,uint256,uint256,bool))": FunctionFragment; - "getFundingParameters(uint128)": FunctionFragment; - "getLiquidationParameters(uint128)": FunctionFragment; - "getLockedOiPercent(uint128)": FunctionFragment; - "getMaxMarketValue(uint128)": FunctionFragment; - "getOrderFees(uint128)": FunctionFragment; - "getSettlementStrategy(uint128,uint256)": FunctionFragment; - "setFundingParameters(uint128,uint256,uint256)": FunctionFragment; - "setLiquidationParameters(uint128,uint256,uint256,uint256,uint256,uint256)": FunctionFragment; - "setLockedOiPercent(uint128,uint256)": FunctionFragment; - "setMaxMarketValue(uint128,uint256)": FunctionFragment; - "setOrderFees(uint128,uint256,uint256)": FunctionFragment; - "setSettlementStrategyEnabled(uint128,uint256,bool)": FunctionFragment; - "getLiquidationRewardGuards()": FunctionFragment; - "getMaxCollateralAmount(uint128)": FunctionFragment; - "getSynthDeductionPriority()": FunctionFragment; - "setLiquidationRewardGuards(uint256,uint256)": FunctionFragment; - "setMaxCollateralAmount(uint128,uint256)": FunctionFragment; - "setSynthDeductionPriority(uint128[])": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "createAccount()" - | "createAccount(uint128)" - | "getAccountLastInteraction" - | "getAccountOwner" - | "getAccountPermissions" - | "getAccountTokenAddress" - | "grantPermission" - | "hasPermission" - | "isAuthorized" - | "notifyAccountTransfer" - | "renouncePermission" - | "revokePermission" - | "getAssociatedSystem" - | "initOrUpgradeNft" - | "initOrUpgradeToken" - | "registerUnmanagedSystem" - | "acceptOwnership" - | "getImplementation" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "renounceNomination" - | "simulateUpgradeTo" - | "upgradeTo" - | "acceptMarketOwnership" - | "createMarket" - | "getMarketOwner" - | "minimumCredit" - | "name" - | "nominateMarketOwner" - | "reportedDebt" - | "setSpotMarket" - | "setSynthetix" - | "supportsInterface" - | "symbol" - | "updatePriceData" - | "getAsyncOrderClaim" - | "getAvailableMargin" - | "getOpenPosition" - | "modifyCollateral" - | "totalAccountOpenInterest" - | "totalCollateralValue" - | "currentFundingRate" - | "currentFundingVelocity" - | "fillPrice" - | "getMarketSummary" - | "indexPrice" - | "maxOpenInterest" - | "size" - | "skew" - | "PRECISION" - | "cancelOrder" - | "commitOrder" - | "getOrder" - | "settle" - | "settlePythOrder" - | "addToFeatureFlagAllowlist" - | "getDeniers" - | "getFeatureFlagAllowAll" - | "getFeatureFlagAllowlist" - | "getFeatureFlagDenyAll" - | "isFeatureAllowed" - | "removeFromFeatureFlagAllowlist" - | "setDeniers" - | "setFeatureFlagAllowAll" - | "setFeatureFlagDenyAll" - | "liquidate" - | "liquidateFlagged" - | "addSettlementStrategy" - | "getFundingParameters" - | "getLiquidationParameters" - | "getLockedOiPercent" - | "getMaxMarketValue" - | "getOrderFees" - | "getSettlementStrategy" - | "setFundingParameters" - | "setLiquidationParameters" - | "setLockedOiPercent" - | "setMaxMarketValue" - | "setOrderFees" - | "setSettlementStrategyEnabled" - | "getLiquidationRewardGuards" - | "getMaxCollateralAmount" - | "getSynthDeductionPriority" - | "setLiquidationRewardGuards" - | "setMaxCollateralAmount" - | "setSynthDeductionPriority" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "createAccount()", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "createAccount(uint128)", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAccountLastInteraction", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAccountOwner", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAccountPermissions", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAccountTokenAddress", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "grantPermission", - values: [BigNumberish, BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "hasPermission", - values: [BigNumberish, BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "isAuthorized", - values: [BigNumberish, BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "notifyAccountTransfer", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "renouncePermission", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "revokePermission", - values: [BigNumberish, BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "getAssociatedSystem", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "initOrUpgradeNft", - values: [BytesLike, string, string, string, string] - ): string; - encodeFunctionData( - functionFragment: "initOrUpgradeToken", - values: [BytesLike, string, string, BigNumberish, string] - ): string; - encodeFunctionData( - functionFragment: "registerUnmanagedSystem", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getImplementation", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "renounceNomination", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "simulateUpgradeTo", - values: [string] - ): string; - encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; - encodeFunctionData( - functionFragment: "acceptMarketOwnership", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "createMarket", - values: [string, string, string] - ): string; - encodeFunctionData( - functionFragment: "getMarketOwner", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "minimumCredit", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "name", values: [BigNumberish]): string; - encodeFunctionData( - functionFragment: "nominateMarketOwner", - values: [BigNumberish, string] - ): string; - encodeFunctionData( - functionFragment: "reportedDebt", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setSpotMarket", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "setSynthetix", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "supportsInterface", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "symbol", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "updatePriceData", - values: [BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getAsyncOrderClaim", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAvailableMargin", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getOpenPosition", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "modifyCollateral", - values: [BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "totalAccountOpenInterest", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "totalCollateralValue", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "currentFundingRate", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "currentFundingVelocity", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "fillPrice", - values: [BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getMarketSummary", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "indexPrice", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "maxOpenInterest", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "size", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "skew", values: [BigNumberish]): string; - encodeFunctionData(functionFragment: "PRECISION", values?: undefined): string; - encodeFunctionData( - functionFragment: "cancelOrder", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "commitOrder", - values: [AsyncOrder.OrderCommitmentRequestStruct] - ): string; - encodeFunctionData( - functionFragment: "getOrder", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "settle", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "settlePythOrder", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "addToFeatureFlagAllowlist", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "getDeniers", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getFeatureFlagAllowAll", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getFeatureFlagAllowlist", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getFeatureFlagDenyAll", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "isFeatureAllowed", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "removeFromFeatureFlagAllowlist", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "setDeniers", - values: [BytesLike, string[]] - ): string; - encodeFunctionData( - functionFragment: "setFeatureFlagAllowAll", - values: [BytesLike, boolean] - ): string; - encodeFunctionData( - functionFragment: "setFeatureFlagDenyAll", - values: [BytesLike, boolean] - ): string; - encodeFunctionData( - functionFragment: "liquidate", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "liquidateFlagged", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "addSettlementStrategy", - values: [BigNumberish, SettlementStrategy.DataStruct] - ): string; - encodeFunctionData( - functionFragment: "getFundingParameters", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getLiquidationParameters", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getLockedOiPercent", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getMaxMarketValue", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getOrderFees", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getSettlementStrategy", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setFundingParameters", - values: [BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setLiquidationParameters", - values: [ - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish - ] - ): string; - encodeFunctionData( - functionFragment: "setLockedOiPercent", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setMaxMarketValue", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setOrderFees", - values: [BigNumberish, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setSettlementStrategyEnabled", - values: [BigNumberish, BigNumberish, boolean] - ): string; - encodeFunctionData( - functionFragment: "getLiquidationRewardGuards", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getMaxCollateralAmount", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getSynthDeductionPriority", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "setLiquidationRewardGuards", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setMaxCollateralAmount", - values: [BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "setSynthDeductionPriority", - values: [BigNumberish[]] - ): string; - - decodeFunctionResult( - functionFragment: "createAccount()", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "createAccount(uint128)", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAccountLastInteraction", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAccountOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAccountPermissions", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAccountTokenAddress", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "grantPermission", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "hasPermission", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isAuthorized", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notifyAccountTransfer", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "renouncePermission", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "revokePermission", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAssociatedSystem", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initOrUpgradeNft", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "initOrUpgradeToken", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "registerUnmanagedSystem", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getImplementation", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "renounceNomination", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "simulateUpgradeTo", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "acceptMarketOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "createMarket", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getMarketOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "minimumCredit", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "nominateMarketOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "reportedDebt", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setSpotMarket", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setSynthetix", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "supportsInterface", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "updatePriceData", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAsyncOrderClaim", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAvailableMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getOpenPosition", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "modifyCollateral", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalAccountOpenInterest", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalCollateralValue", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingRate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "currentFundingVelocity", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getMarketSummary", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "indexPrice", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "maxOpenInterest", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "size", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "skew", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "PRECISION", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "cancelOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "commitOrder", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getOrder", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "settlePythOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "addToFeatureFlagAllowlist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getDeniers", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getFeatureFlagAllowAll", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getFeatureFlagAllowlist", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getFeatureFlagDenyAll", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isFeatureAllowed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "removeFromFeatureFlagAllowlist", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "setDeniers", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setFeatureFlagAllowAll", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setFeatureFlagDenyAll", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "liquidate", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "liquidateFlagged", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "addSettlementStrategy", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getFundingParameters", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getLiquidationParameters", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getLockedOiPercent", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getMaxMarketValue", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getOrderFees", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getSettlementStrategy", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setFundingParameters", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setLiquidationParameters", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setLockedOiPercent", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMaxMarketValue", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setOrderFees", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setSettlementStrategyEnabled", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getLiquidationRewardGuards", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getMaxCollateralAmount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getSynthDeductionPriority", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setLiquidationRewardGuards", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMaxCollateralAmount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setSynthDeductionPriority", - data: BytesLike - ): Result; - - events: { - "AccountCreated(uint128,address)": EventFragment; - "PermissionGranted(uint128,bytes32,address,address)": EventFragment; - "PermissionRevoked(uint128,bytes32,address,address)": EventFragment; - "AssociatedSystemSet(bytes32,bytes32,address,address)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "Upgraded(address,address)": EventFragment; - "MarketOwnerChanged(uint128,address,address)": EventFragment; - "MarketOwnerNominated(uint128,address)": EventFragment; - "MarketPriceDataUpdated(uint128,bytes32)": EventFragment; - "MarketRegistered(uint128,address,string,string)": EventFragment; - "CollateralModified(uint128,uint128,int256,address)": EventFragment; - "OrderCanceled(uint128,uint128,uint256,uint256)": EventFragment; - "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)": EventFragment; - "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)": EventFragment; - "FeatureFlagAllowAllSet(bytes32,bool)": EventFragment; - "FeatureFlagAllowlistAdded(bytes32,address)": EventFragment; - "FeatureFlagAllowlistRemoved(bytes32,address)": EventFragment; - "FeatureFlagDeniersReset(bytes32,address[])": EventFragment; - "FeatureFlagDenyAllSet(bytes32,bool)": EventFragment; - "FundingParametersSet(uint128,uint256,uint256)": EventFragment; - "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)": EventFragment; - "LockedOiPercentSet(uint128,uint256)": EventFragment; - "MaxMarketValueSet(uint128,uint256)": EventFragment; - "OrderFeesSet(uint128,uint256,uint256)": EventFragment; - "SettlementStrategyAdded(uint128,tuple,uint256)": EventFragment; - "SettlementStrategyEnabled(uint128,uint256,bool)": EventFragment; - "LiquidationRewardGuardsSet(uint256,uint256)": EventFragment; - "MaxCollateralAmountSet(uint128,uint256)": EventFragment; - "SynthDeductionPrioritySet(uint128[])": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountCreated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PermissionGranted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PermissionRevoked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AssociatedSystemSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarketOwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarketOwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarketPriceDataUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MarketRegistered"): EventFragment; - getEvent(nameOrSignatureOrTopic: "CollateralModified"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OrderCanceled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OrderCommitted"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OrderSettled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowAllSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowlistAdded"): EventFragment; - getEvent( - nameOrSignatureOrTopic: "FeatureFlagAllowlistRemoved" - ): EventFragment; - getEvent(nameOrSignatureOrTopic: "FeatureFlagDeniersReset"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FeatureFlagDenyAllSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FundingParametersSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "LiquidationParametersSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "LockedOiPercentSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MaxMarketValueSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OrderFeesSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SettlementStrategyAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SettlementStrategyEnabled"): EventFragment; - getEvent(nameOrSignatureOrTopic: "LiquidationRewardGuardsSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "MaxCollateralAmountSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthDeductionPrioritySet"): EventFragment; + functions: { + 'createAccount()': FunctionFragment + 'createAccount(uint128)': FunctionFragment + 'getAccountLastInteraction(uint128)': FunctionFragment + 'getAccountOwner(uint128)': FunctionFragment + 'getAccountPermissions(uint128)': FunctionFragment + 'getAccountTokenAddress()': FunctionFragment + 'grantPermission(uint128,bytes32,address)': FunctionFragment + 'hasPermission(uint128,bytes32,address)': FunctionFragment + 'isAuthorized(uint128,bytes32,address)': FunctionFragment + 'notifyAccountTransfer(address,uint128)': FunctionFragment + 'renouncePermission(uint128,bytes32)': FunctionFragment + 'revokePermission(uint128,bytes32,address)': FunctionFragment + 'getAssociatedSystem(bytes32)': FunctionFragment + 'initOrUpgradeNft(bytes32,string,string,string,address)': FunctionFragment + 'initOrUpgradeToken(bytes32,string,string,uint8,address)': FunctionFragment + 'registerUnmanagedSystem(bytes32,address)': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'getImplementation()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'renounceNomination()': FunctionFragment + 'simulateUpgradeTo(address)': FunctionFragment + 'upgradeTo(address)': FunctionFragment + 'acceptMarketOwnership(uint128)': FunctionFragment + 'createMarket(string,string,address)': FunctionFragment + 'getMarketOwner(uint128)': FunctionFragment + 'minimumCredit(uint128)': FunctionFragment + 'name(uint128)': FunctionFragment + 'nominateMarketOwner(uint128,address)': FunctionFragment + 'reportedDebt(uint128)': FunctionFragment + 'setSpotMarket(address)': FunctionFragment + 'setSynthetix(address)': FunctionFragment + 'supportsInterface(bytes4)': FunctionFragment + 'symbol(uint128)': FunctionFragment + 'updatePriceData(uint128,bytes32)': FunctionFragment + 'getAsyncOrderClaim(uint128,uint128)': FunctionFragment + 'getAvailableMargin(uint128)': FunctionFragment + 'getOpenPosition(uint128,uint128)': FunctionFragment + 'modifyCollateral(uint128,uint128,int256)': FunctionFragment + 'totalAccountOpenInterest(uint128)': FunctionFragment + 'totalCollateralValue(uint128)': FunctionFragment + 'currentFundingRate(uint128)': FunctionFragment + 'currentFundingVelocity(uint128)': FunctionFragment + 'fillPrice(uint128,int256,uint256)': FunctionFragment + 'getMarketSummary(uint128)': FunctionFragment + 'indexPrice(uint128)': FunctionFragment + 'maxOpenInterest(uint128)': FunctionFragment + 'size(uint128)': FunctionFragment + 'skew(uint128)': FunctionFragment + 'PRECISION()': FunctionFragment + 'cancelOrder(uint128,uint128)': FunctionFragment + 'commitOrder((uint128,uint128,int128,uint128,uint256,bytes32))': FunctionFragment + 'getOrder(uint128,uint128)': FunctionFragment + 'settle(uint128,uint128)': FunctionFragment + 'settlePythOrder(bytes,bytes)': FunctionFragment + 'addToFeatureFlagAllowlist(bytes32,address)': FunctionFragment + 'getDeniers(bytes32)': FunctionFragment + 'getFeatureFlagAllowAll(bytes32)': FunctionFragment + 'getFeatureFlagAllowlist(bytes32)': FunctionFragment + 'getFeatureFlagDenyAll(bytes32)': FunctionFragment + 'isFeatureAllowed(bytes32,address)': FunctionFragment + 'removeFromFeatureFlagAllowlist(bytes32,address)': FunctionFragment + 'setDeniers(bytes32,address[])': FunctionFragment + 'setFeatureFlagAllowAll(bytes32,bool)': FunctionFragment + 'setFeatureFlagDenyAll(bytes32,bool)': FunctionFragment + 'liquidate(uint128)': FunctionFragment + 'liquidateFlagged()': FunctionFragment + 'addSettlementStrategy(uint128,(uint8,uint256,uint256,uint256,address,bytes32,string,uint256,uint256,bool))': FunctionFragment + 'getFundingParameters(uint128)': FunctionFragment + 'getLiquidationParameters(uint128)': FunctionFragment + 'getLockedOiPercent(uint128)': FunctionFragment + 'getMaxMarketValue(uint128)': FunctionFragment + 'getOrderFees(uint128)': FunctionFragment + 'getSettlementStrategy(uint128,uint256)': FunctionFragment + 'setFundingParameters(uint128,uint256,uint256)': FunctionFragment + 'setLiquidationParameters(uint128,uint256,uint256,uint256,uint256,uint256)': FunctionFragment + 'setLockedOiPercent(uint128,uint256)': FunctionFragment + 'setMaxMarketValue(uint128,uint256)': FunctionFragment + 'setOrderFees(uint128,uint256,uint256)': FunctionFragment + 'setSettlementStrategyEnabled(uint128,uint256,bool)': FunctionFragment + 'getLiquidationRewardGuards()': FunctionFragment + 'getMaxCollateralAmount(uint128)': FunctionFragment + 'getSynthDeductionPriority()': FunctionFragment + 'setLiquidationRewardGuards(uint256,uint256)': FunctionFragment + 'setMaxCollateralAmount(uint128,uint256)': FunctionFragment + 'setSynthDeductionPriority(uint128[])': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'createAccount()' + | 'createAccount(uint128)' + | 'getAccountLastInteraction' + | 'getAccountOwner' + | 'getAccountPermissions' + | 'getAccountTokenAddress' + | 'grantPermission' + | 'hasPermission' + | 'isAuthorized' + | 'notifyAccountTransfer' + | 'renouncePermission' + | 'revokePermission' + | 'getAssociatedSystem' + | 'initOrUpgradeNft' + | 'initOrUpgradeToken' + | 'registerUnmanagedSystem' + | 'acceptOwnership' + | 'getImplementation' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'renounceNomination' + | 'simulateUpgradeTo' + | 'upgradeTo' + | 'acceptMarketOwnership' + | 'createMarket' + | 'getMarketOwner' + | 'minimumCredit' + | 'name' + | 'nominateMarketOwner' + | 'reportedDebt' + | 'setSpotMarket' + | 'setSynthetix' + | 'supportsInterface' + | 'symbol' + | 'updatePriceData' + | 'getAsyncOrderClaim' + | 'getAvailableMargin' + | 'getOpenPosition' + | 'modifyCollateral' + | 'totalAccountOpenInterest' + | 'totalCollateralValue' + | 'currentFundingRate' + | 'currentFundingVelocity' + | 'fillPrice' + | 'getMarketSummary' + | 'indexPrice' + | 'maxOpenInterest' + | 'size' + | 'skew' + | 'PRECISION' + | 'cancelOrder' + | 'commitOrder' + | 'getOrder' + | 'settle' + | 'settlePythOrder' + | 'addToFeatureFlagAllowlist' + | 'getDeniers' + | 'getFeatureFlagAllowAll' + | 'getFeatureFlagAllowlist' + | 'getFeatureFlagDenyAll' + | 'isFeatureAllowed' + | 'removeFromFeatureFlagAllowlist' + | 'setDeniers' + | 'setFeatureFlagAllowAll' + | 'setFeatureFlagDenyAll' + | 'liquidate' + | 'liquidateFlagged' + | 'addSettlementStrategy' + | 'getFundingParameters' + | 'getLiquidationParameters' + | 'getLockedOiPercent' + | 'getMaxMarketValue' + | 'getOrderFees' + | 'getSettlementStrategy' + | 'setFundingParameters' + | 'setLiquidationParameters' + | 'setLockedOiPercent' + | 'setMaxMarketValue' + | 'setOrderFees' + | 'setSettlementStrategyEnabled' + | 'getLiquidationRewardGuards' + | 'getMaxCollateralAmount' + | 'getSynthDeductionPriority' + | 'setLiquidationRewardGuards' + | 'setMaxCollateralAmount' + | 'setSynthDeductionPriority' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'createAccount()', values?: undefined): string + encodeFunctionData(functionFragment: 'createAccount(uint128)', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getAccountLastInteraction', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getAccountOwner', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getAccountPermissions', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getAccountTokenAddress', values?: undefined): string + encodeFunctionData( + functionFragment: 'grantPermission', + values: [BigNumberish, BytesLike, string] + ): string + encodeFunctionData( + functionFragment: 'hasPermission', + values: [BigNumberish, BytesLike, string] + ): string + encodeFunctionData( + functionFragment: 'isAuthorized', + values: [BigNumberish, BytesLike, string] + ): string + encodeFunctionData( + functionFragment: 'notifyAccountTransfer', + values: [string, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'renouncePermission', + values: [BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'revokePermission', + values: [BigNumberish, BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'getAssociatedSystem', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'initOrUpgradeNft', + values: [BytesLike, string, string, string, string] + ): string + encodeFunctionData( + functionFragment: 'initOrUpgradeToken', + values: [BytesLike, string, string, BigNumberish, string] + ): string + encodeFunctionData( + functionFragment: 'registerUnmanagedSystem', + values: [BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'getImplementation', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'renounceNomination', values?: undefined): string + encodeFunctionData(functionFragment: 'simulateUpgradeTo', values: [string]): string + encodeFunctionData(functionFragment: 'upgradeTo', values: [string]): string + encodeFunctionData(functionFragment: 'acceptMarketOwnership', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'createMarket', values: [string, string, string]): string + encodeFunctionData(functionFragment: 'getMarketOwner', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'minimumCredit', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'name', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'nominateMarketOwner', + values: [BigNumberish, string] + ): string + encodeFunctionData(functionFragment: 'reportedDebt', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'setSpotMarket', values: [string]): string + encodeFunctionData(functionFragment: 'setSynthetix', values: [string]): string + encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'symbol', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'updatePriceData', values: [BigNumberish, BytesLike]): string + encodeFunctionData( + functionFragment: 'getAsyncOrderClaim', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getAvailableMargin', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'getOpenPosition', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'modifyCollateral', + values: [BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'totalAccountOpenInterest', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'totalCollateralValue', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'currentFundingRate', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'currentFundingVelocity', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'fillPrice', + values: [BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getMarketSummary', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'indexPrice', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'maxOpenInterest', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'size', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'skew', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'PRECISION', values?: undefined): string + encodeFunctionData(functionFragment: 'cancelOrder', values: [BigNumberish, BigNumberish]): string + encodeFunctionData( + functionFragment: 'commitOrder', + values: [AsyncOrder.OrderCommitmentRequestStruct] + ): string + encodeFunctionData(functionFragment: 'getOrder', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'settle', values: [BigNumberish, BigNumberish]): string + encodeFunctionData(functionFragment: 'settlePythOrder', values: [BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: 'addToFeatureFlagAllowlist', + values: [BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'getDeniers', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getFeatureFlagAllowAll', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getFeatureFlagAllowlist', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getFeatureFlagDenyAll', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'isFeatureAllowed', values: [BytesLike, string]): string + encodeFunctionData( + functionFragment: 'removeFromFeatureFlagAllowlist', + values: [BytesLike, string] + ): string + encodeFunctionData(functionFragment: 'setDeniers', values: [BytesLike, string[]]): string + encodeFunctionData( + functionFragment: 'setFeatureFlagAllowAll', + values: [BytesLike, boolean] + ): string + encodeFunctionData( + functionFragment: 'setFeatureFlagDenyAll', + values: [BytesLike, boolean] + ): string + encodeFunctionData(functionFragment: 'liquidate', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'liquidateFlagged', values?: undefined): string + encodeFunctionData( + functionFragment: 'addSettlementStrategy', + values: [BigNumberish, SettlementStrategy.DataStruct] + ): string + encodeFunctionData(functionFragment: 'getFundingParameters', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getLiquidationParameters', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getLockedOiPercent', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getMaxMarketValue', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getOrderFees', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'getSettlementStrategy', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setFundingParameters', + values: [BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setLiquidationParameters', + values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setLockedOiPercent', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setMaxMarketValue', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setOrderFees', + values: [BigNumberish, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setSettlementStrategyEnabled', + values: [BigNumberish, BigNumberish, boolean] + ): string + encodeFunctionData(functionFragment: 'getLiquidationRewardGuards', values?: undefined): string + encodeFunctionData(functionFragment: 'getMaxCollateralAmount', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getSynthDeductionPriority', values?: undefined): string + encodeFunctionData( + functionFragment: 'setLiquidationRewardGuards', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setMaxCollateralAmount', + values: [BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'setSynthDeductionPriority', + values: [BigNumberish[]] + ): string + + decodeFunctionResult(functionFragment: 'createAccount()', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'createAccount(uint128)', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAccountLastInteraction', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAccountOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAccountPermissions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAccountTokenAddress', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'grantPermission', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'hasPermission', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isAuthorized', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notifyAccountTransfer', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'renouncePermission', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'revokePermission', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAssociatedSystem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'initOrUpgradeNft', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'initOrUpgradeToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'registerUnmanagedSystem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getImplementation', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'renounceNomination', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'simulateUpgradeTo', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'upgradeTo', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptMarketOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'createMarket', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getMarketOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'minimumCredit', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateMarketOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'reportedDebt', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setSpotMarket', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setSynthetix', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'updatePriceData', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAsyncOrderClaim', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAvailableMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getOpenPosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'modifyCollateral', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalAccountOpenInterest', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalCollateralValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getMarketSummary', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'indexPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'maxOpenInterest', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'size', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'skew', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'PRECISION', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'cancelOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'commitOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'settlePythOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'addToFeatureFlagAllowlist', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getDeniers', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFeatureFlagAllowAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFeatureFlagAllowlist', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFeatureFlagDenyAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isFeatureAllowed', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'removeFromFeatureFlagAllowlist', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setDeniers', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setFeatureFlagAllowAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setFeatureFlagDenyAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidateFlagged', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'addSettlementStrategy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFundingParameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getLiquidationParameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getLockedOiPercent', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getMaxMarketValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getOrderFees', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getSettlementStrategy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setFundingParameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setLiquidationParameters', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setLockedOiPercent', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMaxMarketValue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setOrderFees', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setSettlementStrategyEnabled', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getLiquidationRewardGuards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getMaxCollateralAmount', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getSynthDeductionPriority', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setLiquidationRewardGuards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMaxCollateralAmount', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setSynthDeductionPriority', data: BytesLike): Result + + events: { + 'AccountCreated(uint128,address)': EventFragment + 'PermissionGranted(uint128,bytes32,address,address)': EventFragment + 'PermissionRevoked(uint128,bytes32,address,address)': EventFragment + 'AssociatedSystemSet(bytes32,bytes32,address,address)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'Upgraded(address,address)': EventFragment + 'MarketOwnerChanged(uint128,address,address)': EventFragment + 'MarketOwnerNominated(uint128,address)': EventFragment + 'MarketPriceDataUpdated(uint128,bytes32)': EventFragment + 'MarketRegistered(uint128,address,string,string)': EventFragment + 'CollateralModified(uint128,uint128,int256,address)': EventFragment + 'OrderCanceled(uint128,uint128,uint256,uint256)': EventFragment + 'OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)': EventFragment + 'OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)': EventFragment + 'FeatureFlagAllowAllSet(bytes32,bool)': EventFragment + 'FeatureFlagAllowlistAdded(bytes32,address)': EventFragment + 'FeatureFlagAllowlistRemoved(bytes32,address)': EventFragment + 'FeatureFlagDeniersReset(bytes32,address[])': EventFragment + 'FeatureFlagDenyAllSet(bytes32,bool)': EventFragment + 'FundingParametersSet(uint128,uint256,uint256)': EventFragment + 'LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)': EventFragment + 'LockedOiPercentSet(uint128,uint256)': EventFragment + 'MaxMarketValueSet(uint128,uint256)': EventFragment + 'OrderFeesSet(uint128,uint256,uint256)': EventFragment + 'SettlementStrategyAdded(uint128,tuple,uint256)': EventFragment + 'SettlementStrategyEnabled(uint128,uint256,bool)': EventFragment + 'LiquidationRewardGuardsSet(uint256,uint256)': EventFragment + 'MaxCollateralAmountSet(uint128,uint256)': EventFragment + 'SynthDeductionPrioritySet(uint128[])': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'AccountCreated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PermissionGranted'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PermissionRevoked'): EventFragment + getEvent(nameOrSignatureOrTopic: 'AssociatedSystemSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Upgraded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarketOwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarketOwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarketPriceDataUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MarketRegistered'): EventFragment + getEvent(nameOrSignatureOrTopic: 'CollateralModified'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OrderCanceled'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OrderCommitted'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OrderSettled'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowAllSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowlistAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowlistRemoved'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FeatureFlagDeniersReset'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FeatureFlagDenyAllSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FundingParametersSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'LiquidationParametersSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'LockedOiPercentSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MaxMarketValueSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OrderFeesSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SettlementStrategyAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SettlementStrategyEnabled'): EventFragment + getEvent(nameOrSignatureOrTopic: 'LiquidationRewardGuardsSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'MaxCollateralAmountSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthDeductionPrioritySet'): EventFragment } export interface AccountCreatedEventObject { - accountId: BigNumber; - owner: string; + accountId: BigNumber + owner: string } -export type AccountCreatedEvent = TypedEvent< - [BigNumber, string], - AccountCreatedEventObject ->; +export type AccountCreatedEvent = TypedEvent<[BigNumber, string], AccountCreatedEventObject> -export type AccountCreatedEventFilter = TypedEventFilter; +export type AccountCreatedEventFilter = TypedEventFilter export interface PermissionGrantedEventObject { - accountId: BigNumber; - permission: string; - user: string; - sender: string; + accountId: BigNumber + permission: string + user: string + sender: string } export type PermissionGrantedEvent = TypedEvent< - [BigNumber, string, string, string], - PermissionGrantedEventObject ->; + [BigNumber, string, string, string], + PermissionGrantedEventObject +> -export type PermissionGrantedEventFilter = - TypedEventFilter; +export type PermissionGrantedEventFilter = TypedEventFilter export interface PermissionRevokedEventObject { - accountId: BigNumber; - permission: string; - user: string; - sender: string; + accountId: BigNumber + permission: string + user: string + sender: string } export type PermissionRevokedEvent = TypedEvent< - [BigNumber, string, string, string], - PermissionRevokedEventObject ->; + [BigNumber, string, string, string], + PermissionRevokedEventObject +> -export type PermissionRevokedEventFilter = - TypedEventFilter; +export type PermissionRevokedEventFilter = TypedEventFilter export interface AssociatedSystemSetEventObject { - kind: string; - id: string; - proxy: string; - impl: string; + kind: string + id: string + proxy: string + impl: string } export type AssociatedSystemSetEvent = TypedEvent< - [string, string, string, string], - AssociatedSystemSetEventObject ->; + [string, string, string, string], + AssociatedSystemSetEventObject +> -export type AssociatedSystemSetEventFilter = - TypedEventFilter; +export type AssociatedSystemSetEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface UpgradedEventObject { - self: string; - implementation: string; + self: string + implementation: string } -export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject>; +export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject> -export type UpgradedEventFilter = TypedEventFilter; +export type UpgradedEventFilter = TypedEventFilter export interface MarketOwnerChangedEventObject { - perpsMarketId: BigNumber; - oldOwner: string; - newOwner: string; + perpsMarketId: BigNumber + oldOwner: string + newOwner: string } export type MarketOwnerChangedEvent = TypedEvent< - [BigNumber, string, string], - MarketOwnerChangedEventObject ->; + [BigNumber, string, string], + MarketOwnerChangedEventObject +> -export type MarketOwnerChangedEventFilter = - TypedEventFilter; +export type MarketOwnerChangedEventFilter = TypedEventFilter export interface MarketOwnerNominatedEventObject { - perpsMarketId: BigNumber; - newNominatedOwner: string; + perpsMarketId: BigNumber + newNominatedOwner: string } export type MarketOwnerNominatedEvent = TypedEvent< - [BigNumber, string], - MarketOwnerNominatedEventObject ->; + [BigNumber, string], + MarketOwnerNominatedEventObject +> -export type MarketOwnerNominatedEventFilter = - TypedEventFilter; +export type MarketOwnerNominatedEventFilter = TypedEventFilter export interface MarketPriceDataUpdatedEventObject { - perpsMarketId: BigNumber; - feedId: string; + perpsMarketId: BigNumber + feedId: string } export type MarketPriceDataUpdatedEvent = TypedEvent< - [BigNumber, string], - MarketPriceDataUpdatedEventObject ->; + [BigNumber, string], + MarketPriceDataUpdatedEventObject +> -export type MarketPriceDataUpdatedEventFilter = - TypedEventFilter; +export type MarketPriceDataUpdatedEventFilter = TypedEventFilter export interface MarketRegisteredEventObject { - perpsMarketId: BigNumber; - marketOwner: string; - marketName: string; - marketSymbol: string; + perpsMarketId: BigNumber + marketOwner: string + marketName: string + marketSymbol: string } export type MarketRegisteredEvent = TypedEvent< - [BigNumber, string, string, string], - MarketRegisteredEventObject ->; + [BigNumber, string, string, string], + MarketRegisteredEventObject +> -export type MarketRegisteredEventFilter = - TypedEventFilter; +export type MarketRegisteredEventFilter = TypedEventFilter export interface CollateralModifiedEventObject { - accountId: BigNumber; - synthMarketId: BigNumber; - amountDelta: BigNumber; - sender: string; + accountId: BigNumber + synthMarketId: BigNumber + amountDelta: BigNumber + sender: string } export type CollateralModifiedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, string], - CollateralModifiedEventObject ->; + [BigNumber, BigNumber, BigNumber, string], + CollateralModifiedEventObject +> -export type CollateralModifiedEventFilter = - TypedEventFilter; +export type CollateralModifiedEventFilter = TypedEventFilter export interface OrderCanceledEventObject { - marketId: BigNumber; - accountId: BigNumber; - settlementTime: BigNumber; - acceptablePrice: BigNumber; + marketId: BigNumber + accountId: BigNumber + settlementTime: BigNumber + acceptablePrice: BigNumber } export type OrderCanceledEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber], - OrderCanceledEventObject ->; + [BigNumber, BigNumber, BigNumber, BigNumber], + OrderCanceledEventObject +> -export type OrderCanceledEventFilter = TypedEventFilter; +export type OrderCanceledEventFilter = TypedEventFilter export interface OrderCommittedEventObject { - marketId: BigNumber; - accountId: BigNumber; - orderType: number; - sizeDelta: BigNumber; - acceptablePrice: BigNumber; - settlementTime: BigNumber; - expirationTime: BigNumber; - trackingCode: string; - sender: string; + marketId: BigNumber + accountId: BigNumber + orderType: number + sizeDelta: BigNumber + acceptablePrice: BigNumber + settlementTime: BigNumber + expirationTime: BigNumber + trackingCode: string + sender: string } export type OrderCommittedEvent = TypedEvent< - [ - BigNumber, - BigNumber, - number, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ], - OrderCommittedEventObject ->; - -export type OrderCommittedEventFilter = TypedEventFilter; + [BigNumber, BigNumber, number, BigNumber, BigNumber, BigNumber, BigNumber, string, string], + OrderCommittedEventObject +> + +export type OrderCommittedEventFilter = TypedEventFilter export interface OrderSettledEventObject { - marketId: BigNumber; - accountId: BigNumber; - fillPrice: BigNumber; - accountPnlRealized: BigNumber; - newSize: BigNumber; - collectedFees: BigNumber; - settelementReward: BigNumber; - trackingCode: string; - settler: string; + marketId: BigNumber + accountId: BigNumber + fillPrice: BigNumber + accountPnlRealized: BigNumber + newSize: BigNumber + collectedFees: BigNumber + settelementReward: BigNumber + trackingCode: string + settler: string } export type OrderSettledEvent = TypedEvent< - [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - string - ], - OrderSettledEventObject ->; - -export type OrderSettledEventFilter = TypedEventFilter; + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string, string], + OrderSettledEventObject +> + +export type OrderSettledEventFilter = TypedEventFilter export interface FeatureFlagAllowAllSetEventObject { - feature: string; - allowAll: boolean; + feature: string + allowAll: boolean } export type FeatureFlagAllowAllSetEvent = TypedEvent< - [string, boolean], - FeatureFlagAllowAllSetEventObject ->; + [string, boolean], + FeatureFlagAllowAllSetEventObject +> -export type FeatureFlagAllowAllSetEventFilter = - TypedEventFilter; +export type FeatureFlagAllowAllSetEventFilter = TypedEventFilter export interface FeatureFlagAllowlistAddedEventObject { - feature: string; - account: string; + feature: string + account: string } export type FeatureFlagAllowlistAddedEvent = TypedEvent< - [string, string], - FeatureFlagAllowlistAddedEventObject ->; + [string, string], + FeatureFlagAllowlistAddedEventObject +> -export type FeatureFlagAllowlistAddedEventFilter = - TypedEventFilter; +export type FeatureFlagAllowlistAddedEventFilter = TypedEventFilter export interface FeatureFlagAllowlistRemovedEventObject { - feature: string; - account: string; + feature: string + account: string } export type FeatureFlagAllowlistRemovedEvent = TypedEvent< - [string, string], - FeatureFlagAllowlistRemovedEventObject ->; + [string, string], + FeatureFlagAllowlistRemovedEventObject +> export type FeatureFlagAllowlistRemovedEventFilter = - TypedEventFilter; + TypedEventFilter export interface FeatureFlagDeniersResetEventObject { - feature: string; - deniers: string[]; + feature: string + deniers: string[] } export type FeatureFlagDeniersResetEvent = TypedEvent< - [string, string[]], - FeatureFlagDeniersResetEventObject ->; + [string, string[]], + FeatureFlagDeniersResetEventObject +> -export type FeatureFlagDeniersResetEventFilter = - TypedEventFilter; +export type FeatureFlagDeniersResetEventFilter = TypedEventFilter export interface FeatureFlagDenyAllSetEventObject { - feature: string; - denyAll: boolean; + feature: string + denyAll: boolean } export type FeatureFlagDenyAllSetEvent = TypedEvent< - [string, boolean], - FeatureFlagDenyAllSetEventObject ->; + [string, boolean], + FeatureFlagDenyAllSetEventObject +> -export type FeatureFlagDenyAllSetEventFilter = - TypedEventFilter; +export type FeatureFlagDenyAllSetEventFilter = TypedEventFilter export interface FundingParametersSetEventObject { - marketId: BigNumber; - skewScale: BigNumber; - maxFundingVelocity: BigNumber; + marketId: BigNumber + skewScale: BigNumber + maxFundingVelocity: BigNumber } export type FundingParametersSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - FundingParametersSetEventObject ->; + [BigNumber, BigNumber, BigNumber], + FundingParametersSetEventObject +> -export type FundingParametersSetEventFilter = - TypedEventFilter; +export type FundingParametersSetEventFilter = TypedEventFilter export interface LiquidationParametersSetEventObject { - marketId: BigNumber; - initialMarginFraction: BigNumber; - maintenanceMarginFraction: BigNumber; - liquidationRewardRatioD18: BigNumber; - maxLiquidationLimitAccumulationMultiplier: BigNumber; - maxSecondsInLiquidationWindow: BigNumber; + marketId: BigNumber + initialMarginFraction: BigNumber + maintenanceMarginFraction: BigNumber + liquidationRewardRatioD18: BigNumber + maxLiquidationLimitAccumulationMultiplier: BigNumber + maxSecondsInLiquidationWindow: BigNumber } export type LiquidationParametersSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - LiquidationParametersSetEventObject ->; + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + LiquidationParametersSetEventObject +> -export type LiquidationParametersSetEventFilter = - TypedEventFilter; +export type LiquidationParametersSetEventFilter = TypedEventFilter export interface LockedOiPercentSetEventObject { - marketId: BigNumber; - lockedOiPercent: BigNumber; + marketId: BigNumber + lockedOiPercent: BigNumber } export type LockedOiPercentSetEvent = TypedEvent< - [BigNumber, BigNumber], - LockedOiPercentSetEventObject ->; + [BigNumber, BigNumber], + LockedOiPercentSetEventObject +> -export type LockedOiPercentSetEventFilter = - TypedEventFilter; +export type LockedOiPercentSetEventFilter = TypedEventFilter export interface MaxMarketValueSetEventObject { - marketId: BigNumber; - maxMarketValue: BigNumber; + marketId: BigNumber + maxMarketValue: BigNumber } export type MaxMarketValueSetEvent = TypedEvent< - [BigNumber, BigNumber], - MaxMarketValueSetEventObject ->; + [BigNumber, BigNumber], + MaxMarketValueSetEventObject +> -export type MaxMarketValueSetEventFilter = - TypedEventFilter; +export type MaxMarketValueSetEventFilter = TypedEventFilter export interface OrderFeesSetEventObject { - marketId: BigNumber; - makerFeeRatio: BigNumber; - takerFeeRatio: BigNumber; + marketId: BigNumber + makerFeeRatio: BigNumber + takerFeeRatio: BigNumber } export type OrderFeesSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - OrderFeesSetEventObject ->; + [BigNumber, BigNumber, BigNumber], + OrderFeesSetEventObject +> -export type OrderFeesSetEventFilter = TypedEventFilter; +export type OrderFeesSetEventFilter = TypedEventFilter export interface SettlementStrategyAddedEventObject { - marketId: BigNumber; - strategy: SettlementStrategy.DataStructOutput; - strategyId: BigNumber; + marketId: BigNumber + strategy: SettlementStrategy.DataStructOutput + strategyId: BigNumber } export type SettlementStrategyAddedEvent = TypedEvent< - [BigNumber, SettlementStrategy.DataStructOutput, BigNumber], - SettlementStrategyAddedEventObject ->; + [BigNumber, SettlementStrategy.DataStructOutput, BigNumber], + SettlementStrategyAddedEventObject +> -export type SettlementStrategyAddedEventFilter = - TypedEventFilter; +export type SettlementStrategyAddedEventFilter = TypedEventFilter export interface SettlementStrategyEnabledEventObject { - marketId: BigNumber; - strategyId: BigNumber; - enabled: boolean; + marketId: BigNumber + strategyId: BigNumber + enabled: boolean } export type SettlementStrategyEnabledEvent = TypedEvent< - [BigNumber, BigNumber, boolean], - SettlementStrategyEnabledEventObject ->; + [BigNumber, BigNumber, boolean], + SettlementStrategyEnabledEventObject +> -export type SettlementStrategyEnabledEventFilter = - TypedEventFilter; +export type SettlementStrategyEnabledEventFilter = TypedEventFilter export interface LiquidationRewardGuardsSetEventObject { - minLiquidationRewardUsd: BigNumber; - maxLiquidationRewardUsd: BigNumber; + minLiquidationRewardUsd: BigNumber + maxLiquidationRewardUsd: BigNumber } export type LiquidationRewardGuardsSetEvent = TypedEvent< - [BigNumber, BigNumber], - LiquidationRewardGuardsSetEventObject ->; + [BigNumber, BigNumber], + LiquidationRewardGuardsSetEventObject +> export type LiquidationRewardGuardsSetEventFilter = - TypedEventFilter; + TypedEventFilter export interface MaxCollateralAmountSetEventObject { - synthMarketId: BigNumber; - collateralAmount: BigNumber; + synthMarketId: BigNumber + collateralAmount: BigNumber } export type MaxCollateralAmountSetEvent = TypedEvent< - [BigNumber, BigNumber], - MaxCollateralAmountSetEventObject ->; + [BigNumber, BigNumber], + MaxCollateralAmountSetEventObject +> -export type MaxCollateralAmountSetEventFilter = - TypedEventFilter; +export type MaxCollateralAmountSetEventFilter = TypedEventFilter export interface SynthDeductionPrioritySetEventObject { - newSynthDeductionPriority: BigNumber[]; + newSynthDeductionPriority: BigNumber[] } export type SynthDeductionPrioritySetEvent = TypedEvent< - [BigNumber[]], - SynthDeductionPrioritySetEventObject ->; + [BigNumber[]], + SynthDeductionPrioritySetEventObject +> -export type SynthDeductionPrioritySetEventFilter = - TypedEventFilter; +export type SynthDeductionPrioritySetEventFilter = TypedEventFilter export interface PerpsV3MarketProxy extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: PerpsV3MarketProxyInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - "createAccount()"( - overrides?: Overrides & { from?: string } - ): Promise; - - "createAccount(uint128)"( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [IAccountModule.AccountPermissionsStructOutput[]] & { - accountPerms: IAccountModule.AccountPermissionsStructOutput[]; - } - >; - - getAccountTokenAddress(overrides?: CallOverrides): Promise<[string]>; - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }>; - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - getImplementation(overrides?: CallOverrides): Promise<[string]>; - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - renounceNomination( - overrides?: Overrides & { from?: string } - ): Promise; - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - name( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise; - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - symbol( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[AsyncOrder.DataStructOutput]>; - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]>; - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [IPerpsMarketModule.MarketSummaryStructOutput] & { - summary: IPerpsMarketModule.MarketSummaryStructOutput; - } - >; - - indexPrice( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - size( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - skew( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - PRECISION(overrides?: CallOverrides): Promise<[BigNumber]>; - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[AsyncOrder.DataStructOutput]>; - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[void]>; - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getDeniers( - feature: BytesLike, - overrides?: CallOverrides - ): Promise<[string[]]>; - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise<[string[]]>; - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[boolean]>; - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateFlagged( - overrides?: Overrides & { from?: string } - ): Promise; - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber; - maxFundingVelocity: BigNumber; - } - >; - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber; - maintenanceMarginFraction: BigNumber; - liquidationRewardRatioD18: BigNumber; - maxLiquidationLimitAccumulationMultiplier: BigNumber; - maxSecondsInLiquidationWindow: BigNumber; - } - >; - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { maxMarketValue: BigNumber }>; - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } - >; - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [SettlementStrategy.DataStructOutput] & { - settlementStrategy: SettlementStrategy.DataStructOutput; - } - >; - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - getLiquidationRewardGuards( - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber; - maxLiquidationRewardUsd: BigNumber; - } - >; - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - getSynthDeductionPriority( - overrides?: CallOverrides - ): Promise<[BigNumber[]]>; - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - "createAccount()"( - overrides?: Overrides & { from?: string } - ): Promise; - - "createAccount(uint128)"( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountTokenAddress(overrides?: CallOverrides): Promise; - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }>; - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - getImplementation(overrides?: CallOverrides): Promise; - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - renounceNomination( - overrides?: Overrides & { from?: string } - ): Promise; - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise; - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise; - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise; - - symbol( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]>; - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - indexPrice( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - PRECISION(overrides?: CallOverrides): Promise; - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise; - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateFlagged( - overrides?: Overrides & { from?: string } - ): Promise; - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber; - maxFundingVelocity: BigNumber; - } - >; - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber; - maintenanceMarginFraction: BigNumber; - liquidationRewardRatioD18: BigNumber; - maxLiquidationLimitAccumulationMultiplier: BigNumber; - maxSecondsInLiquidationWindow: BigNumber; - } - >; - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } - >; - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - getLiquidationRewardGuards( - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber; - maxLiquidationRewardUsd: BigNumber; - } - >; - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSynthDeductionPriority(overrides?: CallOverrides): Promise; - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - "createAccount()"(overrides?: CallOverrides): Promise; - - "createAccount(uint128)"( - requestedAccountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountTokenAddress(overrides?: CallOverrides): Promise; - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: CallOverrides - ): Promise; - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }>; - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: CallOverrides - ): Promise; - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: CallOverrides - ): Promise; - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: CallOverrides - ): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - getImplementation(overrides?: CallOverrides): Promise; - - nominateNewOwner( - newNominatedOwner: string, - overrides?: CallOverrides - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - renounceNomination(overrides?: CallOverrides): Promise; - - simulateUpgradeTo( - newImplementation: string, - overrides?: CallOverrides - ): Promise; - - upgradeTo( - newImplementation: string, - overrides?: CallOverrides - ): Promise; - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: CallOverrides - ): Promise; - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - name( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: CallOverrides - ): Promise; - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSpotMarket(spotMarket: string, overrides?: CallOverrides): Promise; - - setSynthetix(synthetix: string, overrides?: CallOverrides): Promise; - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise; - - symbol( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: CallOverrides - ): Promise; - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]>; - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: CallOverrides - ): Promise; - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - indexPrice( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - PRECISION(overrides?: CallOverrides): Promise; - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: CallOverrides - ): Promise< - [AsyncOrder.DataStructOutput, BigNumber] & { - retOrder: AsyncOrder.DataStructOutput; - fees: BigNumber; - } - >; - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: CallOverrides - ): Promise; - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - getDeniers( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: CallOverrides - ): Promise; - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: CallOverrides - ): Promise; - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: CallOverrides - ): Promise; - - liquidate( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - liquidateFlagged(overrides?: CallOverrides): Promise; - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: CallOverrides - ): Promise; - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber; - maxFundingVelocity: BigNumber; - } - >; - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber; - maintenanceMarginFraction: BigNumber; - liquidationRewardRatioD18: BigNumber; - maxLiquidationLimitAccumulationMultiplier: BigNumber; - maxSecondsInLiquidationWindow: BigNumber; - } - >; - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } - >; - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: CallOverrides - ): Promise; - - getLiquidationRewardGuards( - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber; - maxLiquidationRewardUsd: BigNumber; - } - >; - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSynthDeductionPriority(overrides?: CallOverrides): Promise; - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountCreated(uint128,address)"( - accountId?: BigNumberish | null, - owner?: string | null - ): AccountCreatedEventFilter; - AccountCreated( - accountId?: BigNumberish | null, - owner?: string | null - ): AccountCreatedEventFilter; - - "PermissionGranted(uint128,bytes32,address,address)"( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionGrantedEventFilter; - PermissionGranted( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionGrantedEventFilter; - - "PermissionRevoked(uint128,bytes32,address,address)"( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionRevokedEventFilter; - PermissionRevoked( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionRevokedEventFilter; - - "AssociatedSystemSet(bytes32,bytes32,address,address)"( - kind?: BytesLike | null, - id?: BytesLike | null, - proxy?: null, - impl?: null - ): AssociatedSystemSetEventFilter; - AssociatedSystemSet( - kind?: BytesLike | null, - id?: BytesLike | null, - proxy?: null, - impl?: null - ): AssociatedSystemSetEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - - "Upgraded(address,address)"( - self?: string | null, - implementation?: null - ): UpgradedEventFilter; - Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter; - - "MarketOwnerChanged(uint128,address,address)"( - perpsMarketId?: BigNumberish | null, - oldOwner?: null, - newOwner?: null - ): MarketOwnerChangedEventFilter; - MarketOwnerChanged( - perpsMarketId?: BigNumberish | null, - oldOwner?: null, - newOwner?: null - ): MarketOwnerChangedEventFilter; - - "MarketOwnerNominated(uint128,address)"( - perpsMarketId?: BigNumberish | null, - newNominatedOwner?: null - ): MarketOwnerNominatedEventFilter; - MarketOwnerNominated( - perpsMarketId?: BigNumberish | null, - newNominatedOwner?: null - ): MarketOwnerNominatedEventFilter; - - "MarketPriceDataUpdated(uint128,bytes32)"( - perpsMarketId?: BigNumberish | null, - feedId?: null - ): MarketPriceDataUpdatedEventFilter; - MarketPriceDataUpdated( - perpsMarketId?: BigNumberish | null, - feedId?: null - ): MarketPriceDataUpdatedEventFilter; - - "MarketRegistered(uint128,address,string,string)"( - perpsMarketId?: BigNumberish | null, - marketOwner?: string | null, - marketName?: null, - marketSymbol?: null - ): MarketRegisteredEventFilter; - MarketRegistered( - perpsMarketId?: BigNumberish | null, - marketOwner?: string | null, - marketName?: null, - marketSymbol?: null - ): MarketRegisteredEventFilter; - - "CollateralModified(uint128,uint128,int256,address)"( - accountId?: BigNumberish | null, - synthMarketId?: BigNumberish | null, - amountDelta?: BigNumberish | null, - sender?: null - ): CollateralModifiedEventFilter; - CollateralModified( - accountId?: BigNumberish | null, - synthMarketId?: BigNumberish | null, - amountDelta?: BigNumberish | null, - sender?: null - ): CollateralModifiedEventFilter; - - "OrderCanceled(uint128,uint128,uint256,uint256)"( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - settlementTime?: null, - acceptablePrice?: null - ): OrderCanceledEventFilter; - OrderCanceled( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - settlementTime?: null, - acceptablePrice?: null - ): OrderCanceledEventFilter; - - "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)"( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - orderType?: BigNumberish | null, - sizeDelta?: null, - acceptablePrice?: null, - settlementTime?: null, - expirationTime?: null, - trackingCode?: null, - sender?: null - ): OrderCommittedEventFilter; - OrderCommitted( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - orderType?: BigNumberish | null, - sizeDelta?: null, - acceptablePrice?: null, - settlementTime?: null, - expirationTime?: null, - trackingCode?: null, - sender?: null - ): OrderCommittedEventFilter; - - "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)"( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - fillPrice?: null, - accountPnlRealized?: null, - newSize?: null, - collectedFees?: null, - settelementReward?: null, - trackingCode?: BytesLike | null, - settler?: null - ): OrderSettledEventFilter; - OrderSettled( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - fillPrice?: null, - accountPnlRealized?: null, - newSize?: null, - collectedFees?: null, - settelementReward?: null, - trackingCode?: BytesLike | null, - settler?: null - ): OrderSettledEventFilter; - - "FeatureFlagAllowAllSet(bytes32,bool)"( - feature?: BytesLike | null, - allowAll?: null - ): FeatureFlagAllowAllSetEventFilter; - FeatureFlagAllowAllSet( - feature?: BytesLike | null, - allowAll?: null - ): FeatureFlagAllowAllSetEventFilter; - - "FeatureFlagAllowlistAdded(bytes32,address)"( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistAddedEventFilter; - FeatureFlagAllowlistAdded( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistAddedEventFilter; - - "FeatureFlagAllowlistRemoved(bytes32,address)"( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistRemovedEventFilter; - FeatureFlagAllowlistRemoved( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistRemovedEventFilter; - - "FeatureFlagDeniersReset(bytes32,address[])"( - feature?: BytesLike | null, - deniers?: null - ): FeatureFlagDeniersResetEventFilter; - FeatureFlagDeniersReset( - feature?: BytesLike | null, - deniers?: null - ): FeatureFlagDeniersResetEventFilter; - - "FeatureFlagDenyAllSet(bytes32,bool)"( - feature?: BytesLike | null, - denyAll?: null - ): FeatureFlagDenyAllSetEventFilter; - FeatureFlagDenyAllSet( - feature?: BytesLike | null, - denyAll?: null - ): FeatureFlagDenyAllSetEventFilter; - - "FundingParametersSet(uint128,uint256,uint256)"( - marketId?: null, - skewScale?: null, - maxFundingVelocity?: null - ): FundingParametersSetEventFilter; - FundingParametersSet( - marketId?: null, - skewScale?: null, - maxFundingVelocity?: null - ): FundingParametersSetEventFilter; - - "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)"( - marketId?: null, - initialMarginFraction?: null, - maintenanceMarginFraction?: null, - liquidationRewardRatioD18?: null, - maxLiquidationLimitAccumulationMultiplier?: null, - maxSecondsInLiquidationWindow?: null - ): LiquidationParametersSetEventFilter; - LiquidationParametersSet( - marketId?: null, - initialMarginFraction?: null, - maintenanceMarginFraction?: null, - liquidationRewardRatioD18?: null, - maxLiquidationLimitAccumulationMultiplier?: null, - maxSecondsInLiquidationWindow?: null - ): LiquidationParametersSetEventFilter; - - "LockedOiPercentSet(uint128,uint256)"( - marketId?: null, - lockedOiPercent?: null - ): LockedOiPercentSetEventFilter; - LockedOiPercentSet( - marketId?: null, - lockedOiPercent?: null - ): LockedOiPercentSetEventFilter; - - "MaxMarketValueSet(uint128,uint256)"( - marketId?: null, - maxMarketValue?: null - ): MaxMarketValueSetEventFilter; - MaxMarketValueSet( - marketId?: null, - maxMarketValue?: null - ): MaxMarketValueSetEventFilter; - - "OrderFeesSet(uint128,uint256,uint256)"( - marketId?: null, - makerFeeRatio?: null, - takerFeeRatio?: null - ): OrderFeesSetEventFilter; - OrderFeesSet( - marketId?: null, - makerFeeRatio?: null, - takerFeeRatio?: null - ): OrderFeesSetEventFilter; - - "SettlementStrategyAdded(uint128,tuple,uint256)"( - marketId?: BigNumberish | null, - strategy?: null, - strategyId?: BigNumberish | null - ): SettlementStrategyAddedEventFilter; - SettlementStrategyAdded( - marketId?: BigNumberish | null, - strategy?: null, - strategyId?: BigNumberish | null - ): SettlementStrategyAddedEventFilter; - - "SettlementStrategyEnabled(uint128,uint256,bool)"( - marketId?: null, - strategyId?: null, - enabled?: null - ): SettlementStrategyEnabledEventFilter; - SettlementStrategyEnabled( - marketId?: null, - strategyId?: null, - enabled?: null - ): SettlementStrategyEnabledEventFilter; - - "LiquidationRewardGuardsSet(uint256,uint256)"( - minLiquidationRewardUsd?: BigNumberish | null, - maxLiquidationRewardUsd?: BigNumberish | null - ): LiquidationRewardGuardsSetEventFilter; - LiquidationRewardGuardsSet( - minLiquidationRewardUsd?: BigNumberish | null, - maxLiquidationRewardUsd?: BigNumberish | null - ): LiquidationRewardGuardsSetEventFilter; - - "MaxCollateralAmountSet(uint128,uint256)"( - synthMarketId?: BigNumberish | null, - collateralAmount?: null - ): MaxCollateralAmountSetEventFilter; - MaxCollateralAmountSet( - synthMarketId?: BigNumberish | null, - collateralAmount?: null - ): MaxCollateralAmountSetEventFilter; - - "SynthDeductionPrioritySet(uint128[])"( - newSynthDeductionPriority?: null - ): SynthDeductionPrioritySetEventFilter; - SynthDeductionPrioritySet( - newSynthDeductionPriority?: null - ): SynthDeductionPrioritySetEventFilter; - }; - - estimateGas: { - "createAccount()"( - overrides?: Overrides & { from?: string } - ): Promise; - - "createAccount(uint128)"( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountTokenAddress(overrides?: CallOverrides): Promise; - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - getImplementation(overrides?: CallOverrides): Promise; - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - renounceNomination( - overrides?: Overrides & { from?: string } - ): Promise; - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - name( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise; - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise; - - symbol( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - indexPrice( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; - - PRECISION(overrides?: CallOverrides): Promise; - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getDeniers( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateFlagged( - overrides?: Overrides & { from?: string } - ): Promise; - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise; - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSynthDeductionPriority(overrides?: CallOverrides): Promise; - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - "createAccount()"( - overrides?: Overrides & { from?: string } - ): Promise; - - "createAccount(uint128)"( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountTokenAddress( - overrides?: CallOverrides - ): Promise; - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise; - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise; - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - getImplementation(overrides?: CallOverrides): Promise; - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - renounceNomination( - overrides?: Overrides & { from?: string } - ): Promise; - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise; - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - name( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise; - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise; - - symbol( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - indexPrice( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - size( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - skew( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - PRECISION(overrides?: CallOverrides): Promise; - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - getDeniers( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise; - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise; - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateFlagged( - overrides?: Overrides & { from?: string } - ): Promise; - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise; - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - getLiquidationRewardGuards( - overrides?: CallOverrides - ): Promise; - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getSynthDeductionPriority( - overrides?: CallOverrides - ): Promise; - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: PerpsV3MarketProxyInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + 'createAccount()'(overrides?: Overrides & { from?: string }): Promise + + 'createAccount(uint128)'( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IAccountModule.AccountPermissionsStructOutput[]] & { + accountPerms: IAccountModule.AccountPermissionsStructOutput[] + } + > + + getAccountTokenAddress(overrides?: CallOverrides): Promise<[string]> + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]> + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]> + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }> + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + getImplementation(overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + renounceNomination(overrides?: Overrides & { from?: string }): Promise + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise + + supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]> + + getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]> + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IPerpsMarketModule.MarketSummaryStructOutput] & { + summary: IPerpsMarketModule.MarketSummaryStructOutput + } + > + + indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + PRECISION(overrides?: CallOverrides): Promise<[BigNumber]> + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]> + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[void]> + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise<[string[]]> + + getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise<[string[]]> + + getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[boolean]> + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateFlagged(overrides?: Overrides & { from?: string }): Promise + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber + maxFundingVelocity: BigNumber + } + > + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber + maintenanceMarginFraction: BigNumber + liquidationRewardRatioD18: BigNumber + maxLiquidationLimitAccumulationMultiplier: BigNumber + maxSecondsInLiquidationWindow: BigNumber + } + > + + getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxMarketValue: BigNumber }> + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [SettlementStrategy.DataStructOutput] & { + settlementStrategy: SettlementStrategy.DataStructOutput + } + > + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber + maxLiquidationRewardUsd: BigNumber + } + > + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + getSynthDeductionPriority(overrides?: CallOverrides): Promise<[BigNumber[]]> + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + } + + 'createAccount()'(overrides?: Overrides & { from?: string }): Promise + + 'createAccount(uint128)'( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountLastInteraction(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountTokenAddress(overrides?: CallOverrides): Promise + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }> + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + getImplementation(overrides?: CallOverrides): Promise + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + renounceNomination(overrides?: Overrides & { from?: string }): Promise + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise + + supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + + symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]> + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise + + totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise + + maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise + + PRECISION(overrides?: CallOverrides): Promise + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settle(marketId: BigNumberish, accountId: BigNumberish, overrides?: CallOverrides): Promise + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise + + isFeatureAllowed(feature: BytesLike, account: string, overrides?: CallOverrides): Promise + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateFlagged(overrides?: Overrides & { from?: string }): Promise + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber + maxFundingVelocity: BigNumber + } + > + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber + maintenanceMarginFraction: BigNumber + liquidationRewardRatioD18: BigNumber + maxLiquidationLimitAccumulationMultiplier: BigNumber + maxSecondsInLiquidationWindow: BigNumber + } + > + + getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber + maxLiquidationRewardUsd: BigNumber + } + > + + getMaxCollateralAmount(synthMarketId: BigNumberish, overrides?: CallOverrides): Promise + + getSynthDeductionPriority(overrides?: CallOverrides): Promise + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + + callStatic: { + 'createAccount()'(overrides?: CallOverrides): Promise + + 'createAccount(uint128)'( + requestedAccountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountTokenAddress(overrides?: CallOverrides): Promise + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: CallOverrides + ): Promise + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }> + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: CallOverrides + ): Promise + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: CallOverrides + ): Promise + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: CallOverrides + ): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + getImplementation(overrides?: CallOverrides): Promise + + nominateNewOwner(newNominatedOwner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + renounceNomination(overrides?: CallOverrides): Promise + + simulateUpgradeTo(newImplementation: string, overrides?: CallOverrides): Promise + + upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise + + acceptMarketOwnership(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: CallOverrides + ): Promise + + getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise + + reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + setSpotMarket(spotMarket: string, overrides?: CallOverrides): Promise + + setSynthetix(synthetix: string, overrides?: CallOverrides): Promise + + supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + + symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: CallOverrides + ): Promise + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]> + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: CallOverrides + ): Promise + + totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise + + totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise + + maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise + + PRECISION(overrides?: CallOverrides): Promise + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: CallOverrides + ): Promise< + [AsyncOrder.DataStructOutput, BigNumber] & { + retOrder: AsyncOrder.DataStructOutput + fees: BigNumber + } + > + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: CallOverrides + ): Promise + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + setDeniers(feature: BytesLike, deniers: string[], overrides?: CallOverrides): Promise + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: CallOverrides + ): Promise + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: CallOverrides + ): Promise + + liquidate(accountId: BigNumberish, overrides?: CallOverrides): Promise + + liquidateFlagged(overrides?: CallOverrides): Promise + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: CallOverrides + ): Promise + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber + maxFundingVelocity: BigNumber + } + > + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber + maintenanceMarginFraction: BigNumber + liquidationRewardRatioD18: BigNumber + maxLiquidationLimitAccumulationMultiplier: BigNumber + maxSecondsInLiquidationWindow: BigNumber + } + > + + getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: CallOverrides + ): Promise + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: CallOverrides + ): Promise + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: CallOverrides + ): Promise + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: CallOverrides + ): Promise + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: CallOverrides + ): Promise + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: CallOverrides + ): Promise + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber + maxLiquidationRewardUsd: BigNumber + } + > + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getSynthDeductionPriority(overrides?: CallOverrides): Promise + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: CallOverrides + ): Promise + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: CallOverrides + ): Promise + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: CallOverrides + ): Promise + } + + filters: { + 'AccountCreated(uint128,address)'( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter + AccountCreated( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter + + 'PermissionGranted(uint128,bytes32,address,address)'( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter + PermissionGranted( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter + + 'PermissionRevoked(uint128,bytes32,address,address)'( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter + PermissionRevoked( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter + + 'AssociatedSystemSet(bytes32,bytes32,address,address)'( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter + AssociatedSystemSet( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + + 'Upgraded(address,address)'(self?: string | null, implementation?: null): UpgradedEventFilter + Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter + + 'MarketOwnerChanged(uint128,address,address)'( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter + MarketOwnerChanged( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter + + 'MarketOwnerNominated(uint128,address)'( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter + MarketOwnerNominated( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter + + 'MarketPriceDataUpdated(uint128,bytes32)'( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter + MarketPriceDataUpdated( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter + + 'MarketRegistered(uint128,address,string,string)'( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter + MarketRegistered( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter + + 'CollateralModified(uint128,uint128,int256,address)'( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter + CollateralModified( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter + + 'OrderCanceled(uint128,uint128,uint256,uint256)'( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter + OrderCanceled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter + + 'OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)'( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter + OrderCommitted( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter + + 'OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)'( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter + OrderSettled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter + + 'FeatureFlagAllowAllSet(bytes32,bool)'( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter + FeatureFlagAllowAllSet( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter + + 'FeatureFlagAllowlistAdded(bytes32,address)'( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter + FeatureFlagAllowlistAdded( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter + + 'FeatureFlagAllowlistRemoved(bytes32,address)'( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter + FeatureFlagAllowlistRemoved( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter + + 'FeatureFlagDeniersReset(bytes32,address[])'( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter + FeatureFlagDeniersReset( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter + + 'FeatureFlagDenyAllSet(bytes32,bool)'( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter + FeatureFlagDenyAllSet( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter + + 'FundingParametersSet(uint128,uint256,uint256)'( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter + FundingParametersSet( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter + + 'LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)'( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter + LiquidationParametersSet( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter + + 'LockedOiPercentSet(uint128,uint256)'( + marketId?: null, + lockedOiPercent?: null + ): LockedOiPercentSetEventFilter + LockedOiPercentSet(marketId?: null, lockedOiPercent?: null): LockedOiPercentSetEventFilter + + 'MaxMarketValueSet(uint128,uint256)'( + marketId?: null, + maxMarketValue?: null + ): MaxMarketValueSetEventFilter + MaxMarketValueSet(marketId?: null, maxMarketValue?: null): MaxMarketValueSetEventFilter + + 'OrderFeesSet(uint128,uint256,uint256)'( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter + OrderFeesSet( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter + + 'SettlementStrategyAdded(uint128,tuple,uint256)'( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter + SettlementStrategyAdded( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter + + 'SettlementStrategyEnabled(uint128,uint256,bool)'( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter + SettlementStrategyEnabled( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter + + 'LiquidationRewardGuardsSet(uint256,uint256)'( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter + LiquidationRewardGuardsSet( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter + + 'MaxCollateralAmountSet(uint128,uint256)'( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter + MaxCollateralAmountSet( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter + + 'SynthDeductionPrioritySet(uint128[])'( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter + SynthDeductionPrioritySet( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter + } + + estimateGas: { + 'createAccount()'(overrides?: Overrides & { from?: string }): Promise + + 'createAccount(uint128)'( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getAccountPermissions(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getAccountTokenAddress(overrides?: CallOverrides): Promise + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + getAssociatedSystem(id: BytesLike, overrides?: CallOverrides): Promise + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + getImplementation(overrides?: CallOverrides): Promise + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + renounceNomination(overrides?: Overrides & { from?: string }): Promise + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + setSpotMarket(spotMarket: string, overrides?: Overrides & { from?: string }): Promise + + setSynthetix(synthetix: string, overrides?: Overrides & { from?: string }): Promise + + supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + + symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise + + totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise + + currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise + + getMarketSummary(marketId: BigNumberish, overrides?: CallOverrides): Promise + + indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise + + maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise + + PRECISION(overrides?: CallOverrides): Promise + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateFlagged(overrides?: Overrides & { from?: string }): Promise + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getFundingParameters(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getLiquidationParameters(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getOrderFees(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getSynthDeductionPriority(overrides?: CallOverrides): Promise + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + } + + populateTransaction: { + 'createAccount()'(overrides?: Overrides & { from?: string }): Promise + + 'createAccount(uint128)'( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountTokenAddress(overrides?: CallOverrides): Promise + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise + + getAssociatedSystem(id: BytesLike, overrides?: CallOverrides): Promise + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + getImplementation(overrides?: CallOverrides): Promise + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + renounceNomination(overrides?: Overrides & { from?: string }): Promise + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise + + symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise + + PRECISION(overrides?: CallOverrides): Promise + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateFlagged(overrides?: Overrides & { from?: string }): Promise + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getOrderFees(marketId: BigNumberish, overrides?: CallOverrides): Promise + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise + + getSynthDeductionPriority(overrides?: CallOverrides): Promise + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/Pyth.ts b/packages/sdk/src/contracts/types/Pyth.ts index 256953e7f9..c6fa6e835f 100644 --- a/packages/sdk/src/contracts/types/Pyth.ts +++ b/packages/sdk/src/contracts/types/Pyth.ts @@ -2,570 +2,442 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace PythStructs { - export type PriceStruct = { - price: BigNumberish; - conf: BigNumberish; - expo: BigNumberish; - publishTime: BigNumberish; - }; - - export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { - price: BigNumber; - conf: BigNumber; - expo: number; - publishTime: BigNumber; - }; - - export type PriceFeedStruct = { - id: BytesLike; - price: PythStructs.PriceStruct; - emaPrice: PythStructs.PriceStruct; - }; - - export type PriceFeedStructOutput = [ - string, - PythStructs.PriceStructOutput, - PythStructs.PriceStructOutput - ] & { - id: string; - price: PythStructs.PriceStructOutput; - emaPrice: PythStructs.PriceStructOutput; - }; + export type PriceStruct = { + price: BigNumberish + conf: BigNumberish + expo: BigNumberish + publishTime: BigNumberish + } + + export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { + price: BigNumber + conf: BigNumber + expo: number + publishTime: BigNumber + } + + export type PriceFeedStruct = { + id: BytesLike + price: PythStructs.PriceStruct + emaPrice: PythStructs.PriceStruct + } + + export type PriceFeedStructOutput = [ + string, + PythStructs.PriceStructOutput, + PythStructs.PriceStructOutput + ] & { + id: string + price: PythStructs.PriceStructOutput + emaPrice: PythStructs.PriceStructOutput + } } export interface PythInterface extends utils.Interface { - functions: { - "getEmaPrice(bytes32)": FunctionFragment; - "getEmaPriceNoOlderThan(bytes32,uint256)": FunctionFragment; - "getEmaPriceUnsafe(bytes32)": FunctionFragment; - "getPrice(bytes32)": FunctionFragment; - "getPriceNoOlderThan(bytes32,uint256)": FunctionFragment; - "getPriceUnsafe(bytes32)": FunctionFragment; - "getUpdateFee(bytes[])": FunctionFragment; - "getValidTimePeriod()": FunctionFragment; - "parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)": FunctionFragment; - "updatePriceFeeds(bytes[])": FunctionFragment; - "updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "getEmaPrice" - | "getEmaPriceNoOlderThan" - | "getEmaPriceUnsafe" - | "getPrice" - | "getPriceNoOlderThan" - | "getPriceUnsafe" - | "getUpdateFee" - | "getValidTimePeriod" - | "parsePriceFeedUpdates" - | "updatePriceFeeds" - | "updatePriceFeedsIfNecessary" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "getEmaPrice", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getEmaPriceNoOlderThan", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getEmaPriceUnsafe", - values: [BytesLike] - ): string; - encodeFunctionData(functionFragment: "getPrice", values: [BytesLike]): string; - encodeFunctionData( - functionFragment: "getPriceNoOlderThan", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getPriceUnsafe", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getUpdateFee", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "getValidTimePeriod", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "parsePriceFeedUpdates", - values: [BytesLike[], BytesLike[], BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "updatePriceFeeds", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "updatePriceFeedsIfNecessary", - values: [BytesLike[], BytesLike[], BigNumberish[]] - ): string; - - decodeFunctionResult( - functionFragment: "getEmaPrice", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getEmaPriceNoOlderThan", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getEmaPriceUnsafe", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "getPrice", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getPriceNoOlderThan", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getPriceUnsafe", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getUpdateFee", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getValidTimePeriod", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "parsePriceFeedUpdates", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "updatePriceFeeds", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "updatePriceFeedsIfNecessary", - data: BytesLike - ): Result; - - events: { - "BatchPriceFeedUpdate(uint16,uint64)": EventFragment; - "PriceFeedUpdate(bytes32,uint64,int64,uint64)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "BatchPriceFeedUpdate"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PriceFeedUpdate"): EventFragment; + functions: { + 'getEmaPrice(bytes32)': FunctionFragment + 'getEmaPriceNoOlderThan(bytes32,uint256)': FunctionFragment + 'getEmaPriceUnsafe(bytes32)': FunctionFragment + 'getPrice(bytes32)': FunctionFragment + 'getPriceNoOlderThan(bytes32,uint256)': FunctionFragment + 'getPriceUnsafe(bytes32)': FunctionFragment + 'getUpdateFee(bytes[])': FunctionFragment + 'getValidTimePeriod()': FunctionFragment + 'parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)': FunctionFragment + 'updatePriceFeeds(bytes[])': FunctionFragment + 'updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'getEmaPrice' + | 'getEmaPriceNoOlderThan' + | 'getEmaPriceUnsafe' + | 'getPrice' + | 'getPriceNoOlderThan' + | 'getPriceUnsafe' + | 'getUpdateFee' + | 'getValidTimePeriod' + | 'parsePriceFeedUpdates' + | 'updatePriceFeeds' + | 'updatePriceFeedsIfNecessary' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'getEmaPrice', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'getEmaPriceNoOlderThan', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getEmaPriceUnsafe', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getPrice', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'getPriceNoOlderThan', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getPriceUnsafe', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getUpdateFee', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'getValidTimePeriod', values?: undefined): string + encodeFunctionData( + functionFragment: 'parsePriceFeedUpdates', + values: [BytesLike[], BytesLike[], BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'updatePriceFeeds', values: [BytesLike[]]): string + encodeFunctionData( + functionFragment: 'updatePriceFeedsIfNecessary', + values: [BytesLike[], BytesLike[], BigNumberish[]] + ): string + + decodeFunctionResult(functionFragment: 'getEmaPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getEmaPriceNoOlderThan', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getEmaPriceUnsafe', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getPrice', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getPriceNoOlderThan', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getPriceUnsafe', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getUpdateFee', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getValidTimePeriod', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'parsePriceFeedUpdates', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'updatePriceFeeds', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'updatePriceFeedsIfNecessary', data: BytesLike): Result + + events: { + 'BatchPriceFeedUpdate(uint16,uint64)': EventFragment + 'PriceFeedUpdate(bytes32,uint64,int64,uint64)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'BatchPriceFeedUpdate'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PriceFeedUpdate'): EventFragment } export interface BatchPriceFeedUpdateEventObject { - chainId: number; - sequenceNumber: BigNumber; + chainId: number + sequenceNumber: BigNumber } export type BatchPriceFeedUpdateEvent = TypedEvent< - [number, BigNumber], - BatchPriceFeedUpdateEventObject ->; + [number, BigNumber], + BatchPriceFeedUpdateEventObject +> -export type BatchPriceFeedUpdateEventFilter = - TypedEventFilter; +export type BatchPriceFeedUpdateEventFilter = TypedEventFilter export interface PriceFeedUpdateEventObject { - id: string; - publishTime: BigNumber; - price: BigNumber; - conf: BigNumber; + id: string + publishTime: BigNumber + price: BigNumber + conf: BigNumber } export type PriceFeedUpdateEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - PriceFeedUpdateEventObject ->; + [string, BigNumber, BigNumber, BigNumber], + PriceFeedUpdateEventObject +> -export type PriceFeedUpdateEventFilter = TypedEventFilter; +export type PriceFeedUpdateEventFilter = TypedEventFilter export interface Pyth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: PythInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - getEmaPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise< - [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } - >; - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber] & { feeAmount: BigNumber }>; - - getValidTimePeriod( - overrides?: CallOverrides - ): Promise<[BigNumber] & { validTimePeriod: BigNumber }>; - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - }; - - getEmaPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getValidTimePeriod(overrides?: CallOverrides): Promise; - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - callStatic: { - getEmaPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getValidTimePeriod(overrides?: CallOverrides): Promise; - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: CallOverrides - ): Promise; - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "BatchPriceFeedUpdate(uint16,uint64)"( - chainId?: null, - sequenceNumber?: null - ): BatchPriceFeedUpdateEventFilter; - BatchPriceFeedUpdate( - chainId?: null, - sequenceNumber?: null - ): BatchPriceFeedUpdateEventFilter; - - "PriceFeedUpdate(bytes32,uint64,int64,uint64)"( - id?: BytesLike | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter; - PriceFeedUpdate( - id?: BytesLike | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter; - }; - - estimateGas: { - getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise; - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPrice(id: BytesLike, overrides?: CallOverrides): Promise; - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getValidTimePeriod(overrides?: CallOverrides): Promise; - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - getEmaPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise; - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getValidTimePeriod( - overrides?: CallOverrides - ): Promise; - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: PythInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber] & { feeAmount: BigNumber }> + + getValidTimePeriod( + overrides?: CallOverrides + ): Promise<[BigNumber] & { validTimePeriod: BigNumber }> + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise + } + + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise + + getValidTimePeriod(overrides?: CallOverrides): Promise + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + callStatic: { + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise + + getValidTimePeriod(overrides?: CallOverrides): Promise + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: CallOverrides + ): Promise + + updatePriceFeeds(updateData: BytesLike[], overrides?: CallOverrides): Promise + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: CallOverrides + ): Promise + } + + filters: { + 'BatchPriceFeedUpdate(uint16,uint64)'( + chainId?: null, + sequenceNumber?: null + ): BatchPriceFeedUpdateEventFilter + BatchPriceFeedUpdate(chainId?: null, sequenceNumber?: null): BatchPriceFeedUpdateEventFilter + + 'PriceFeedUpdate(bytes32,uint64,int64,uint64)'( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter + PriceFeedUpdate( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter + } + + estimateGas: { + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getEmaPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise + + getValidTimePeriod(overrides?: CallOverrides): Promise + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise + } + + populateTransaction: { + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getEmaPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise + + getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise + + getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise + + getValidTimePeriod(overrides?: CallOverrides): Promise + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/ReverseRecords.ts b/packages/sdk/src/contracts/types/ReverseRecords.ts index 6706068a9a..c85f6d3143 100644 --- a/packages/sdk/src/contracts/types/ReverseRecords.ts +++ b/packages/sdk/src/contracts/types/ReverseRecords.ts @@ -2,89 +2,73 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface ReverseRecordsInterface extends utils.Interface { - functions: { - "getNames(address[])": FunctionFragment; - }; + functions: { + 'getNames(address[])': FunctionFragment + } - getFunction(nameOrSignatureOrTopic: "getNames"): FunctionFragment; + getFunction(nameOrSignatureOrTopic: 'getNames'): FunctionFragment - encodeFunctionData(functionFragment: "getNames", values: [string[]]): string; + encodeFunctionData(functionFragment: 'getNames', values: [string[]]): string - decodeFunctionResult(functionFragment: "getNames", data: BytesLike): Result; + decodeFunctionResult(functionFragment: 'getNames', data: BytesLike): Result - events: {}; + events: {} } export interface ReverseRecords extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: ReverseRecordsInterface; + interface: ReverseRecordsInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - getNames( - addresses: string[], - overrides?: CallOverrides - ): Promise<[string[]] & { r: string[] }>; - }; + functions: { + getNames(addresses: string[], overrides?: CallOverrides): Promise<[string[]] & { r: string[] }> + } - getNames(addresses: string[], overrides?: CallOverrides): Promise; + getNames(addresses: string[], overrides?: CallOverrides): Promise - callStatic: { - getNames(addresses: string[], overrides?: CallOverrides): Promise; - }; + callStatic: { + getNames(addresses: string[], overrides?: CallOverrides): Promise + } - filters: {}; + filters: {} - estimateGas: { - getNames( - addresses: string[], - overrides?: CallOverrides - ): Promise; - }; + estimateGas: { + getNames(addresses: string[], overrides?: CallOverrides): Promise + } - populateTransaction: { - getNames( - addresses: string[], - overrides?: CallOverrides - ): Promise; - }; + populateTransaction: { + getNames(addresses: string[], overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/RewardEscrow.ts b/packages/sdk/src/contracts/types/RewardEscrow.ts index c82c6c2944..0a94cc27ca 100644 --- a/packages/sdk/src/contracts/types/RewardEscrow.ts +++ b/packages/sdk/src/contracts/types/RewardEscrow.ts @@ -2,1137 +2,892 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace VestingEntries { - export type VestingEntryWithIDStruct = { - endTime: BigNumberish; - escrowAmount: BigNumberish; - entryID: BigNumberish; - }; - - export type VestingEntryWithIDStructOutput = [ - BigNumber, - BigNumber, - BigNumber - ] & { endTime: BigNumber; escrowAmount: BigNumber; entryID: BigNumber }; + export type VestingEntryWithIDStruct = { + endTime: BigNumberish + escrowAmount: BigNumberish + entryID: BigNumberish + } + + export type VestingEntryWithIDStructOutput = [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + entryID: BigNumber + } } export interface RewardEscrowInterface extends utils.Interface { - functions: { - "MAX_DURATION()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "accountVestingEntryIDs(address,uint256)": FunctionFragment; - "appendVestingEntry(address,uint256,uint256)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "createEscrowEntry(address,uint256,uint256)": FunctionFragment; - "getAccountVestingEntryIDs(address,uint256,uint256)": FunctionFragment; - "getKwentaAddress()": FunctionFragment; - "getVestingEntry(address,uint256)": FunctionFragment; - "getVestingEntryClaimable(address,uint256)": FunctionFragment; - "getVestingQuantity(address,uint256[])": FunctionFragment; - "getVestingSchedules(address,uint256,uint256)": FunctionFragment; - "nextEntryId()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "numVestingEntries(address)": FunctionFragment; - "owner()": FunctionFragment; - "setStakingRewards(address)": FunctionFragment; - "setTreasuryDAO(address)": FunctionFragment; - "stakeEscrow(uint256)": FunctionFragment; - "stakingRewards()": FunctionFragment; - "totalEscrowedAccountBalance(address)": FunctionFragment; - "totalEscrowedBalance()": FunctionFragment; - "totalVestedAccountBalance(address)": FunctionFragment; - "treasuryDAO()": FunctionFragment; - "unstakeEscrow(uint256)": FunctionFragment; - "vest(uint256[])": FunctionFragment; - "vestingSchedules(address,uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "MAX_DURATION" - | "acceptOwnership" - | "accountVestingEntryIDs" - | "appendVestingEntry" - | "balanceOf" - | "createEscrowEntry" - | "getAccountVestingEntryIDs" - | "getKwentaAddress" - | "getVestingEntry" - | "getVestingEntryClaimable" - | "getVestingQuantity" - | "getVestingSchedules" - | "nextEntryId" - | "nominateNewOwner" - | "nominatedOwner" - | "numVestingEntries" - | "owner" - | "setStakingRewards" - | "setTreasuryDAO" - | "stakeEscrow" - | "stakingRewards" - | "totalEscrowedAccountBalance" - | "totalEscrowedBalance" - | "totalVestedAccountBalance" - | "treasuryDAO" - | "unstakeEscrow" - | "vest" - | "vestingSchedules" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "MAX_DURATION", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "accountVestingEntryIDs", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "appendVestingEntry", - values: [string, BigNumberish, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData( - functionFragment: "createEscrowEntry", - values: [string, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getAccountVestingEntryIDs", - values: [string, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getKwentaAddress", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getVestingEntry", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getVestingEntryClaimable", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getVestingQuantity", - values: [string, BigNumberish[]] - ): string; - encodeFunctionData( - functionFragment: "getVestingSchedules", - values: [string, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "nextEntryId", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "numVestingEntries", - values: [string] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "setStakingRewards", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "setTreasuryDAO", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "stakeEscrow", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "stakingRewards", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalEscrowedAccountBalance", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "totalEscrowedBalance", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalVestedAccountBalance", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "treasuryDAO", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "unstakeEscrow", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "vest", - values: [BigNumberish[]] - ): string; - encodeFunctionData( - functionFragment: "vestingSchedules", - values: [string, BigNumberish] - ): string; - - decodeFunctionResult( - functionFragment: "MAX_DURATION", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accountVestingEntryIDs", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "appendVestingEntry", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "createEscrowEntry", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getAccountVestingEntryIDs", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getKwentaAddress", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getVestingEntry", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getVestingEntryClaimable", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getVestingQuantity", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getVestingSchedules", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nextEntryId", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "numVestingEntries", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setStakingRewards", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setTreasuryDAO", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "stakeEscrow", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "stakingRewards", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalEscrowedAccountBalance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalEscrowedBalance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalVestedAccountBalance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "treasuryDAO", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "unstakeEscrow", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "vest", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "vestingSchedules", - data: BytesLike - ): Result; - - events: { - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "StakingRewardsSet(address)": EventFragment; - "TreasuryDAOSet(address)": EventFragment; - "Vested(address,uint256)": EventFragment; - "VestingEntryCreated(address,uint256,uint256,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "StakingRewardsSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "TreasuryDAOSet"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Vested"): EventFragment; - getEvent(nameOrSignatureOrTopic: "VestingEntryCreated"): EventFragment; + functions: { + 'MAX_DURATION()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'accountVestingEntryIDs(address,uint256)': FunctionFragment + 'appendVestingEntry(address,uint256,uint256)': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'createEscrowEntry(address,uint256,uint256)': FunctionFragment + 'getAccountVestingEntryIDs(address,uint256,uint256)': FunctionFragment + 'getKwentaAddress()': FunctionFragment + 'getVestingEntry(address,uint256)': FunctionFragment + 'getVestingEntryClaimable(address,uint256)': FunctionFragment + 'getVestingQuantity(address,uint256[])': FunctionFragment + 'getVestingSchedules(address,uint256,uint256)': FunctionFragment + 'nextEntryId()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'numVestingEntries(address)': FunctionFragment + 'owner()': FunctionFragment + 'setStakingRewards(address)': FunctionFragment + 'setTreasuryDAO(address)': FunctionFragment + 'stakeEscrow(uint256)': FunctionFragment + 'stakingRewards()': FunctionFragment + 'totalEscrowedAccountBalance(address)': FunctionFragment + 'totalEscrowedBalance()': FunctionFragment + 'totalVestedAccountBalance(address)': FunctionFragment + 'treasuryDAO()': FunctionFragment + 'unstakeEscrow(uint256)': FunctionFragment + 'vest(uint256[])': FunctionFragment + 'vestingSchedules(address,uint256)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'MAX_DURATION' + | 'acceptOwnership' + | 'accountVestingEntryIDs' + | 'appendVestingEntry' + | 'balanceOf' + | 'createEscrowEntry' + | 'getAccountVestingEntryIDs' + | 'getKwentaAddress' + | 'getVestingEntry' + | 'getVestingEntryClaimable' + | 'getVestingQuantity' + | 'getVestingSchedules' + | 'nextEntryId' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'numVestingEntries' + | 'owner' + | 'setStakingRewards' + | 'setTreasuryDAO' + | 'stakeEscrow' + | 'stakingRewards' + | 'totalEscrowedAccountBalance' + | 'totalEscrowedBalance' + | 'totalVestedAccountBalance' + | 'treasuryDAO' + | 'unstakeEscrow' + | 'vest' + | 'vestingSchedules' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'MAX_DURATION', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData( + functionFragment: 'accountVestingEntryIDs', + values: [string, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'appendVestingEntry', + values: [string, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData( + functionFragment: 'createEscrowEntry', + values: [string, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'getAccountVestingEntryIDs', + values: [string, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'getKwentaAddress', values?: undefined): string + encodeFunctionData(functionFragment: 'getVestingEntry', values: [string, BigNumberish]): string + encodeFunctionData( + functionFragment: 'getVestingEntryClaimable', + values: [string, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'getVestingQuantity', + values: [string, BigNumberish[]] + ): string + encodeFunctionData( + functionFragment: 'getVestingSchedules', + values: [string, BigNumberish, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'nextEntryId', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'numVestingEntries', values: [string]): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'setStakingRewards', values: [string]): string + encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [string]): string + encodeFunctionData(functionFragment: 'stakeEscrow', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'stakingRewards', values?: undefined): string + encodeFunctionData(functionFragment: 'totalEscrowedAccountBalance', values: [string]): string + encodeFunctionData(functionFragment: 'totalEscrowedBalance', values?: undefined): string + encodeFunctionData(functionFragment: 'totalVestedAccountBalance', values: [string]): string + encodeFunctionData(functionFragment: 'treasuryDAO', values?: undefined): string + encodeFunctionData(functionFragment: 'unstakeEscrow', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'vest', values: [BigNumberish[]]): string + encodeFunctionData(functionFragment: 'vestingSchedules', values: [string, BigNumberish]): string + + decodeFunctionResult(functionFragment: 'MAX_DURATION', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accountVestingEntryIDs', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'appendVestingEntry', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'createEscrowEntry', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getAccountVestingEntryIDs', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getKwentaAddress', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getVestingEntry', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getVestingEntryClaimable', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getVestingQuantity', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getVestingSchedules', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nextEntryId', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'numVestingEntries', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setStakingRewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setTreasuryDAO', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stakingRewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalEscrowedAccountBalance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalEscrowedBalance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalVestedAccountBalance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'treasuryDAO', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'vest', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'vestingSchedules', data: BytesLike): Result + + events: { + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'StakingRewardsSet(address)': EventFragment + 'TreasuryDAOSet(address)': EventFragment + 'Vested(address,uint256)': EventFragment + 'VestingEntryCreated(address,uint256,uint256,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'StakingRewardsSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'TreasuryDAOSet'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Vested'): EventFragment + getEvent(nameOrSignatureOrTopic: 'VestingEntryCreated'): EventFragment } export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface StakingRewardsSetEventObject { - rewardEscrow: string; + rewardEscrow: string } -export type StakingRewardsSetEvent = TypedEvent< - [string], - StakingRewardsSetEventObject ->; +export type StakingRewardsSetEvent = TypedEvent<[string], StakingRewardsSetEventObject> -export type StakingRewardsSetEventFilter = - TypedEventFilter; +export type StakingRewardsSetEventFilter = TypedEventFilter export interface TreasuryDAOSetEventObject { - treasuryDAO: string; + treasuryDAO: string } -export type TreasuryDAOSetEvent = TypedEvent< - [string], - TreasuryDAOSetEventObject ->; +export type TreasuryDAOSetEvent = TypedEvent<[string], TreasuryDAOSetEventObject> -export type TreasuryDAOSetEventFilter = TypedEventFilter; +export type TreasuryDAOSetEventFilter = TypedEventFilter export interface VestedEventObject { - beneficiary: string; - value: BigNumber; + beneficiary: string + value: BigNumber } -export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject>; +export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject> -export type VestedEventFilter = TypedEventFilter; +export type VestedEventFilter = TypedEventFilter export interface VestingEntryCreatedEventObject { - beneficiary: string; - value: BigNumber; - duration: BigNumber; - entryID: BigNumber; + beneficiary: string + value: BigNumber + duration: BigNumber + entryID: BigNumber } export type VestingEntryCreatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - VestingEntryCreatedEventObject ->; + [string, BigNumber, BigNumber, BigNumber], + VestingEntryCreatedEventObject +> -export type VestingEntryCreatedEventFilter = - TypedEventFilter; +export type VestingEntryCreatedEventFilter = TypedEventFilter export interface RewardEscrow extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: RewardEscrowInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]>; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber[]]>; - - getKwentaAddress(overrides?: CallOverrides): Promise<[string]>; - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } - >; - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } - >; - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]>; - - nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - numVestingEntries( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise; - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - stakingRewards(overrides?: CallOverrides): Promise<[string]>; - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]>; - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - treasuryDAO(overrides?: CallOverrides): Promise<[string]>; - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - }; - - MAX_DURATION(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getKwentaAddress(overrides?: CallOverrides): Promise; - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }>; - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } - >; - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nextEntryId(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - numVestingEntries( - account: string, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise; - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - stakingRewards(overrides?: CallOverrides): Promise; - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - totalEscrowedBalance(overrides?: CallOverrides): Promise; - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - treasuryDAO(overrides?: CallOverrides): Promise; - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - - callStatic: { - MAX_DURATION(overrides?: CallOverrides): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getKwentaAddress(overrides?: CallOverrides): Promise; - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } - >; - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } - >; - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nextEntryId(overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - numVestingEntries( - account: string, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setStakingRewards( - _stakingRewards: string, - overrides?: CallOverrides - ): Promise; - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: CallOverrides - ): Promise; - - stakeEscrow( - _amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - stakingRewards(overrides?: CallOverrides): Promise; - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - totalEscrowedBalance(overrides?: CallOverrides): Promise; - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - treasuryDAO(overrides?: CallOverrides): Promise; - - unstakeEscrow( - _amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - vest(entryIDs: BigNumberish[], overrides?: CallOverrides): Promise; - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber; - escrowAmount: BigNumber; - duration: BigNumber; - } - >; - }; - - filters: { - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - - "StakingRewardsSet(address)"( - rewardEscrow?: null - ): StakingRewardsSetEventFilter; - StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter; - - "TreasuryDAOSet(address)"(treasuryDAO?: null): TreasuryDAOSetEventFilter; - TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter; - - "Vested(address,uint256)"( - beneficiary?: string | null, - value?: null - ): VestedEventFilter; - Vested(beneficiary?: string | null, value?: null): VestedEventFilter; - - "VestingEntryCreated(address,uint256,uint256,uint256)"( - beneficiary?: string | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter; - VestingEntryCreated( - beneficiary?: string | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter; - }; - - estimateGas: { - MAX_DURATION(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getKwentaAddress(overrides?: CallOverrides): Promise; - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nextEntryId(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - numVestingEntries( - account: string, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise; - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - stakingRewards(overrides?: CallOverrides): Promise; - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - totalEscrowedBalance(overrides?: CallOverrides): Promise; - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - treasuryDAO(overrides?: CallOverrides): Promise; - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - MAX_DURATION(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getKwentaAddress(overrides?: CallOverrides): Promise; - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise; - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise; - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise; - - nextEntryId(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - numVestingEntries( - account: string, - overrides?: CallOverrides - ): Promise; - - owner(overrides?: CallOverrides): Promise; - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise; - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - stakingRewards(overrides?: CallOverrides): Promise; - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - totalEscrowedBalance( - overrides?: CallOverrides - ): Promise; - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise; - - treasuryDAO(overrides?: CallOverrides): Promise; - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise; - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: RewardEscrowInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[]]> + + getKwentaAddress(overrides?: CallOverrides): Promise<[string]> + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]> + + nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + numVestingEntries(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + owner(overrides?: CallOverrides): Promise<[string]> + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + stakingRewards(overrides?: CallOverrides): Promise<[string]> + + totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + + totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]> + + totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + + treasuryDAO(overrides?: CallOverrides): Promise<[string]> + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + } + + MAX_DURATION(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + getKwentaAddress(overrides?: CallOverrides): Promise + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + nextEntryId(overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + numVestingEntries(account: string, overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + stakingRewards(overrides?: CallOverrides): Promise + + totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + totalEscrowedBalance(overrides?: CallOverrides): Promise + + totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + treasuryDAO(overrides?: CallOverrides): Promise + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + + callStatic: { + MAX_DURATION(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + getKwentaAddress(overrides?: CallOverrides): Promise + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + nextEntryId(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + numVestingEntries(account: string, overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setStakingRewards(_stakingRewards: string, overrides?: CallOverrides): Promise + + setTreasuryDAO(_treasuryDAO: string, overrides?: CallOverrides): Promise + + stakeEscrow(_amount: BigNumberish, overrides?: CallOverrides): Promise + + stakingRewards(overrides?: CallOverrides): Promise + + totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + totalEscrowedBalance(overrides?: CallOverrides): Promise + + totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + treasuryDAO(overrides?: CallOverrides): Promise + + unstakeEscrow(_amount: BigNumberish, overrides?: CallOverrides): Promise + + vest(entryIDs: BigNumberish[], overrides?: CallOverrides): Promise + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber + escrowAmount: BigNumber + duration: BigNumber + } + > + } + + filters: { + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + + 'StakingRewardsSet(address)'(rewardEscrow?: null): StakingRewardsSetEventFilter + StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter + + 'TreasuryDAOSet(address)'(treasuryDAO?: null): TreasuryDAOSetEventFilter + TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter + + 'Vested(address,uint256)'(beneficiary?: string | null, value?: null): VestedEventFilter + Vested(beneficiary?: string | null, value?: null): VestedEventFilter + + 'VestingEntryCreated(address,uint256,uint256,uint256)'( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter + VestingEntryCreated( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter + } + + estimateGas: { + MAX_DURATION(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + getKwentaAddress(overrides?: CallOverrides): Promise + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + nextEntryId(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + numVestingEntries(account: string, overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + stakingRewards(overrides?: CallOverrides): Promise + + totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + totalEscrowedBalance(overrides?: CallOverrides): Promise + + totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise + + treasuryDAO(overrides?: CallOverrides): Promise + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + vest(entryIDs: BigNumberish[], overrides?: Overrides & { from?: string }): Promise + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + } + + populateTransaction: { + MAX_DURATION(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + getKwentaAddress(overrides?: CallOverrides): Promise + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise + + nextEntryId(overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + numVestingEntries(account: string, overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + stakingRewards(overrides?: CallOverrides): Promise + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise + + totalEscrowedBalance(overrides?: CallOverrides): Promise + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise + + treasuryDAO(overrides?: CallOverrides): Promise + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccount.ts b/packages/sdk/src/contracts/types/SmartMarginAccount.ts index 75f741ce5f..d4fa3ae1fc 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccount.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccount.ts @@ -2,761 +2,643 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export declare namespace IAccount { - export type ConditionalOrderStruct = { - marketKey: BytesLike; - marginDelta: BigNumberish; - sizeDelta: BigNumberish; - targetPrice: BigNumberish; - gelatoTaskId: BytesLike; - conditionalOrderType: BigNumberish; - desiredFillPrice: BigNumberish; - reduceOnly: boolean; - }; - - export type ConditionalOrderStructOutput = [ - string, - BigNumber, - BigNumber, - BigNumber, - string, - number, - BigNumber, - boolean - ] & { - marketKey: string; - marginDelta: BigNumber; - sizeDelta: BigNumber; - targetPrice: BigNumber; - gelatoTaskId: string; - conditionalOrderType: number; - desiredFillPrice: BigNumber; - reduceOnly: boolean; - }; + export type ConditionalOrderStruct = { + marketKey: BytesLike + marginDelta: BigNumberish + sizeDelta: BigNumberish + targetPrice: BigNumberish + gelatoTaskId: BytesLike + conditionalOrderType: BigNumberish + desiredFillPrice: BigNumberish + reduceOnly: boolean + } + + export type ConditionalOrderStructOutput = [ + string, + BigNumber, + BigNumber, + BigNumber, + string, + number, + BigNumber, + boolean + ] & { + marketKey: string + marginDelta: BigNumber + sizeDelta: BigNumber + targetPrice: BigNumber + gelatoTaskId: string + conditionalOrderType: number + desiredFillPrice: BigNumber + reduceOnly: boolean + } } export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: boolean; - sizeDelta: BigNumberish; - desiredFillPrice: BigNumberish; - targetRoundId: BigNumberish; - commitDeposit: BigNumberish; - keeperDeposit: BigNumberish; - executableAtTime: BigNumberish; - intentionTime: BigNumberish; - trackingCode: BytesLike; - }; - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean; - sizeDelta: BigNumber; - desiredFillPrice: BigNumber; - targetRoundId: BigNumber; - commitDeposit: BigNumber; - keeperDeposit: BigNumber; - executableAtTime: BigNumber; - intentionTime: BigNumber; - trackingCode: string; - }; - - export type PositionStruct = { - id: BigNumberish; - lastFundingIndex: BigNumberish; - margin: BigNumberish; - lastPrice: BigNumberish; - size: BigNumberish; - }; - - export type PositionStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - id: BigNumber; - lastFundingIndex: BigNumber; - margin: BigNumber; - lastPrice: BigNumber; - size: BigNumber; - }; + export type DelayedOrderStruct = { + isOffchain: boolean + sizeDelta: BigNumberish + desiredFillPrice: BigNumberish + targetRoundId: BigNumberish + commitDeposit: BigNumberish + keeperDeposit: BigNumberish + executableAtTime: BigNumberish + intentionTime: BigNumberish + trackingCode: BytesLike + } + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean + sizeDelta: BigNumber + desiredFillPrice: BigNumber + targetRoundId: BigNumber + commitDeposit: BigNumber + keeperDeposit: BigNumber + executableAtTime: BigNumber + intentionTime: BigNumber + trackingCode: string + } + + export type PositionStruct = { + id: BigNumberish + lastFundingIndex: BigNumberish + margin: BigNumberish + lastPrice: BigNumberish + size: BigNumberish + } + + export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber + lastFundingIndex: BigNumber + margin: BigNumber + lastPrice: BigNumber + size: BigNumber + } } export interface SmartMarginAccountInterface extends utils.Interface { - functions: { - "ETH()": FunctionFragment; - "GELATO()": FunctionFragment; - "OPS()": FunctionFragment; - "VERSION()": FunctionFragment; - "addDelegate(address)": FunctionFragment; - "checker(uint256)": FunctionFragment; - "committedMargin()": FunctionFragment; - "conditionalOrderId()": FunctionFragment; - "delegates(address)": FunctionFragment; - "execute(uint8[],bytes[])": FunctionFragment; - "executeConditionalOrder(uint256)": FunctionFragment; - "freeMargin()": FunctionFragment; - "getConditionalOrder(uint256)": FunctionFragment; - "getDelayedOrder(bytes32)": FunctionFragment; - "getPosition(bytes32)": FunctionFragment; - "isAuth()": FunctionFragment; - "isOwner()": FunctionFragment; - "owner()": FunctionFragment; - "removeDelegate(address)": FunctionFragment; - "setInitialOwnership(address)": FunctionFragment; - "transferOwnership(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "ETH" - | "GELATO" - | "OPS" - | "VERSION" - | "addDelegate" - | "checker" - | "committedMargin" - | "conditionalOrderId" - | "delegates" - | "execute" - | "executeConditionalOrder" - | "freeMargin" - | "getConditionalOrder" - | "getDelayedOrder" - | "getPosition" - | "isAuth" - | "isOwner" - | "owner" - | "removeDelegate" - | "setInitialOwnership" - | "transferOwnership" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "ETH", values?: undefined): string; - encodeFunctionData(functionFragment: "GELATO", values?: undefined): string; - encodeFunctionData(functionFragment: "OPS", values?: undefined): string; - encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; - encodeFunctionData(functionFragment: "addDelegate", values: [string]): string; - encodeFunctionData( - functionFragment: "checker", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "committedMargin", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "conditionalOrderId", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "delegates", values: [string]): string; - encodeFunctionData( - functionFragment: "execute", - values: [BigNumberish[], BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "executeConditionalOrder", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "freeMargin", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getConditionalOrder", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "getDelayedOrder", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getPosition", - values: [BytesLike] - ): string; - encodeFunctionData(functionFragment: "isAuth", values?: undefined): string; - encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "removeDelegate", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "setInitialOwnership", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "transferOwnership", - values: [string] - ): string; - - decodeFunctionResult(functionFragment: "ETH", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "GELATO", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "OPS", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "addDelegate", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "checker", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "committedMargin", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "conditionalOrderId", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "delegates", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "executeConditionalOrder", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "freeMargin", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getConditionalOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getDelayedOrder", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getPosition", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "isAuth", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "removeDelegate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setInitialOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferOwnership", - data: BytesLike - ): Result; - - events: { - "DelegatedAccountAdded(address,address)": EventFragment; - "DelegatedAccountRemoved(address,address)": EventFragment; - "OwnershipTransferred(address,address)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "DelegatedAccountAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "DelegatedAccountRemoved"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + functions: { + 'ETH()': FunctionFragment + 'GELATO()': FunctionFragment + 'OPS()': FunctionFragment + 'VERSION()': FunctionFragment + 'addDelegate(address)': FunctionFragment + 'checker(uint256)': FunctionFragment + 'committedMargin()': FunctionFragment + 'conditionalOrderId()': FunctionFragment + 'delegates(address)': FunctionFragment + 'execute(uint8[],bytes[])': FunctionFragment + 'executeConditionalOrder(uint256)': FunctionFragment + 'freeMargin()': FunctionFragment + 'getConditionalOrder(uint256)': FunctionFragment + 'getDelayedOrder(bytes32)': FunctionFragment + 'getPosition(bytes32)': FunctionFragment + 'isAuth()': FunctionFragment + 'isOwner()': FunctionFragment + 'owner()': FunctionFragment + 'removeDelegate(address)': FunctionFragment + 'setInitialOwnership(address)': FunctionFragment + 'transferOwnership(address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'ETH' + | 'GELATO' + | 'OPS' + | 'VERSION' + | 'addDelegate' + | 'checker' + | 'committedMargin' + | 'conditionalOrderId' + | 'delegates' + | 'execute' + | 'executeConditionalOrder' + | 'freeMargin' + | 'getConditionalOrder' + | 'getDelayedOrder' + | 'getPosition' + | 'isAuth' + | 'isOwner' + | 'owner' + | 'removeDelegate' + | 'setInitialOwnership' + | 'transferOwnership' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'ETH', values?: undefined): string + encodeFunctionData(functionFragment: 'GELATO', values?: undefined): string + encodeFunctionData(functionFragment: 'OPS', values?: undefined): string + encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string + encodeFunctionData(functionFragment: 'addDelegate', values: [string]): string + encodeFunctionData(functionFragment: 'checker', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'committedMargin', values?: undefined): string + encodeFunctionData(functionFragment: 'conditionalOrderId', values?: undefined): string + encodeFunctionData(functionFragment: 'delegates', values: [string]): string + encodeFunctionData(functionFragment: 'execute', values: [BigNumberish[], BytesLike[]]): string + encodeFunctionData(functionFragment: 'executeConditionalOrder', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'freeMargin', values?: undefined): string + encodeFunctionData(functionFragment: 'getConditionalOrder', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'getDelayedOrder', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'getPosition', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'isAuth', values?: undefined): string + encodeFunctionData(functionFragment: 'isOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'removeDelegate', values: [string]): string + encodeFunctionData(functionFragment: 'setInitialOwnership', values: [string]): string + encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string + + decodeFunctionResult(functionFragment: 'ETH', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'GELATO', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'OPS', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'addDelegate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'checker', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'committedMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'conditionalOrderId', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'delegates', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'execute', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'executeConditionalOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'freeMargin', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getConditionalOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getDelayedOrder', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getPosition', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isAuth', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'removeDelegate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setInitialOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result + + events: { + 'DelegatedAccountAdded(address,address)': EventFragment + 'DelegatedAccountRemoved(address,address)': EventFragment + 'OwnershipTransferred(address,address)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'DelegatedAccountAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'DelegatedAccountRemoved'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment } export interface DelegatedAccountAddedEventObject { - caller: string; - delegate: string; + caller: string + delegate: string } export type DelegatedAccountAddedEvent = TypedEvent< - [string, string], - DelegatedAccountAddedEventObject ->; + [string, string], + DelegatedAccountAddedEventObject +> -export type DelegatedAccountAddedEventFilter = - TypedEventFilter; +export type DelegatedAccountAddedEventFilter = TypedEventFilter export interface DelegatedAccountRemovedEventObject { - caller: string; - delegate: string; + caller: string + delegate: string } export type DelegatedAccountRemovedEvent = TypedEvent< - [string, string], - DelegatedAccountRemovedEventObject ->; + [string, string], + DelegatedAccountRemovedEventObject +> -export type DelegatedAccountRemovedEventFilter = - TypedEventFilter; +export type DelegatedAccountRemovedEventFilter = TypedEventFilter export interface OwnershipTransferredEventObject { - caller: string; - newOwner: string; + caller: string + newOwner: string } export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject ->; + [string, string], + OwnershipTransferredEventObject +> -export type OwnershipTransferredEventFilter = - TypedEventFilter; +export type OwnershipTransferredEventFilter = TypedEventFilter export interface SmartMarginAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SmartMarginAccountInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - ETH(overrides?: CallOverrides): Promise<[string]>; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SmartMarginAccountInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + ETH(overrides?: CallOverrides): Promise<[string]> + + GELATO(overrides?: CallOverrides): Promise<[string]> + + OPS(overrides?: CallOverrides): Promise<[string]> + + VERSION(overrides?: CallOverrides): Promise<[string]> + + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise + + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> + + committedMargin(overrides?: CallOverrides): Promise<[BigNumber]> + + conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]> + + delegates(delegate: string, overrides?: CallOverrides): Promise<[boolean]> - GELATO(overrides?: CallOverrides): Promise<[string]>; + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise - OPS(overrides?: CallOverrides): Promise<[string]>; + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - VERSION(overrides?: CallOverrides): Promise<[string]>; + freeMargin(overrides?: CallOverrides): Promise<[BigNumber]> - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[IAccount.ConditionalOrderStructOutput]> - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { + order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput + } + > - committedMargin(overrides?: CallOverrides): Promise<[BigNumber]>; + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.PositionStructOutput] & { + position: IPerpsV2MarketConsolidated.PositionStructOutput + } + > - conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]>; + isAuth(overrides?: CallOverrides): Promise<[boolean]> - delegates(delegate: string, overrides?: CallOverrides): Promise<[boolean]>; + isOwner(overrides?: CallOverrides): Promise<[boolean]> - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; + owner(overrides?: CallOverrides): Promise<[string]> - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise - freeMargin(overrides?: CallOverrides): Promise<[BigNumber]>; + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[IAccount.ConditionalOrderStructOutput]>; + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + } - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { - order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput; - } - >; + ETH(overrides?: CallOverrides): Promise - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.PositionStructOutput] & { - position: IPerpsV2MarketConsolidated.PositionStructOutput; - } - >; + GELATO(overrides?: CallOverrides): Promise - isAuth(overrides?: CallOverrides): Promise<[boolean]>; + OPS(overrides?: CallOverrides): Promise - isOwner(overrides?: CallOverrides): Promise<[boolean]>; + VERSION(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise<[string]>; + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + committedMargin(overrides?: CallOverrides): Promise - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - }; + conditionalOrderId(overrides?: CallOverrides): Promise - ETH(overrides?: CallOverrides): Promise; + delegates(delegate: string, overrides?: CallOverrides): Promise - GELATO(overrides?: CallOverrides): Promise; + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise - OPS(overrides?: CallOverrides): Promise; + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - VERSION(overrides?: CallOverrides): Promise; + freeMargin(overrides?: CallOverrides): Promise - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise - committedMargin(overrides?: CallOverrides): Promise; + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise - conditionalOrderId(overrides?: CallOverrides): Promise; + isAuth(overrides?: CallOverrides): Promise - delegates(delegate: string, overrides?: CallOverrides): Promise; + isOwner(overrides?: CallOverrides): Promise - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; + owner(overrides?: CallOverrides): Promise - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise - freeMargin(overrides?: CallOverrides): Promise; + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + callStatic: { + ETH(overrides?: CallOverrides): Promise - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + GELATO(overrides?: CallOverrides): Promise - isAuth(overrides?: CallOverrides): Promise; + OPS(overrides?: CallOverrides): Promise - isOwner(overrides?: CallOverrides): Promise; + VERSION(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + addDelegate(_delegate: string, overrides?: CallOverrides): Promise - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + committedMargin(overrides?: CallOverrides): Promise - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; + conditionalOrderId(overrides?: CallOverrides): Promise - callStatic: { - ETH(overrides?: CallOverrides): Promise; + delegates(delegate: string, overrides?: CallOverrides): Promise - GELATO(overrides?: CallOverrides): Promise; + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: CallOverrides + ): Promise - OPS(overrides?: CallOverrides): Promise; + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - VERSION(overrides?: CallOverrides): Promise; + freeMargin(overrides?: CallOverrides): Promise - addDelegate(_delegate: string, overrides?: CallOverrides): Promise; + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise - committedMargin(overrides?: CallOverrides): Promise; + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise - conditionalOrderId(overrides?: CallOverrides): Promise; + isAuth(overrides?: CallOverrides): Promise - delegates(delegate: string, overrides?: CallOverrides): Promise; + isOwner(overrides?: CallOverrides): Promise - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: CallOverrides - ): Promise; + owner(overrides?: CallOverrides): Promise - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + removeDelegate(_delegate: string, overrides?: CallOverrides): Promise - freeMargin(overrides?: CallOverrides): Promise; + setInitialOwnership(_owner: string, overrides?: CallOverrides): Promise - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + transferOwnership(_newOwner: string, overrides?: CallOverrides): Promise + } - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + filters: { + 'DelegatedAccountAdded(address,address)'( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter + DelegatedAccountAdded( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + 'DelegatedAccountRemoved(address,address)'( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter + DelegatedAccountRemoved( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter - isAuth(overrides?: CallOverrides): Promise; + 'OwnershipTransferred(address,address)'( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter + OwnershipTransferred( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter + } - isOwner(overrides?: CallOverrides): Promise; + estimateGas: { + ETH(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + GELATO(overrides?: CallOverrides): Promise - removeDelegate(_delegate: string, overrides?: CallOverrides): Promise; + OPS(overrides?: CallOverrides): Promise - setInitialOwnership( - _owner: string, - overrides?: CallOverrides - ): Promise; + VERSION(overrides?: CallOverrides): Promise - transferOwnership( - _newOwner: string, - overrides?: CallOverrides - ): Promise; - }; + addDelegate(_delegate: string, overrides?: Overrides & { from?: string }): Promise - filters: { - "DelegatedAccountAdded(address,address)"( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountAddedEventFilter; - DelegatedAccountAdded( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountAddedEventFilter; + checker(_conditionalOrderId: BigNumberish, overrides?: CallOverrides): Promise - "DelegatedAccountRemoved(address,address)"( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountRemovedEventFilter; - DelegatedAccountRemoved( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountRemovedEventFilter; + committedMargin(overrides?: CallOverrides): Promise - "OwnershipTransferred(address,address)"( - caller?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter; - OwnershipTransferred( - caller?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter; - }; + conditionalOrderId(overrides?: CallOverrides): Promise - estimateGas: { - ETH(overrides?: CallOverrides): Promise; + delegates(delegate: string, overrides?: CallOverrides): Promise - GELATO(overrides?: CallOverrides): Promise; + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise - OPS(overrides?: CallOverrides): Promise; + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - VERSION(overrides?: CallOverrides): Promise; + freeMargin(overrides?: CallOverrides): Promise - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + getDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - committedMargin(overrides?: CallOverrides): Promise; + getPosition(_marketKey: BytesLike, overrides?: CallOverrides): Promise - conditionalOrderId(overrides?: CallOverrides): Promise; + isAuth(overrides?: CallOverrides): Promise - delegates(delegate: string, overrides?: CallOverrides): Promise; - - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; - - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + isOwner(overrides?: CallOverrides): Promise - freeMargin(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + removeDelegate(_delegate: string, overrides?: Overrides & { from?: string }): Promise - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + } - isAuth(overrides?: CallOverrides): Promise; - - isOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - ETH(overrides?: CallOverrides): Promise; + populateTransaction: { + ETH(overrides?: CallOverrides): Promise - GELATO(overrides?: CallOverrides): Promise; + GELATO(overrides?: CallOverrides): Promise - OPS(overrides?: CallOverrides): Promise; + OPS(overrides?: CallOverrides): Promise - VERSION(overrides?: CallOverrides): Promise; + VERSION(overrides?: CallOverrides): Promise - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - committedMargin(overrides?: CallOverrides): Promise; + committedMargin(overrides?: CallOverrides): Promise - conditionalOrderId( - overrides?: CallOverrides - ): Promise; + conditionalOrderId(overrides?: CallOverrides): Promise - delegates( - delegate: string, - overrides?: CallOverrides - ): Promise; + delegates(delegate: string, overrides?: CallOverrides): Promise - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise; + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - freeMargin(overrides?: CallOverrides): Promise; + freeMargin(overrides?: CallOverrides): Promise - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise; + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + getDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + getPosition(_marketKey: BytesLike, overrides?: CallOverrides): Promise - isAuth(overrides?: CallOverrides): Promise; + isAuth(overrides?: CallOverrides): Promise - isOwner(overrides?: CallOverrides): Promise; + isOwner(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise; + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise; - }; + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts index a5d069d9b4..f304d2b58b 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts @@ -92,9 +92,8 @@ export type AccountImplementationUpgradedEvent = TypedEvent< AccountImplementationUpgradedEventObject > -export type AccountImplementationUpgradedEventFilter = TypedEventFilter< - AccountImplementationUpgradedEvent -> +export type AccountImplementationUpgradedEventFilter = + TypedEventFilter export interface NewAccountEventObject { creator: string diff --git a/packages/sdk/src/contracts/types/StakingRewards.ts b/packages/sdk/src/contracts/types/StakingRewards.ts index 0176b20466..6101925d30 100644 --- a/packages/sdk/src/contracts/types/StakingRewards.ts +++ b/packages/sdk/src/contracts/types/StakingRewards.ts @@ -2,952 +2,706 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface StakingRewardsInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "earned(address)": FunctionFragment; - "exit()": FunctionFragment; - "getReward()": FunctionFragment; - "getRewardForDuration()": FunctionFragment; - "lastPauseTime()": FunctionFragment; - "lastTimeRewardApplicable()": FunctionFragment; - "lastUpdateTime()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "notifyRewardAmount(uint256)": FunctionFragment; - "owner()": FunctionFragment; - "paused()": FunctionFragment; - "periodFinish()": FunctionFragment; - "recoverERC20(address,uint256)": FunctionFragment; - "rewardPerToken()": FunctionFragment; - "rewardPerTokenStored()": FunctionFragment; - "rewardRate()": FunctionFragment; - "rewards(address)": FunctionFragment; - "rewardsDistribution()": FunctionFragment; - "rewardsDuration()": FunctionFragment; - "rewardsToken()": FunctionFragment; - "setPaused(bool)": FunctionFragment; - "setRewardsDistribution(address)": FunctionFragment; - "setRewardsDuration(uint256)": FunctionFragment; - "stake(uint256)": FunctionFragment; - "stakingToken()": FunctionFragment; - "totalSupply()": FunctionFragment; - "userRewardPerTokenPaid(address)": FunctionFragment; - "withdraw(uint256)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "balanceOf" - | "earned" - | "exit" - | "getReward" - | "getRewardForDuration" - | "lastPauseTime" - | "lastTimeRewardApplicable" - | "lastUpdateTime" - | "nominateNewOwner" - | "nominatedOwner" - | "notifyRewardAmount" - | "owner" - | "paused" - | "periodFinish" - | "recoverERC20" - | "rewardPerToken" - | "rewardPerTokenStored" - | "rewardRate" - | "rewards" - | "rewardsDistribution" - | "rewardsDuration" - | "rewardsToken" - | "setPaused" - | "setRewardsDistribution" - | "setRewardsDuration" - | "stake" - | "stakingToken" - | "totalSupply" - | "userRewardPerTokenPaid" - | "withdraw" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData(functionFragment: "earned", values: [string]): string; - encodeFunctionData(functionFragment: "exit", values?: undefined): string; - encodeFunctionData(functionFragment: "getReward", values?: undefined): string; - encodeFunctionData( - functionFragment: "getRewardForDuration", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastPauseTime", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastTimeRewardApplicable", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "lastUpdateTime", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "notifyRewardAmount", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "paused", values?: undefined): string; - encodeFunctionData( - functionFragment: "periodFinish", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "recoverERC20", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "rewardPerToken", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardPerTokenStored", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardRate", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "rewards", values: [string]): string; - encodeFunctionData( - functionFragment: "rewardsDistribution", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardsDuration", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rewardsToken", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "setPaused", values: [boolean]): string; - encodeFunctionData( - functionFragment: "setRewardsDistribution", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "setRewardsDuration", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; - encodeFunctionData( - functionFragment: "stakingToken", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "userRewardPerTokenPaid", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "withdraw", - values: [BigNumberish] - ): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "getRewardForDuration", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastPauseTime", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastTimeRewardApplicable", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "lastUpdateTime", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "notifyRewardAmount", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "periodFinish", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "recoverERC20", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardPerToken", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardPerTokenStored", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rewardsDistribution", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardsDuration", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rewardsToken", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "setPaused", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setRewardsDistribution", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setRewardsDuration", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "stakingToken", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "userRewardPerTokenPaid", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; - - events: { - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "PauseChanged(bool)": EventFragment; - "Recovered(address,uint256)": EventFragment; - "RewardAdded(uint256)": EventFragment; - "RewardPaid(address,uint256)": EventFragment; - "RewardsDurationUpdated(uint256)": EventFragment; - "Staked(address,uint256)": EventFragment; - "Withdrawn(address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "PauseChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; - getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'earned(address)': FunctionFragment + 'exit()': FunctionFragment + 'getReward()': FunctionFragment + 'getRewardForDuration()': FunctionFragment + 'lastPauseTime()': FunctionFragment + 'lastTimeRewardApplicable()': FunctionFragment + 'lastUpdateTime()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'notifyRewardAmount(uint256)': FunctionFragment + 'owner()': FunctionFragment + 'paused()': FunctionFragment + 'periodFinish()': FunctionFragment + 'recoverERC20(address,uint256)': FunctionFragment + 'rewardPerToken()': FunctionFragment + 'rewardPerTokenStored()': FunctionFragment + 'rewardRate()': FunctionFragment + 'rewards(address)': FunctionFragment + 'rewardsDistribution()': FunctionFragment + 'rewardsDuration()': FunctionFragment + 'rewardsToken()': FunctionFragment + 'setPaused(bool)': FunctionFragment + 'setRewardsDistribution(address)': FunctionFragment + 'setRewardsDuration(uint256)': FunctionFragment + 'stake(uint256)': FunctionFragment + 'stakingToken()': FunctionFragment + 'totalSupply()': FunctionFragment + 'userRewardPerTokenPaid(address)': FunctionFragment + 'withdraw(uint256)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'balanceOf' + | 'earned' + | 'exit' + | 'getReward' + | 'getRewardForDuration' + | 'lastPauseTime' + | 'lastTimeRewardApplicable' + | 'lastUpdateTime' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'notifyRewardAmount' + | 'owner' + | 'paused' + | 'periodFinish' + | 'recoverERC20' + | 'rewardPerToken' + | 'rewardPerTokenStored' + | 'rewardRate' + | 'rewards' + | 'rewardsDistribution' + | 'rewardsDuration' + | 'rewardsToken' + | 'setPaused' + | 'setRewardsDistribution' + | 'setRewardsDuration' + | 'stake' + | 'stakingToken' + | 'totalSupply' + | 'userRewardPerTokenPaid' + | 'withdraw' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'earned', values: [string]): string + encodeFunctionData(functionFragment: 'exit', values?: undefined): string + encodeFunctionData(functionFragment: 'getReward', values?: undefined): string + encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string + encodeFunctionData(functionFragment: 'lastPauseTime', values?: undefined): string + encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string + encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'notifyRewardAmount', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'paused', values?: undefined): string + encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string + encodeFunctionData(functionFragment: 'recoverERC20', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string + encodeFunctionData(functionFragment: 'rewards', values: [string]): string + encodeFunctionData(functionFragment: 'rewardsDistribution', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string + encodeFunctionData(functionFragment: 'rewardsToken', values?: undefined): string + encodeFunctionData(functionFragment: 'setPaused', values: [boolean]): string + encodeFunctionData(functionFragment: 'setRewardsDistribution', values: [string]): string + encodeFunctionData(functionFragment: 'setRewardsDuration', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'stake', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'stakingToken', values?: undefined): string + encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string + encodeFunctionData(functionFragment: 'userRewardPerTokenPaid', values: [string]): string + encodeFunctionData(functionFragment: 'withdraw', values: [BigNumberish]): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastPauseTime', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardsDistribution', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardsToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setPaused', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setRewardsDistribution', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'stakingToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'withdraw', data: BytesLike): Result + + events: { + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'PauseChanged(bool)': EventFragment + 'Recovered(address,uint256)': EventFragment + 'RewardAdded(uint256)': EventFragment + 'RewardPaid(address,uint256)': EventFragment + 'RewardsDurationUpdated(uint256)': EventFragment + 'Staked(address,uint256)': EventFragment + 'Withdrawn(address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'PauseChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment + getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Withdrawn'): EventFragment } export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface PauseChangedEventObject { - isPaused: boolean; + isPaused: boolean } -export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject>; +export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject> -export type PauseChangedEventFilter = TypedEventFilter; +export type PauseChangedEventFilter = TypedEventFilter export interface RecoveredEventObject { - token: string; - amount: BigNumber; + token: string + amount: BigNumber } -export type RecoveredEvent = TypedEvent< - [string, BigNumber], - RecoveredEventObject ->; +export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> -export type RecoveredEventFilter = TypedEventFilter; +export type RecoveredEventFilter = TypedEventFilter export interface RewardAddedEventObject { - reward: BigNumber; + reward: BigNumber } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> -export type RewardAddedEventFilter = TypedEventFilter; +export type RewardAddedEventFilter = TypedEventFilter export interface RewardPaidEventObject { - user: string; - reward: BigNumber; + user: string + reward: BigNumber } -export type RewardPaidEvent = TypedEvent< - [string, BigNumber], - RewardPaidEventObject ->; +export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> -export type RewardPaidEventFilter = TypedEventFilter; +export type RewardPaidEventFilter = TypedEventFilter export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber; + newDuration: BigNumber } -export type RewardsDurationUpdatedEvent = TypedEvent< - [BigNumber], - RewardsDurationUpdatedEventObject ->; +export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> -export type RewardsDurationUpdatedEventFilter = - TypedEventFilter; +export type RewardsDurationUpdatedEventFilter = TypedEventFilter export interface StakedEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> -export type StakedEventFilter = TypedEventFilter; +export type StakedEventFilter = TypedEventFilter export interface WithdrawnEventObject { - user: string; - amount: BigNumber; + user: string + amount: BigNumber } -export type WithdrawnEvent = TypedEvent< - [string, BigNumber], - WithdrawnEventObject ->; +export type WithdrawnEvent = TypedEvent<[string, BigNumber], WithdrawnEventObject> -export type WithdrawnEventFilter = TypedEventFilter; +export type WithdrawnEventFilter = TypedEventFilter export interface StakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: StakingRewardsInterface; + interface: StakingRewardsInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - exit( - overrides?: Overrides & { from?: string } - ): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> - lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]>; + lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]> - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + nominatedOwner(overrides?: CallOverrides): Promise<[string]> - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise<[string]>; + owner(overrides?: CallOverrides): Promise<[string]> - paused(overrides?: CallOverrides): Promise<[boolean]>; + paused(overrides?: CallOverrides): Promise<[boolean]> - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> - rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - rewardsDistribution(overrides?: CallOverrides): Promise<[string]>; + rewardsDistribution(overrides?: CallOverrides): Promise<[string]> - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> - rewardsToken(overrides?: CallOverrides): Promise<[string]>; + rewardsToken(overrides?: CallOverrides): Promise<[string]> - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakingToken(overrides?: CallOverrides): Promise<[string]>; + stakingToken(overrides?: CallOverrides): Promise<[string]> - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - }; + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + } - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - exit(overrides?: Overrides & { from?: string }): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastPauseTime(overrides?: CallOverrides): Promise; + lastPauseTime(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDistribution(overrides?: CallOverrides): Promise; + rewardsDistribution(overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - rewardsToken(overrides?: CallOverrides): Promise; + rewardsToken(overrides?: CallOverrides): Promise - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakingToken(overrides?: CallOverrides): Promise; + stakingToken(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - exit(overrides?: CallOverrides): Promise; + exit(overrides?: CallOverrides): Promise - getReward(overrides?: CallOverrides): Promise; + getReward(overrides?: CallOverrides): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastPauseTime(overrides?: CallOverrides): Promise; + lastPauseTime(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: CallOverrides - ): Promise; + notifyRewardAmount(reward: BigNumberish, overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: CallOverrides - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDistribution(overrides?: CallOverrides): Promise; + rewardsDistribution(overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - rewardsToken(overrides?: CallOverrides): Promise; + rewardsToken(overrides?: CallOverrides): Promise - setPaused(_paused: boolean, overrides?: CallOverrides): Promise; + setPaused(_paused: boolean, overrides?: CallOverrides): Promise - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: CallOverrides - ): Promise; + setRewardsDistribution(_rewardsDistribution: string, overrides?: CallOverrides): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: CallOverrides - ): Promise; + setRewardsDuration(_rewardsDuration: BigNumberish, overrides?: CallOverrides): Promise - stake(amount: BigNumberish, overrides?: CallOverrides): Promise; + stake(amount: BigNumberish, overrides?: CallOverrides): Promise - stakingToken(overrides?: CallOverrides): Promise; + stakingToken(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - withdraw(amount: BigNumberish, overrides?: CallOverrides): Promise; - }; + withdraw(amount: BigNumberish, overrides?: CallOverrides): Promise + } - filters: { - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + filters: { + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - "PauseChanged(bool)"(isPaused?: null): PauseChangedEventFilter; - PauseChanged(isPaused?: null): PauseChangedEventFilter; + 'PauseChanged(bool)'(isPaused?: null): PauseChangedEventFilter + PauseChanged(isPaused?: null): PauseChangedEventFilter - "Recovered(address,uint256)"( - token?: null, - amount?: null - ): RecoveredEventFilter; - Recovered(token?: null, amount?: null): RecoveredEventFilter; + 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter + Recovered(token?: null, amount?: null): RecoveredEventFilter - "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; - RewardAdded(reward?: null): RewardAddedEventFilter; + 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter + RewardAdded(reward?: null): RewardAddedEventFilter - "RewardPaid(address,uint256)"( - user?: string | null, - reward?: null - ): RewardPaidEventFilter; - RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; + 'RewardPaid(address,uint256)'(user?: string | null, reward?: null): RewardPaidEventFilter + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter - "RewardsDurationUpdated(uint256)"( - newDuration?: null - ): RewardsDurationUpdatedEventFilter; - RewardsDurationUpdated( - newDuration?: null - ): RewardsDurationUpdatedEventFilter; + 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter + RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter - "Staked(address,uint256)"( - user?: string | null, - amount?: null - ): StakedEventFilter; - Staked(user?: string | null, amount?: null): StakedEventFilter; + 'Staked(address,uint256)'(user?: string | null, amount?: null): StakedEventFilter + Staked(user?: string | null, amount?: null): StakedEventFilter - "Withdrawn(address,uint256)"( - user?: string | null, - amount?: null - ): WithdrawnEventFilter; - Withdrawn(user?: string | null, amount?: null): WithdrawnEventFilter; - }; + 'Withdrawn(address,uint256)'(user?: string | null, amount?: null): WithdrawnEventFilter + Withdrawn(user?: string | null, amount?: null): WithdrawnEventFilter + } - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned(account: string, overrides?: CallOverrides): Promise; + earned(account: string, overrides?: CallOverrides): Promise - exit(overrides?: Overrides & { from?: string }): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward(overrides?: Overrides & { from?: string }): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration(overrides?: CallOverrides): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastPauseTime(overrides?: CallOverrides): Promise; + lastPauseTime(overrides?: CallOverrides): Promise - lastTimeRewardApplicable(overrides?: CallOverrides): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored(overrides?: CallOverrides): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards(arg0: string, overrides?: CallOverrides): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDistribution(overrides?: CallOverrides): Promise; + rewardsDistribution(overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - rewardsToken(overrides?: CallOverrides): Promise; + rewardsToken(overrides?: CallOverrides): Promise - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setPaused(_paused: boolean, overrides?: Overrides & { from?: string }): Promise - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - stakingToken(overrides?: CallOverrides): Promise; + stakingToken(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - }; + withdraw(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + } - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - earned( - account: string, - overrides?: CallOverrides - ): Promise; + earned(account: string, overrides?: CallOverrides): Promise - exit( - overrides?: Overrides & { from?: string } - ): Promise; + exit(overrides?: Overrides & { from?: string }): Promise - getReward( - overrides?: Overrides & { from?: string } - ): Promise; + getReward(overrides?: Overrides & { from?: string }): Promise - getRewardForDuration( - overrides?: CallOverrides - ): Promise; + getRewardForDuration(overrides?: CallOverrides): Promise - lastPauseTime(overrides?: CallOverrides): Promise; + lastPauseTime(overrides?: CallOverrides): Promise - lastTimeRewardApplicable( - overrides?: CallOverrides - ): Promise; + lastTimeRewardApplicable(overrides?: CallOverrides): Promise - lastUpdateTime(overrides?: CallOverrides): Promise; + lastUpdateTime(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - paused(overrides?: CallOverrides): Promise; + paused(overrides?: CallOverrides): Promise - periodFinish(overrides?: CallOverrides): Promise; + periodFinish(overrides?: CallOverrides): Promise - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rewardPerToken(overrides?: CallOverrides): Promise; + rewardPerToken(overrides?: CallOverrides): Promise - rewardPerTokenStored( - overrides?: CallOverrides - ): Promise; + rewardPerTokenStored(overrides?: CallOverrides): Promise - rewardRate(overrides?: CallOverrides): Promise; + rewardRate(overrides?: CallOverrides): Promise - rewards( - arg0: string, - overrides?: CallOverrides - ): Promise; + rewards(arg0: string, overrides?: CallOverrides): Promise - rewardsDistribution( - overrides?: CallOverrides - ): Promise; + rewardsDistribution(overrides?: CallOverrides): Promise - rewardsDuration(overrides?: CallOverrides): Promise; + rewardsDuration(overrides?: CallOverrides): Promise - rewardsToken(overrides?: CallOverrides): Promise; + rewardsToken(overrides?: CallOverrides): Promise - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise; + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - stakingToken(overrides?: CallOverrides): Promise; + stakingToken(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - userRewardPerTokenPaid( - arg0: string, - overrides?: CallOverrides - ): Promise; + userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - }; + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/SupplySchedule.ts b/packages/sdk/src/contracts/types/SupplySchedule.ts index 233849f6f6..008295cd24 100644 --- a/packages/sdk/src/contracts/types/SupplySchedule.ts +++ b/packages/sdk/src/contracts/types/SupplySchedule.ts @@ -255,9 +255,8 @@ export type TradingRewardsDiversionUpdatedEvent = TypedEvent< TradingRewardsDiversionUpdatedEventObject > -export type TradingRewardsDiversionUpdatedEventFilter = TypedEventFilter< - TradingRewardsDiversionUpdatedEvent -> +export type TradingRewardsDiversionUpdatedEventFilter = + TypedEventFilter export interface TradingRewardsUpdatedEventObject { newAddress: string diff --git a/packages/sdk/src/contracts/types/Synth.ts b/packages/sdk/src/contracts/types/Synth.ts index 6ee560645b..e39757c100 100644 --- a/packages/sdk/src/contracts/types/Synth.ts +++ b/packages/sdk/src/contracts/types/Synth.ts @@ -2,1103 +2,843 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SynthInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "DECIMALS()": FunctionFragment; - "FEE_ADDRESS()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "allowance(address,address)": FunctionFragment; - "approve(address,uint256)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "burn(address,uint256)": FunctionFragment; - "currencyKey()": FunctionFragment; - "decimals()": FunctionFragment; - "isResolverCached()": FunctionFragment; - "issue(address,uint256)": FunctionFragment; - "messageSender()": FunctionFragment; - "name()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "proxy()": FunctionFragment; - "rebuildCache()": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "setMessageSender(address)": FunctionFragment; - "setProxy(address)": FunctionFragment; - "setTokenState(address)": FunctionFragment; - "setTotalSupply(uint256)": FunctionFragment; - "symbol()": FunctionFragment; - "tokenState()": FunctionFragment; - "totalSupply()": FunctionFragment; - "transfer(address,uint256)": FunctionFragment; - "transferAndSettle(address,uint256)": FunctionFragment; - "transferFrom(address,address,uint256)": FunctionFragment; - "transferFromAndSettle(address,address,uint256)": FunctionFragment; - "transferableSynths(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "DECIMALS" - | "FEE_ADDRESS" - | "acceptOwnership" - | "allowance" - | "approve" - | "balanceOf" - | "burn" - | "currencyKey" - | "decimals" - | "isResolverCached" - | "issue" - | "messageSender" - | "name" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "proxy" - | "rebuildCache" - | "resolver" - | "resolverAddressesRequired" - | "setMessageSender" - | "setProxy" - | "setTokenState" - | "setTotalSupply" - | "symbol" - | "tokenState" - | "totalSupply" - | "transfer" - | "transferAndSettle" - | "transferFrom" - | "transferFromAndSettle" - | "transferableSynths" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; - encodeFunctionData( - functionFragment: "FEE_ADDRESS", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "allowance", - values: [string, string] - ): string; - encodeFunctionData( - functionFragment: "approve", - values: [string, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData( - functionFragment: "burn", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "currencyKey", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "issue", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "messageSender", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "proxy", values?: undefined): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "setMessageSender", - values: [string] - ): string; - encodeFunctionData(functionFragment: "setProxy", values: [string]): string; - encodeFunctionData( - functionFragment: "setTokenState", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "setTotalSupply", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData( - functionFragment: "tokenState", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transfer", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferAndSettle", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferFrom", - values: [string, string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferFromAndSettle", - values: [string, string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferableSynths", - values: [string] - ): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "FEE_ADDRESS", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "currencyKey", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "issue", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "messageSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setMessageSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setTokenState", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "setTotalSupply", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "transferAndSettle", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferFrom", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferFromAndSettle", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferableSynths", - data: BytesLike - ): Result; - - events: { - "Approval(address,address,uint256)": EventFragment; - "Burned(address,uint256)": EventFragment; - "CacheUpdated(bytes32,address)": EventFragment; - "Issued(address,uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "ProxyUpdated(address)": EventFragment; - "TokenStateUpdated(address)": EventFragment; - "Transfer(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Burned"): EventFragment; - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Issued"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'DECIMALS()': FunctionFragment + 'FEE_ADDRESS()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'allowance(address,address)': FunctionFragment + 'approve(address,uint256)': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'burn(address,uint256)': FunctionFragment + 'currencyKey()': FunctionFragment + 'decimals()': FunctionFragment + 'isResolverCached()': FunctionFragment + 'issue(address,uint256)': FunctionFragment + 'messageSender()': FunctionFragment + 'name()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'proxy()': FunctionFragment + 'rebuildCache()': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'setMessageSender(address)': FunctionFragment + 'setProxy(address)': FunctionFragment + 'setTokenState(address)': FunctionFragment + 'setTotalSupply(uint256)': FunctionFragment + 'symbol()': FunctionFragment + 'tokenState()': FunctionFragment + 'totalSupply()': FunctionFragment + 'transfer(address,uint256)': FunctionFragment + 'transferAndSettle(address,uint256)': FunctionFragment + 'transferFrom(address,address,uint256)': FunctionFragment + 'transferFromAndSettle(address,address,uint256)': FunctionFragment + 'transferableSynths(address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'DECIMALS' + | 'FEE_ADDRESS' + | 'acceptOwnership' + | 'allowance' + | 'approve' + | 'balanceOf' + | 'burn' + | 'currencyKey' + | 'decimals' + | 'isResolverCached' + | 'issue' + | 'messageSender' + | 'name' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'proxy' + | 'rebuildCache' + | 'resolver' + | 'resolverAddressesRequired' + | 'setMessageSender' + | 'setProxy' + | 'setTokenState' + | 'setTotalSupply' + | 'symbol' + | 'tokenState' + | 'totalSupply' + | 'transfer' + | 'transferAndSettle' + | 'transferFrom' + | 'transferFromAndSettle' + | 'transferableSynths' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string + encodeFunctionData(functionFragment: 'FEE_ADDRESS', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string + encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'burn', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'currencyKey', values?: undefined): string + encodeFunctionData(functionFragment: 'decimals', values?: undefined): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'issue', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string + encodeFunctionData(functionFragment: 'name', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'proxy', values?: undefined): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'setMessageSender', values: [string]): string + encodeFunctionData(functionFragment: 'setProxy', values: [string]): string + encodeFunctionData(functionFragment: 'setTokenState', values: [string]): string + encodeFunctionData(functionFragment: 'setTotalSupply', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'symbol', values?: undefined): string + encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string + encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string + encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'transferAndSettle', values: [string, BigNumberish]): string + encodeFunctionData( + functionFragment: 'transferFrom', + values: [string, string, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'transferFromAndSettle', + values: [string, string, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'transferableSynths', values: [string]): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'FEE_ADDRESS', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burn', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'currencyKey', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issue', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setTotalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferAndSettle', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferFromAndSettle', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferableSynths', data: BytesLike): Result + + events: { + 'Approval(address,address,uint256)': EventFragment + 'Burned(address,uint256)': EventFragment + 'CacheUpdated(bytes32,address)': EventFragment + 'Issued(address,uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'ProxyUpdated(address)': EventFragment + 'TokenStateUpdated(address)': EventFragment + 'Transfer(address,address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Burned'): EventFragment + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Issued'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment } export interface ApprovalEventObject { - owner: string; - spender: string; - value: BigNumber; + owner: string + spender: string + value: BigNumber } -export type ApprovalEvent = TypedEvent< - [string, string, BigNumber], - ApprovalEventObject ->; +export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> -export type ApprovalEventFilter = TypedEventFilter; +export type ApprovalEventFilter = TypedEventFilter export interface BurnedEventObject { - account: string; - value: BigNumber; + account: string + value: BigNumber } -export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject>; +export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject> -export type BurnedEventFilter = TypedEventFilter; +export type BurnedEventFilter = TypedEventFilter export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface IssuedEventObject { - account: string; - value: BigNumber; + account: string + value: BigNumber } -export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject>; +export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject> -export type IssuedEventFilter = TypedEventFilter; +export type IssuedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface ProxyUpdatedEventObject { - proxyAddress: string; + proxyAddress: string } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> -export type ProxyUpdatedEventFilter = TypedEventFilter; +export type ProxyUpdatedEventFilter = TypedEventFilter export interface TokenStateUpdatedEventObject { - newTokenState: string; + newTokenState: string } -export type TokenStateUpdatedEvent = TypedEvent< - [string], - TokenStateUpdatedEventObject ->; +export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> -export type TokenStateUpdatedEventFilter = - TypedEventFilter; +export type TokenStateUpdatedEventFilter = TypedEventFilter export interface TransferEventObject { - from: string; - to: string; - value: BigNumber; + from: string + to: string + value: BigNumber } -export type TransferEvent = TypedEvent< - [string, string, BigNumber], - TransferEventObject ->; +export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> -export type TransferEventFilter = TypedEventFilter; +export type TransferEventFilter = TypedEventFilter export interface Synth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SynthInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + DECIMALS(overrides?: CallOverrides): Promise<[number]> + + FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + currencyKey(overrides?: CallOverrides): Promise<[string]> + + decimals(overrides?: CallOverrides): Promise<[number]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + messageSender(overrides?: CallOverrides): Promise<[string]> + + name(overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + proxy(overrides?: CallOverrides): Promise<[string]> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + symbol(overrides?: CallOverrides): Promise<[string]> + + tokenState(overrides?: CallOverrides): Promise<[string]> + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferableSynths(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + DECIMALS(overrides?: CallOverrides): Promise + + FEE_ADDRESS(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + currencyKey(overrides?: CallOverrides): Promise + + decimals(overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise - interface: SynthInterface; + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + messageSender(overrides?: CallOverrides): Promise - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + name(overrides?: CallOverrides): Promise - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - DECIMALS(overrides?: CallOverrides): Promise<[number]>; + nominatedOwner(overrides?: CallOverrides): Promise - FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]>; + owner(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + proxy(overrides?: CallOverrides): Promise - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + resolver(overrides?: CallOverrides): Promise - currencyKey(overrides?: CallOverrides): Promise<[string]>; + resolverAddressesRequired(overrides?: CallOverrides): Promise - decimals(overrides?: CallOverrides): Promise<[number]>; + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise - messageSender(overrides?: CallOverrides): Promise<[string]>; + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - name(overrides?: CallOverrides): Promise<[string]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + symbol(overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + tokenState(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise<[string]>; + totalSupply(overrides?: CallOverrides): Promise - proxy(overrides?: CallOverrides): Promise<[string]>; + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - resolver(overrides?: CallOverrides): Promise<[string]>; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; + transferableSynths(account: string, overrides?: CallOverrides): Promise - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + DECIMALS(overrides?: CallOverrides): Promise - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + FEE_ADDRESS(overrides?: CallOverrides): Promise - symbol(overrides?: CallOverrides): Promise<[string]>; + acceptOwnership(overrides?: CallOverrides): Promise - tokenState(overrides?: CallOverrides): Promise<[string]>; + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + burn(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + currencyKey(overrides?: CallOverrides): Promise - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + decimals(overrides?: CallOverrides): Promise - transferableSynths( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - }; + isResolverCached(overrides?: CallOverrides): Promise - CONTRACT_NAME(overrides?: CallOverrides): Promise; + issue(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise - DECIMALS(overrides?: CallOverrides): Promise; + messageSender(overrides?: CallOverrides): Promise - FEE_ADDRESS(overrides?: CallOverrides): Promise; + name(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + owner(overrides?: CallOverrides): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + proxy(overrides?: CallOverrides): Promise - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + rebuildCache(overrides?: CallOverrides): Promise - currencyKey(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - decimals(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - isResolverCached(overrides?: CallOverrides): Promise; + setMessageSender(sender: string, overrides?: CallOverrides): Promise - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setProxy(_proxy: string, overrides?: CallOverrides): Promise - messageSender(overrides?: CallOverrides): Promise; + setTokenState(_tokenState: string, overrides?: CallOverrides): Promise - name(overrides?: CallOverrides): Promise; + setTotalSupply(amount: BigNumberish, overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + symbol(overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; + tokenState(overrides?: CallOverrides): Promise - owner(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - proxy(overrides?: CallOverrides): Promise; + transfer(to: string, value: BigNumberish, overrides?: CallOverrides): Promise - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + transferAndSettle(to: string, value: BigNumberish, overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; + transferableSynths(account: string, overrides?: CallOverrides): Promise + } - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; + filters: { + 'Approval(address,address,uint256)'( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter + Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + 'Burned(address,uint256)'(account?: string | null, value?: null): BurnedEventFilter + Burned(account?: string | null, value?: null): BurnedEventFilter - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - symbol(overrides?: CallOverrides): Promise; + 'Issued(address,uint256)'(account?: string | null, value?: null): IssuedEventFilter + Issued(account?: string | null, value?: null): IssuedEventFilter - tokenState(overrides?: CallOverrides): Promise; + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - totalSupply(overrides?: CallOverrides): Promise; + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + 'Transfer(address,address,uint256)'( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter + Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter + } - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise - transferableSynths( - account: string, - overrides?: CallOverrides - ): Promise; + DECIMALS(overrides?: CallOverrides): Promise - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; + FEE_ADDRESS(overrides?: CallOverrides): Promise - DECIMALS(overrides?: CallOverrides): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - FEE_ADDRESS(overrides?: CallOverrides): Promise; + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - acceptOwnership(overrides?: CallOverrides): Promise; + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - approve( - spender: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - balanceOf(account: string, overrides?: CallOverrides): Promise; + currencyKey(overrides?: CallOverrides): Promise - burn( - account: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; + decimals(overrides?: CallOverrides): Promise - currencyKey(overrides?: CallOverrides): Promise; + isResolverCached(overrides?: CallOverrides): Promise - decimals(overrides?: CallOverrides): Promise; + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - isResolverCached(overrides?: CallOverrides): Promise; + messageSender(overrides?: CallOverrides): Promise - issue( - account: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; + name(overrides?: CallOverrides): Promise - messageSender(overrides?: CallOverrides): Promise; + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - name(overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - proxy(overrides?: CallOverrides): Promise; + proxy(overrides?: CallOverrides): Promise - rebuildCache(overrides?: CallOverrides): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - resolver(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - setMessageSender(sender: string, overrides?: CallOverrides): Promise; + setMessageSender(sender: string, overrides?: Overrides & { from?: string }): Promise - setProxy(_proxy: string, overrides?: CallOverrides): Promise; + setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise - setTokenState( - _tokenState: string, - overrides?: CallOverrides - ): Promise; - - setTotalSupply( - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - symbol(overrides?: CallOverrides): Promise; - - tokenState(overrides?: CallOverrides): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transfer( - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "Approval(address,address,uint256)"( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; - Approval( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; + symbol(overrides?: CallOverrides): Promise - "Burned(address,uint256)"( - account?: string | null, - value?: null - ): BurnedEventFilter; - Burned(account?: string | null, value?: null): BurnedEventFilter; + tokenState(overrides?: CallOverrides): Promise - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + totalSupply(overrides?: CallOverrides): Promise - "Issued(address,uint256)"( - account?: string | null, - value?: null - ): IssuedEventFilter; - Issued(account?: string | null, value?: null): IssuedEventFilter; + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; - - "TokenStateUpdated(address)"( - newTokenState?: null - ): TokenStateUpdatedEventFilter; - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; - - "Transfer(address,address,uint256)"( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - Transfer( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - DECIMALS(overrides?: CallOverrides): Promise; - - FEE_ADDRESS(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - currencyKey(overrides?: CallOverrides): Promise; - - decimals(overrides?: CallOverrides): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - rebuildCache(overrides?: Overrides & { from?: string }): Promise; + transferableSynths(account: string, overrides?: CallOverrides): Promise + } - resolver(overrides?: CallOverrides): Promise; + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + DECIMALS(overrides?: CallOverrides): Promise - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; + FEE_ADDRESS(overrides?: CallOverrides): Promise - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - symbol(overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - tokenState(overrides?: CallOverrides): Promise; + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - totalSupply(overrides?: CallOverrides): Promise; + currencyKey(overrides?: CallOverrides): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + decimals(overrides?: CallOverrides): Promise - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + isResolverCached(overrides?: CallOverrides): Promise - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + messageSender(overrides?: CallOverrides): Promise - transferableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - }; + name(overrides?: CallOverrides): Promise - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - DECIMALS(overrides?: CallOverrides): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - FEE_ADDRESS(overrides?: CallOverrides): Promise; + owner(overrides?: CallOverrides): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + proxy(overrides?: CallOverrides): Promise - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + resolver(overrides?: CallOverrides): Promise - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise - currencyKey(overrides?: CallOverrides): Promise; + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise - decimals(overrides?: CallOverrides): Promise; + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise - isResolverCached(overrides?: CallOverrides): Promise; - - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + symbol(overrides?: CallOverrides): Promise - symbol(overrides?: CallOverrides): Promise; + tokenState(overrides?: CallOverrides): Promise - tokenState(overrides?: CallOverrides): Promise; + totalSupply(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - }; + transferableSynths(account: string, overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/SynthRedeemer.ts b/packages/sdk/src/contracts/types/SynthRedeemer.ts index ab7d1f6e1f..82ea2a3c44 100644 --- a/packages/sdk/src/contracts/types/SynthRedeemer.ts +++ b/packages/sdk/src/contracts/types/SynthRedeemer.ts @@ -2,475 +2,375 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SynthRedeemerInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "balanceOf(address,address)": FunctionFragment; - "deprecate(address,uint256)": FunctionFragment; - "isResolverCached()": FunctionFragment; - "rebuildCache()": FunctionFragment; - "redeem(address)": FunctionFragment; - "redeemAll(address[])": FunctionFragment; - "redeemPartial(address,uint256)": FunctionFragment; - "redemptions(address)": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "totalSupply(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "balanceOf" - | "deprecate" - | "isResolverCached" - | "rebuildCache" - | "redeem" - | "redeemAll" - | "redeemPartial" - | "redemptions" - | "resolver" - | "resolverAddressesRequired" - | "totalSupply" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "balanceOf", - values: [string, string] - ): string; - encodeFunctionData( - functionFragment: "deprecate", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "redeem", values: [string]): string; - encodeFunctionData(functionFragment: "redeemAll", values: [string[]]): string; - encodeFunctionData( - functionFragment: "redeemPartial", - values: [string, BigNumberish] - ): string; - encodeFunctionData(functionFragment: "redemptions", values: [string]): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "totalSupply", values: [string]): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "deprecate", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "redeemAll", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "redeemPartial", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "redemptions", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - - events: { - "CacheUpdated(bytes32,address)": EventFragment; - "SynthDeprecated(address,uint256,uint256,uint256)": EventFragment; - "SynthRedeemed(address,address,uint256,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthDeprecated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthRedeemed"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'balanceOf(address,address)': FunctionFragment + 'deprecate(address,uint256)': FunctionFragment + 'isResolverCached()': FunctionFragment + 'rebuildCache()': FunctionFragment + 'redeem(address)': FunctionFragment + 'redeemAll(address[])': FunctionFragment + 'redeemPartial(address,uint256)': FunctionFragment + 'redemptions(address)': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'totalSupply(address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'balanceOf' + | 'deprecate' + | 'isResolverCached' + | 'rebuildCache' + | 'redeem' + | 'redeemAll' + | 'redeemPartial' + | 'redemptions' + | 'resolver' + | 'resolverAddressesRequired' + | 'totalSupply' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string, string]): string + encodeFunctionData(functionFragment: 'deprecate', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'redeem', values: [string]): string + encodeFunctionData(functionFragment: 'redeemAll', values: [string[]]): string + encodeFunctionData(functionFragment: 'redeemPartial', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'redemptions', values: [string]): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'totalSupply', values: [string]): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'deprecate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'redeemAll', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'redeemPartial', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'redemptions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + + events: { + 'CacheUpdated(bytes32,address)': EventFragment + 'SynthDeprecated(address,uint256,uint256,uint256)': EventFragment + 'SynthRedeemed(address,address,uint256,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthDeprecated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthRedeemed'): EventFragment } export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface SynthDeprecatedEventObject { - synth: string; - rateToRedeem: BigNumber; - totalSynthSupply: BigNumber; - supplyInsUSD: BigNumber; + synth: string + rateToRedeem: BigNumber + totalSynthSupply: BigNumber + supplyInsUSD: BigNumber } export type SynthDeprecatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - SynthDeprecatedEventObject ->; + [string, BigNumber, BigNumber, BigNumber], + SynthDeprecatedEventObject +> -export type SynthDeprecatedEventFilter = TypedEventFilter; +export type SynthDeprecatedEventFilter = TypedEventFilter export interface SynthRedeemedEventObject { - synth: string; - account: string; - amountOfSynth: BigNumber; - amountInsUSD: BigNumber; + synth: string + account: string + amountOfSynth: BigNumber + amountInsUSD: BigNumber } export type SynthRedeemedEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - SynthRedeemedEventObject ->; + [string, string, BigNumber, BigNumber], + SynthRedeemedEventObject +> -export type SynthRedeemedEventFilter = TypedEventFilter; +export type SynthRedeemedEventFilter = TypedEventFilter export interface SynthRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SynthRedeemerInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }>; - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - redemptions(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - - resolver(overrides?: CallOverrides): Promise<[string]>; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }>; - }; - - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise; - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - redemptions(arg0: string, overrides?: CallOverrides): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise; - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise; - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - rebuildCache(overrides?: CallOverrides): Promise; - - redeem(synthProxy: string, overrides?: CallOverrides): Promise; - - redeemAll(synthProxies: string[], overrides?: CallOverrides): Promise; - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: CallOverrides - ): Promise; - - redemptions(arg0: string, overrides?: CallOverrides): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - - "SynthDeprecated(address,uint256,uint256,uint256)"( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter; - SynthDeprecated( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter; - - "SynthRedeemed(address,address,uint256,uint256)"( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter; - SynthRedeemed( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise; - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - rebuildCache(overrides?: Overrides & { from?: string }): Promise; - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - redemptions(arg0: string, overrides?: CallOverrides): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise; - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise; - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - redemptions( - arg0: string, - overrides?: CallOverrides - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SynthRedeemerInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }> + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + redemptions(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }> + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + redemptions(arg0: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + totalSupply(synthProxy: string, overrides?: CallOverrides): Promise + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: CallOverrides): Promise + + redeem(synthProxy: string, overrides?: CallOverrides): Promise + + redeemAll(synthProxies: string[], overrides?: CallOverrides): Promise + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: CallOverrides + ): Promise + + redemptions(arg0: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + totalSupply(synthProxy: string, overrides?: CallOverrides): Promise + } + + filters: { + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + + 'SynthDeprecated(address,uint256,uint256,uint256)'( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter + SynthDeprecated( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter + + 'SynthRedeemed(address,address,uint256,uint256)'( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter + SynthRedeemed( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter + } + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + redeem(synthProxy: string, overrides?: Overrides & { from?: string }): Promise + + redeemAll(synthProxies: string[], overrides?: Overrides & { from?: string }): Promise + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + redemptions(arg0: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + totalSupply(synthProxy: string, overrides?: CallOverrides): Promise + } + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + redemptions(arg0: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + totalSupply(synthProxy: string, overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/SynthSwap.ts b/packages/sdk/src/contracts/types/SynthSwap.ts index 9ee3a22fdb..b7bdac04de 100644 --- a/packages/sdk/src/contracts/types/SynthSwap.ts +++ b/packages/sdk/src/contracts/types/SynthSwap.ts @@ -2,491 +2,402 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SynthSwapInterface extends utils.Interface { - functions: { - "acceptOwnership()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "rescueFunds(address,uint256)": FunctionFragment; - "swapInto(bytes32,bytes)": FunctionFragment; - "swapOutOf(bytes32,uint256,bytes)": FunctionFragment; - "uniswapSwapInto(bytes32,address,uint256,bytes)": FunctionFragment; - "uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "acceptOwnership" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "rescueFunds" - | "swapInto" - | "swapOutOf" - | "uniswapSwapInto" - | "uniswapSwapOutOf" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "rescueFunds", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "swapInto", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "swapOutOf", - values: [BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "uniswapSwapInto", - values: [BytesLike, string, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "uniswapSwapOutOf", - values: [BytesLike, string, BigNumberish, BigNumberish, BytesLike] - ): string; - - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rescueFunds", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "swapInto", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "swapOutOf", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "uniswapSwapInto", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "uniswapSwapOutOf", - data: BytesLike - ): Result; - - events: { - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "Received(address,uint256)": EventFragment; - "SwapInto(address,uint256)": EventFragment; - "SwapOutOf(address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Received"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SwapInto"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SwapOutOf"): EventFragment; + functions: { + 'acceptOwnership()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'rescueFunds(address,uint256)': FunctionFragment + 'swapInto(bytes32,bytes)': FunctionFragment + 'swapOutOf(bytes32,uint256,bytes)': FunctionFragment + 'uniswapSwapInto(bytes32,address,uint256,bytes)': FunctionFragment + 'uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'acceptOwnership' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'rescueFunds' + | 'swapInto' + | 'swapOutOf' + | 'uniswapSwapInto' + | 'uniswapSwapOutOf' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'rescueFunds', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'swapInto', values: [BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: 'swapOutOf', + values: [BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'uniswapSwapInto', + values: [BytesLike, string, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'uniswapSwapOutOf', + values: [BytesLike, string, BigNumberish, BigNumberish, BytesLike] + ): string + + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rescueFunds', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'swapInto', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'swapOutOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'uniswapSwapInto', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'uniswapSwapOutOf', data: BytesLike): Result + + events: { + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'Received(address,uint256)': EventFragment + 'SwapInto(address,uint256)': EventFragment + 'SwapOutOf(address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Received'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SwapInto'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SwapOutOf'): EventFragment } export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface ReceivedEventObject { - from: string; - amountReceived: BigNumber; + from: string + amountReceived: BigNumber } -export type ReceivedEvent = TypedEvent< - [string, BigNumber], - ReceivedEventObject ->; +export type ReceivedEvent = TypedEvent<[string, BigNumber], ReceivedEventObject> -export type ReceivedEventFilter = TypedEventFilter; +export type ReceivedEventFilter = TypedEventFilter export interface SwapIntoEventObject { - from: string; - amountReceived: BigNumber; + from: string + amountReceived: BigNumber } -export type SwapIntoEvent = TypedEvent< - [string, BigNumber], - SwapIntoEventObject ->; +export type SwapIntoEvent = TypedEvent<[string, BigNumber], SwapIntoEventObject> -export type SwapIntoEventFilter = TypedEventFilter; +export type SwapIntoEventFilter = TypedEventFilter export interface SwapOutOfEventObject { - from: string; - amountReceived: BigNumber; + from: string + amountReceived: BigNumber } -export type SwapOutOfEvent = TypedEvent< - [string, BigNumber], - SwapOutOfEventObject ->; +export type SwapOutOfEvent = TypedEvent<[string, BigNumber], SwapOutOfEventObject> -export type SwapOutOfEventFilter = TypedEventFilter; +export type SwapOutOfEventFilter = TypedEventFilter export interface SynthSwap extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SynthSwapInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - }; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: CallOverrides - ): Promise; - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise; - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise; - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - - "Received(address,uint256)"( - from?: null, - amountReceived?: null - ): ReceivedEventFilter; - Received(from?: null, amountReceived?: null): ReceivedEventFilter; - - "SwapInto(address,uint256)"( - from?: string | null, - amountReceived?: null - ): SwapIntoEventFilter; - SwapInto(from?: string | null, amountReceived?: null): SwapIntoEventFilter; - - "SwapOutOf(address,uint256)"( - from?: string | null, - amountReceived?: null - ): SwapOutOfEventFilter; - SwapOutOf( - from?: string | null, - amountReceived?: null - ): SwapOutOfEventFilter; - }; - - estimateGas: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise; - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - }; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SynthSwapInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + } + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rescueFunds(token: string, amount: BigNumberish, overrides?: CallOverrides): Promise + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: CallOverrides + ): Promise + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise + } + + filters: { + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + + 'Received(address,uint256)'(from?: null, amountReceived?: null): ReceivedEventFilter + Received(from?: null, amountReceived?: null): ReceivedEventFilter + + 'SwapInto(address,uint256)'(from?: string | null, amountReceived?: null): SwapIntoEventFilter + SwapInto(from?: string | null, amountReceived?: null): SwapIntoEventFilter + + 'SwapOutOf(address,uint256)'(from?: string | null, amountReceived?: null): SwapOutOfEventFilter + SwapOutOf(from?: string | null, amountReceived?: null): SwapOutOfEventFilter + } + + estimateGas: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + } + + populateTransaction: { + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/SynthUtil.ts b/packages/sdk/src/contracts/types/SynthUtil.ts index d6d203a2d6..87ebd8b09a 100644 --- a/packages/sdk/src/contracts/types/SynthUtil.ts +++ b/packages/sdk/src/contracts/types/SynthUtil.ts @@ -2,214 +2,161 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { FunctionFragment, Result } from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SynthUtilInterface extends utils.Interface { - functions: { - "addressResolverProxy()": FunctionFragment; - "synthsBalances(address)": FunctionFragment; - "synthsRates()": FunctionFragment; - "synthsTotalSupplies()": FunctionFragment; - "totalSynthsInKey(address,bytes32)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "addressResolverProxy" - | "synthsBalances" - | "synthsRates" - | "synthsTotalSupplies" - | "totalSynthsInKey" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "addressResolverProxy", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "synthsBalances", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "synthsRates", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "synthsTotalSupplies", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalSynthsInKey", - values: [string, BytesLike] - ): string; - - decodeFunctionResult( - functionFragment: "addressResolverProxy", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthsBalances", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthsRates", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthsTotalSupplies", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalSynthsInKey", - data: BytesLike - ): Result; - - events: {}; + functions: { + 'addressResolverProxy()': FunctionFragment + 'synthsBalances(address)': FunctionFragment + 'synthsRates()': FunctionFragment + 'synthsTotalSupplies()': FunctionFragment + 'totalSynthsInKey(address,bytes32)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'addressResolverProxy' + | 'synthsBalances' + | 'synthsRates' + | 'synthsTotalSupplies' + | 'totalSynthsInKey' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'addressResolverProxy', values?: undefined): string + encodeFunctionData(functionFragment: 'synthsBalances', values: [string]): string + encodeFunctionData(functionFragment: 'synthsRates', values?: undefined): string + encodeFunctionData(functionFragment: 'synthsTotalSupplies', values?: undefined): string + encodeFunctionData(functionFragment: 'totalSynthsInKey', values: [string, BytesLike]): string + + decodeFunctionResult(functionFragment: 'addressResolverProxy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthsBalances', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthsRates', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthsTotalSupplies', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalSynthsInKey', data: BytesLike): Result + + events: {} } export interface SynthUtil extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SynthUtilInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - addressResolverProxy(overrides?: CallOverrides): Promise<[string]>; - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; - - synthsTotalSupplies( - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber] & { total: BigNumber }>; - }; - - addressResolverProxy(overrides?: CallOverrides): Promise; - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; - - synthsTotalSupplies( - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - callStatic: { - addressResolverProxy(overrides?: CallOverrides): Promise; - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; - - synthsTotalSupplies( - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]>; - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - }; - - filters: {}; - - estimateGas: { - addressResolverProxy(overrides?: CallOverrides): Promise; - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise; - - synthsRates(overrides?: CallOverrides): Promise; - - synthsTotalSupplies(overrides?: CallOverrides): Promise; - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - addressResolverProxy( - overrides?: CallOverrides - ): Promise; - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise; - - synthsRates(overrides?: CallOverrides): Promise; - - synthsTotalSupplies( - overrides?: CallOverrides - ): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SynthUtilInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + addressResolverProxy(overrides?: CallOverrides): Promise<[string]> + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]> + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> + + synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { total: BigNumber }> + } + + addressResolverProxy(overrides?: CallOverrides): Promise + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]> + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> + + synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + callStatic: { + addressResolverProxy(overrides?: CallOverrides): Promise + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]> + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> + + synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + } + + filters: {} + + estimateGas: { + addressResolverProxy(overrides?: CallOverrides): Promise + + synthsBalances(account: string, overrides?: CallOverrides): Promise + + synthsRates(overrides?: CallOverrides): Promise + + synthsTotalSupplies(overrides?: CallOverrides): Promise + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + } + + populateTransaction: { + addressResolverProxy(overrides?: CallOverrides): Promise + + synthsBalances(account: string, overrides?: CallOverrides): Promise + + synthsRates(overrides?: CallOverrides): Promise + + synthsTotalSupplies(overrides?: CallOverrides): Promise - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - }; + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/Synthetix.ts b/packages/sdk/src/contracts/types/Synthetix.ts index 72faf56063..ff495b5ae9 100644 --- a/packages/sdk/src/contracts/types/Synthetix.ts +++ b/packages/sdk/src/contracts/types/Synthetix.ts @@ -2,2774 +2,2199 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SynthetixInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "DECIMALS()": FunctionFragment; - "TOKEN_NAME()": FunctionFragment; - "TOKEN_SYMBOL()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "allowance(address,address)": FunctionFragment; - "anySynthOrSNXRateIsInvalid()": FunctionFragment; - "approve(address,uint256)": FunctionFragment; - "availableCurrencyKeys()": FunctionFragment; - "availableSynthCount()": FunctionFragment; - "availableSynths(uint256)": FunctionFragment; - "balanceOf(address)": FunctionFragment; - "burnSecondary(address,uint256)": FunctionFragment; - "burnSynths(uint256)": FunctionFragment; - "burnSynthsOnBehalf(address,uint256)": FunctionFragment; - "burnSynthsToTarget()": FunctionFragment; - "burnSynthsToTargetOnBehalf(address)": FunctionFragment; - "collateral(address)": FunctionFragment; - "collateralisationRatio(address)": FunctionFragment; - "debtBalanceOf(address,bytes32)": FunctionFragment; - "decimals()": FunctionFragment; - "emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; - "emitExchangeRebate(address,bytes32,uint256)": FunctionFragment; - "emitExchangeReclaim(address,bytes32,uint256)": FunctionFragment; - "emitExchangeTracking(bytes32,bytes32,uint256,uint256)": FunctionFragment; - "emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; - "exchange(bytes32,uint256,bytes32)": FunctionFragment; - "exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)": FunctionFragment; - "exchangeOnBehalf(address,bytes32,uint256,bytes32)": FunctionFragment; - "exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; - "exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; - "exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; - "exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)": FunctionFragment; - "getFirstNonZeroEscrowIndex(address)": FunctionFragment; - "isResolverCached()": FunctionFragment; - "isWaitingPeriod(bytes32)": FunctionFragment; - "issueMaxSynths()": FunctionFragment; - "issueMaxSynthsOnBehalf(address)": FunctionFragment; - "issueSynths(uint256)": FunctionFragment; - "issueSynthsOnBehalf(address,uint256)": FunctionFragment; - "liquidateDelinquentAccount(address)": FunctionFragment; - "liquidateDelinquentAccountEscrowIndex(address,uint256)": FunctionFragment; - "liquidateSelf()": FunctionFragment; - "maxIssuableSynths(address)": FunctionFragment; - "messageSender()": FunctionFragment; - "migrateEscrowBalanceToRewardEscrowV2()": FunctionFragment; - "migrateEscrowContractBalance()": FunctionFragment; - "mint()": FunctionFragment; - "mintSecondary(address,uint256)": FunctionFragment; - "mintSecondaryRewards(uint256)": FunctionFragment; - "name()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "proxy()": FunctionFragment; - "rebuildCache()": FunctionFragment; - "remainingIssuableSynths(address)": FunctionFragment; - "resolver()": FunctionFragment; - "resolverAddressesRequired()": FunctionFragment; - "sUSD()": FunctionFragment; - "setMessageSender(address)": FunctionFragment; - "setProxy(address)": FunctionFragment; - "setTokenState(address)": FunctionFragment; - "settle(bytes32)": FunctionFragment; - "symbol()": FunctionFragment; - "synths(bytes32)": FunctionFragment; - "synthsByAddress(address)": FunctionFragment; - "tokenState()": FunctionFragment; - "totalIssuedSynths(bytes32)": FunctionFragment; - "totalIssuedSynthsExcludeOtherCollateral(bytes32)": FunctionFragment; - "totalSupply()": FunctionFragment; - "transfer(address,uint256)": FunctionFragment; - "transferFrom(address,address,uint256)": FunctionFragment; - "transferableSynthetix(address)": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "DECIMALS" - | "TOKEN_NAME" - | "TOKEN_SYMBOL" - | "acceptOwnership" - | "allowance" - | "anySynthOrSNXRateIsInvalid" - | "approve" - | "availableCurrencyKeys" - | "availableSynthCount" - | "availableSynths" - | "balanceOf" - | "burnSecondary" - | "burnSynths" - | "burnSynthsOnBehalf" - | "burnSynthsToTarget" - | "burnSynthsToTargetOnBehalf" - | "collateral" - | "collateralisationRatio" - | "debtBalanceOf" - | "decimals" - | "emitAtomicSynthExchange" - | "emitExchangeRebate" - | "emitExchangeReclaim" - | "emitExchangeTracking" - | "emitSynthExchange" - | "exchange" - | "exchangeAtomically" - | "exchangeOnBehalf" - | "exchangeOnBehalfWithTracking" - | "exchangeWithTracking" - | "exchangeWithTrackingForInitiator" - | "exchangeWithVirtual" - | "getFirstNonZeroEscrowIndex" - | "isResolverCached" - | "isWaitingPeriod" - | "issueMaxSynths" - | "issueMaxSynthsOnBehalf" - | "issueSynths" - | "issueSynthsOnBehalf" - | "liquidateDelinquentAccount" - | "liquidateDelinquentAccountEscrowIndex" - | "liquidateSelf" - | "maxIssuableSynths" - | "messageSender" - | "migrateEscrowBalanceToRewardEscrowV2" - | "migrateEscrowContractBalance" - | "mint" - | "mintSecondary" - | "mintSecondaryRewards" - | "name" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "proxy" - | "rebuildCache" - | "remainingIssuableSynths" - | "resolver" - | "resolverAddressesRequired" - | "sUSD" - | "setMessageSender" - | "setProxy" - | "setTokenState" - | "settle" - | "symbol" - | "synths" - | "synthsByAddress" - | "tokenState" - | "totalIssuedSynths" - | "totalIssuedSynthsExcludeOtherCollateral" - | "totalSupply" - | "transfer" - | "transferFrom" - | "transferableSynthetix" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; - encodeFunctionData( - functionFragment: "TOKEN_NAME", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "TOKEN_SYMBOL", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "allowance", - values: [string, string] - ): string; - encodeFunctionData( - functionFragment: "anySynthOrSNXRateIsInvalid", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "approve", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "availableCurrencyKeys", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "availableSynthCount", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "availableSynths", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; - encodeFunctionData( - functionFragment: "burnSecondary", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "burnSynths", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "burnSynthsOnBehalf", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "burnSynthsToTarget", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "burnSynthsToTargetOnBehalf", - values: [string] - ): string; - encodeFunctionData(functionFragment: "collateral", values: [string]): string; - encodeFunctionData( - functionFragment: "collateralisationRatio", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "debtBalanceOf", - values: [string, BytesLike] - ): string; - encodeFunctionData(functionFragment: "decimals", values?: undefined): string; - encodeFunctionData( - functionFragment: "emitAtomicSynthExchange", - values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] - ): string; - encodeFunctionData( - functionFragment: "emitExchangeRebate", - values: [string, BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "emitExchangeReclaim", - values: [string, BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "emitExchangeTracking", - values: [BytesLike, BytesLike, BigNumberish, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "emitSynthExchange", - values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] - ): string; - encodeFunctionData( - functionFragment: "exchange", - values: [BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchangeAtomically", - values: [BytesLike, BigNumberish, BytesLike, BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "exchangeOnBehalf", - values: [string, BytesLike, BigNumberish, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchangeOnBehalfWithTracking", - values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchangeWithTracking", - values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchangeWithTrackingForInitiator", - values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "exchangeWithVirtual", - values: [BytesLike, BigNumberish, BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "getFirstNonZeroEscrowIndex", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "isResolverCached", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "isWaitingPeriod", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "issueMaxSynths", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "issueMaxSynthsOnBehalf", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "issueSynths", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "issueSynthsOnBehalf", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "liquidateDelinquentAccount", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "liquidateDelinquentAccountEscrowIndex", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "liquidateSelf", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "maxIssuableSynths", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "messageSender", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "migrateEscrowBalanceToRewardEscrowV2", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "migrateEscrowContractBalance", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "mint", values?: undefined): string; - encodeFunctionData( - functionFragment: "mintSecondary", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "mintSecondaryRewards", - values: [BigNumberish] - ): string; - encodeFunctionData(functionFragment: "name", values?: undefined): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData(functionFragment: "proxy", values?: undefined): string; - encodeFunctionData( - functionFragment: "rebuildCache", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "remainingIssuableSynths", - values: [string] - ): string; - encodeFunctionData(functionFragment: "resolver", values?: undefined): string; - encodeFunctionData( - functionFragment: "resolverAddressesRequired", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "sUSD", values?: undefined): string; - encodeFunctionData( - functionFragment: "setMessageSender", - values: [string] - ): string; - encodeFunctionData(functionFragment: "setProxy", values: [string]): string; - encodeFunctionData( - functionFragment: "setTokenState", - values: [string] - ): string; - encodeFunctionData(functionFragment: "settle", values: [BytesLike]): string; - encodeFunctionData(functionFragment: "symbol", values?: undefined): string; - encodeFunctionData(functionFragment: "synths", values: [BytesLike]): string; - encodeFunctionData( - functionFragment: "synthsByAddress", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "tokenState", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "totalIssuedSynths", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "totalIssuedSynthsExcludeOtherCollateral", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "totalSupply", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "transfer", - values: [string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferFrom", - values: [string, string, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "transferableSynthetix", - values: [string] - ): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "TOKEN_NAME", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "TOKEN_SYMBOL", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "anySynthOrSNXRateIsInvalid", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "availableCurrencyKeys", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "availableSynthCount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "availableSynths", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "burnSecondary", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "burnSynths", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "burnSynthsOnBehalf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "burnSynthsToTarget", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "burnSynthsToTargetOnBehalf", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "collateral", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "collateralisationRatio", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "debtBalanceOf", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "emitAtomicSynthExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "emitExchangeRebate", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "emitExchangeReclaim", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "emitExchangeTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "emitSynthExchange", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "exchangeAtomically", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeOnBehalf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeOnBehalfWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeWithTracking", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeWithTrackingForInitiator", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeWithVirtual", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getFirstNonZeroEscrowIndex", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isResolverCached", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isWaitingPeriod", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "issueMaxSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "issueMaxSynthsOnBehalf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "issueSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "issueSynthsOnBehalf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidateDelinquentAccount", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidateDelinquentAccountEscrowIndex", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "liquidateSelf", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "maxIssuableSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "messageSender", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "migrateEscrowBalanceToRewardEscrowV2", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "migrateEscrowContractBalance", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "mintSecondary", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "mintSecondaryRewards", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rebuildCache", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "remainingIssuableSynths", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "resolverAddressesRequired", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "sUSD", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setMessageSender", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "setTokenState", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "synths", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "synthsByAddress", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "totalIssuedSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalIssuedSynthsExcludeOtherCollateral", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "totalSupply", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "transferFrom", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "transferableSynthetix", - data: BytesLike - ): Result; - - events: { - "AccountLiquidated(address,uint256,uint256,address)": EventFragment; - "Approval(address,address,uint256)": EventFragment; - "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; - "CacheUpdated(bytes32,address)": EventFragment; - "ExchangeRebate(address,bytes32,uint256)": EventFragment; - "ExchangeReclaim(address,bytes32,uint256)": EventFragment; - "ExchangeTracking(bytes32,bytes32,uint256,uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "ProxyUpdated(address)": EventFragment; - "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; - "TokenStateUpdated(address)": EventFragment; - "Transfer(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccountLiquidated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; - getEvent(nameOrSignatureOrTopic: "AtomicSynthExchange"): EventFragment; - getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeRebate"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeReclaim"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeTracking"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthExchange"): EventFragment; - getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'DECIMALS()': FunctionFragment + 'TOKEN_NAME()': FunctionFragment + 'TOKEN_SYMBOL()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'allowance(address,address)': FunctionFragment + 'anySynthOrSNXRateIsInvalid()': FunctionFragment + 'approve(address,uint256)': FunctionFragment + 'availableCurrencyKeys()': FunctionFragment + 'availableSynthCount()': FunctionFragment + 'availableSynths(uint256)': FunctionFragment + 'balanceOf(address)': FunctionFragment + 'burnSecondary(address,uint256)': FunctionFragment + 'burnSynths(uint256)': FunctionFragment + 'burnSynthsOnBehalf(address,uint256)': FunctionFragment + 'burnSynthsToTarget()': FunctionFragment + 'burnSynthsToTargetOnBehalf(address)': FunctionFragment + 'collateral(address)': FunctionFragment + 'collateralisationRatio(address)': FunctionFragment + 'debtBalanceOf(address,bytes32)': FunctionFragment + 'decimals()': FunctionFragment + 'emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment + 'emitExchangeRebate(address,bytes32,uint256)': FunctionFragment + 'emitExchangeReclaim(address,bytes32,uint256)': FunctionFragment + 'emitExchangeTracking(bytes32,bytes32,uint256,uint256)': FunctionFragment + 'emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment + 'exchange(bytes32,uint256,bytes32)': FunctionFragment + 'exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)': FunctionFragment + 'exchangeOnBehalf(address,bytes32,uint256,bytes32)': FunctionFragment + 'exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)': FunctionFragment + 'exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment + 'exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment + 'exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)': FunctionFragment + 'getFirstNonZeroEscrowIndex(address)': FunctionFragment + 'isResolverCached()': FunctionFragment + 'isWaitingPeriod(bytes32)': FunctionFragment + 'issueMaxSynths()': FunctionFragment + 'issueMaxSynthsOnBehalf(address)': FunctionFragment + 'issueSynths(uint256)': FunctionFragment + 'issueSynthsOnBehalf(address,uint256)': FunctionFragment + 'liquidateDelinquentAccount(address)': FunctionFragment + 'liquidateDelinquentAccountEscrowIndex(address,uint256)': FunctionFragment + 'liquidateSelf()': FunctionFragment + 'maxIssuableSynths(address)': FunctionFragment + 'messageSender()': FunctionFragment + 'migrateEscrowBalanceToRewardEscrowV2()': FunctionFragment + 'migrateEscrowContractBalance()': FunctionFragment + 'mint()': FunctionFragment + 'mintSecondary(address,uint256)': FunctionFragment + 'mintSecondaryRewards(uint256)': FunctionFragment + 'name()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'proxy()': FunctionFragment + 'rebuildCache()': FunctionFragment + 'remainingIssuableSynths(address)': FunctionFragment + 'resolver()': FunctionFragment + 'resolverAddressesRequired()': FunctionFragment + 'sUSD()': FunctionFragment + 'setMessageSender(address)': FunctionFragment + 'setProxy(address)': FunctionFragment + 'setTokenState(address)': FunctionFragment + 'settle(bytes32)': FunctionFragment + 'symbol()': FunctionFragment + 'synths(bytes32)': FunctionFragment + 'synthsByAddress(address)': FunctionFragment + 'tokenState()': FunctionFragment + 'totalIssuedSynths(bytes32)': FunctionFragment + 'totalIssuedSynthsExcludeOtherCollateral(bytes32)': FunctionFragment + 'totalSupply()': FunctionFragment + 'transfer(address,uint256)': FunctionFragment + 'transferFrom(address,address,uint256)': FunctionFragment + 'transferableSynthetix(address)': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'DECIMALS' + | 'TOKEN_NAME' + | 'TOKEN_SYMBOL' + | 'acceptOwnership' + | 'allowance' + | 'anySynthOrSNXRateIsInvalid' + | 'approve' + | 'availableCurrencyKeys' + | 'availableSynthCount' + | 'availableSynths' + | 'balanceOf' + | 'burnSecondary' + | 'burnSynths' + | 'burnSynthsOnBehalf' + | 'burnSynthsToTarget' + | 'burnSynthsToTargetOnBehalf' + | 'collateral' + | 'collateralisationRatio' + | 'debtBalanceOf' + | 'decimals' + | 'emitAtomicSynthExchange' + | 'emitExchangeRebate' + | 'emitExchangeReclaim' + | 'emitExchangeTracking' + | 'emitSynthExchange' + | 'exchange' + | 'exchangeAtomically' + | 'exchangeOnBehalf' + | 'exchangeOnBehalfWithTracking' + | 'exchangeWithTracking' + | 'exchangeWithTrackingForInitiator' + | 'exchangeWithVirtual' + | 'getFirstNonZeroEscrowIndex' + | 'isResolverCached' + | 'isWaitingPeriod' + | 'issueMaxSynths' + | 'issueMaxSynthsOnBehalf' + | 'issueSynths' + | 'issueSynthsOnBehalf' + | 'liquidateDelinquentAccount' + | 'liquidateDelinquentAccountEscrowIndex' + | 'liquidateSelf' + | 'maxIssuableSynths' + | 'messageSender' + | 'migrateEscrowBalanceToRewardEscrowV2' + | 'migrateEscrowContractBalance' + | 'mint' + | 'mintSecondary' + | 'mintSecondaryRewards' + | 'name' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'proxy' + | 'rebuildCache' + | 'remainingIssuableSynths' + | 'resolver' + | 'resolverAddressesRequired' + | 'sUSD' + | 'setMessageSender' + | 'setProxy' + | 'setTokenState' + | 'settle' + | 'symbol' + | 'synths' + | 'synthsByAddress' + | 'tokenState' + | 'totalIssuedSynths' + | 'totalIssuedSynthsExcludeOtherCollateral' + | 'totalSupply' + | 'transfer' + | 'transferFrom' + | 'transferableSynthetix' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string + encodeFunctionData(functionFragment: 'TOKEN_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'TOKEN_SYMBOL', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string + encodeFunctionData(functionFragment: 'anySynthOrSNXRateIsInvalid', values?: undefined): string + encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'availableCurrencyKeys', values?: undefined): string + encodeFunctionData(functionFragment: 'availableSynthCount', values?: undefined): string + encodeFunctionData(functionFragment: 'availableSynths', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string + encodeFunctionData(functionFragment: 'burnSecondary', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'burnSynths', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'burnSynthsOnBehalf', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'burnSynthsToTarget', values?: undefined): string + encodeFunctionData(functionFragment: 'burnSynthsToTargetOnBehalf', values: [string]): string + encodeFunctionData(functionFragment: 'collateral', values: [string]): string + encodeFunctionData(functionFragment: 'collateralisationRatio', values: [string]): string + encodeFunctionData(functionFragment: 'debtBalanceOf', values: [string, BytesLike]): string + encodeFunctionData(functionFragment: 'decimals', values?: undefined): string + encodeFunctionData( + functionFragment: 'emitAtomicSynthExchange', + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string + encodeFunctionData( + functionFragment: 'emitExchangeRebate', + values: [string, BytesLike, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'emitExchangeReclaim', + values: [string, BytesLike, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'emitExchangeTracking', + values: [BytesLike, BytesLike, BigNumberish, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'emitSynthExchange', + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string + encodeFunctionData( + functionFragment: 'exchange', + values: [BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeAtomically', + values: [BytesLike, BigNumberish, BytesLike, BytesLike, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'exchangeOnBehalf', + values: [string, BytesLike, BigNumberish, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeOnBehalfWithTracking', + values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeWithTracking', + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeWithTrackingForInitiator', + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string + encodeFunctionData( + functionFragment: 'exchangeWithVirtual', + values: [BytesLike, BigNumberish, BytesLike, BytesLike] + ): string + encodeFunctionData(functionFragment: 'getFirstNonZeroEscrowIndex', values: [string]): string + encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string + encodeFunctionData(functionFragment: 'isWaitingPeriod', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'issueMaxSynths', values?: undefined): string + encodeFunctionData(functionFragment: 'issueMaxSynthsOnBehalf', values: [string]): string + encodeFunctionData(functionFragment: 'issueSynths', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'issueSynthsOnBehalf', + values: [string, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'liquidateDelinquentAccount', values: [string]): string + encodeFunctionData( + functionFragment: 'liquidateDelinquentAccountEscrowIndex', + values: [string, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'liquidateSelf', values?: undefined): string + encodeFunctionData(functionFragment: 'maxIssuableSynths', values: [string]): string + encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string + encodeFunctionData( + functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', + values?: undefined + ): string + encodeFunctionData(functionFragment: 'migrateEscrowContractBalance', values?: undefined): string + encodeFunctionData(functionFragment: 'mint', values?: undefined): string + encodeFunctionData(functionFragment: 'mintSecondary', values: [string, BigNumberish]): string + encodeFunctionData(functionFragment: 'mintSecondaryRewards', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'name', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'proxy', values?: undefined): string + encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string + encodeFunctionData(functionFragment: 'remainingIssuableSynths', values: [string]): string + encodeFunctionData(functionFragment: 'resolver', values?: undefined): string + encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string + encodeFunctionData(functionFragment: 'sUSD', values?: undefined): string + encodeFunctionData(functionFragment: 'setMessageSender', values: [string]): string + encodeFunctionData(functionFragment: 'setProxy', values: [string]): string + encodeFunctionData(functionFragment: 'setTokenState', values: [string]): string + encodeFunctionData(functionFragment: 'settle', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'symbol', values?: undefined): string + encodeFunctionData(functionFragment: 'synths', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'synthsByAddress', values: [string]): string + encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string + encodeFunctionData(functionFragment: 'totalIssuedSynths', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', + values: [BytesLike] + ): string + encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string + encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string + encodeFunctionData( + functionFragment: 'transferFrom', + values: [string, string, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'transferableSynthetix', values: [string]): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'TOKEN_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'TOKEN_SYMBOL', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'anySynthOrSNXRateIsInvalid', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'availableCurrencyKeys', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'availableSynthCount', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'availableSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burnSecondary', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burnSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burnSynthsOnBehalf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burnSynthsToTarget', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'burnSynthsToTargetOnBehalf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'collateral', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'collateralisationRatio', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'debtBalanceOf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'emitAtomicSynthExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'emitExchangeRebate', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'emitExchangeReclaim', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'emitExchangeTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'emitSynthExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeOnBehalf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeOnBehalfWithTracking', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeWithTracking', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'exchangeWithTrackingForInitiator', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'exchangeWithVirtual', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFirstNonZeroEscrowIndex', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isWaitingPeriod', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issueMaxSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issueMaxSynthsOnBehalf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issueSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issueSynthsOnBehalf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'liquidateDelinquentAccount', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'liquidateDelinquentAccountEscrowIndex', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'liquidateSelf', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'maxIssuableSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'migrateEscrowContractBalance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'mintSecondary', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'mintSecondaryRewards', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'remainingIssuableSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'sUSD', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthsByAddress', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'totalIssuedSynths', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'transferableSynthetix', data: BytesLike): Result + + events: { + 'AccountLiquidated(address,uint256,uint256,address)': EventFragment + 'Approval(address,address,uint256)': EventFragment + 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment + 'CacheUpdated(bytes32,address)': EventFragment + 'ExchangeRebate(address,bytes32,uint256)': EventFragment + 'ExchangeReclaim(address,bytes32,uint256)': EventFragment + 'ExchangeTracking(bytes32,bytes32,uint256,uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'ProxyUpdated(address)': EventFragment + 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment + 'TokenStateUpdated(address)': EventFragment + 'Transfer(address,address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'AccountLiquidated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment + getEvent(nameOrSignatureOrTopic: 'AtomicSynthExchange'): EventFragment + getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeRebate'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeReclaim'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeTracking'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthExchange'): EventFragment + getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment } export interface AccountLiquidatedEventObject { - account: string; - snxRedeemed: BigNumber; - amountLiquidated: BigNumber; - liquidator: string; + account: string + snxRedeemed: BigNumber + amountLiquidated: BigNumber + liquidator: string } export type AccountLiquidatedEvent = TypedEvent< - [string, BigNumber, BigNumber, string], - AccountLiquidatedEventObject ->; + [string, BigNumber, BigNumber, string], + AccountLiquidatedEventObject +> -export type AccountLiquidatedEventFilter = - TypedEventFilter; +export type AccountLiquidatedEventFilter = TypedEventFilter export interface ApprovalEventObject { - owner: string; - spender: string; - value: BigNumber; + owner: string + spender: string + value: BigNumber } -export type ApprovalEvent = TypedEvent< - [string, string, BigNumber], - ApprovalEventObject ->; +export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> -export type ApprovalEventFilter = TypedEventFilter; +export type ApprovalEventFilter = TypedEventFilter export interface AtomicSynthExchangeEventObject { - account: string; - fromCurrencyKey: string; - fromAmount: BigNumber; - toCurrencyKey: string; - toAmount: BigNumber; - toAddress: string; + account: string + fromCurrencyKey: string + fromAmount: BigNumber + toCurrencyKey: string + toAmount: BigNumber + toAddress: string } export type AtomicSynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - AtomicSynthExchangeEventObject ->; + [string, string, BigNumber, string, BigNumber, string], + AtomicSynthExchangeEventObject +> -export type AtomicSynthExchangeEventFilter = - TypedEventFilter; +export type AtomicSynthExchangeEventFilter = TypedEventFilter export interface CacheUpdatedEventObject { - name: string; - destination: string; + name: string + destination: string } -export type CacheUpdatedEvent = TypedEvent< - [string, string], - CacheUpdatedEventObject ->; +export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> -export type CacheUpdatedEventFilter = TypedEventFilter; +export type CacheUpdatedEventFilter = TypedEventFilter export interface ExchangeRebateEventObject { - account: string; - currencyKey: string; - amount: BigNumber; + account: string + currencyKey: string + amount: BigNumber } -export type ExchangeRebateEvent = TypedEvent< - [string, string, BigNumber], - ExchangeRebateEventObject ->; +export type ExchangeRebateEvent = TypedEvent<[string, string, BigNumber], ExchangeRebateEventObject> -export type ExchangeRebateEventFilter = TypedEventFilter; +export type ExchangeRebateEventFilter = TypedEventFilter export interface ExchangeReclaimEventObject { - account: string; - currencyKey: string; - amount: BigNumber; + account: string + currencyKey: string + amount: BigNumber } export type ExchangeReclaimEvent = TypedEvent< - [string, string, BigNumber], - ExchangeReclaimEventObject ->; + [string, string, BigNumber], + ExchangeReclaimEventObject +> -export type ExchangeReclaimEventFilter = TypedEventFilter; +export type ExchangeReclaimEventFilter = TypedEventFilter export interface ExchangeTrackingEventObject { - trackingCode: string; - toCurrencyKey: string; - toAmount: BigNumber; - fee: BigNumber; + trackingCode: string + toCurrencyKey: string + toAmount: BigNumber + fee: BigNumber } export type ExchangeTrackingEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - ExchangeTrackingEventObject ->; + [string, string, BigNumber, BigNumber], + ExchangeTrackingEventObject +> -export type ExchangeTrackingEventFilter = - TypedEventFilter; +export type ExchangeTrackingEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface ProxyUpdatedEventObject { - proxyAddress: string; + proxyAddress: string } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> -export type ProxyUpdatedEventFilter = TypedEventFilter; +export type ProxyUpdatedEventFilter = TypedEventFilter export interface SynthExchangeEventObject { - account: string; - fromCurrencyKey: string; - fromAmount: BigNumber; - toCurrencyKey: string; - toAmount: BigNumber; - toAddress: string; + account: string + fromCurrencyKey: string + fromAmount: BigNumber + toCurrencyKey: string + toAmount: BigNumber + toAddress: string } export type SynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - SynthExchangeEventObject ->; + [string, string, BigNumber, string, BigNumber, string], + SynthExchangeEventObject +> -export type SynthExchangeEventFilter = TypedEventFilter; +export type SynthExchangeEventFilter = TypedEventFilter export interface TokenStateUpdatedEventObject { - newTokenState: string; + newTokenState: string } -export type TokenStateUpdatedEvent = TypedEvent< - [string], - TokenStateUpdatedEventObject ->; +export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> -export type TokenStateUpdatedEventFilter = - TypedEventFilter; +export type TokenStateUpdatedEventFilter = TypedEventFilter export interface TransferEventObject { - from: string; - to: string; - value: BigNumber; + from: string + to: string + value: BigNumber } -export type TransferEvent = TypedEvent< - [string, string, BigNumber], - TransferEventObject ->; +export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> -export type TransferEventFilter = TypedEventFilter; +export type TransferEventFilter = TypedEventFilter export interface Synthetix extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SynthetixInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - - DECIMALS(overrides?: CallOverrides): Promise<[number]>; - - TOKEN_NAME(overrides?: CallOverrides): Promise<[string]>; - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]>; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - anySynthOrSNXRateIsInvalid( - overrides?: CallOverrides - ): Promise<[boolean] & { anyRateInvalid: boolean }>; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]>; - - availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]>; - - availableSynths( - index: BigNumberish, - overrides?: CallOverrides - ): Promise<[string]>; - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTarget( - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - collateral( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - decimals(overrides?: CallOverrides): Promise<[number]>; - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber]>; - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - issueMaxSynths( - overrides?: Overrides & { from?: string } - ): Promise; - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateSelf( - overrides?: Overrides & { from?: string } - ): Promise; - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { maxIssuable: BigNumber }>; - - messageSender(overrides?: CallOverrides): Promise<[string]>; - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise; - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - name(overrides?: CallOverrides): Promise<[string]>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - proxy(overrides?: CallOverrides): Promise<[string]>; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber; - alreadyIssued: BigNumber; - totalSystemDebt: BigNumber; - } - >; - - resolver(overrides?: CallOverrides): Promise<[string]>; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }>; - - sUSD(overrides?: CallOverrides): Promise<[string]>; - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; - - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - symbol(overrides?: CallOverrides): Promise<[string]>; - - synths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[string]>; - - synthsByAddress( - synthAddress: string, - overrides?: CallOverrides - ): Promise<[string]>; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SynthetixInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + DECIMALS(overrides?: CallOverrides): Promise<[number]> + + TOKEN_NAME(overrides?: CallOverrides): Promise<[string]> + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> + + anySynthOrSNXRateIsInvalid( + overrides?: CallOverrides + ): Promise<[boolean] & { anyRateInvalid: boolean }> + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]> + + availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]> + + availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise<[string]> + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + collateral(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise<[BigNumber]> + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + decimals(overrides?: CallOverrides): Promise<[number]> + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]> + + isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + issueMaxSynths(overrides?: Overrides & { from?: string }): Promise + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateSelf(overrides?: Overrides & { from?: string }): Promise + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxIssuable: BigNumber }> + + messageSender(overrides?: CallOverrides): Promise<[string]> + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise + + mint(overrides?: Overrides & { from?: string }): Promise + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + name(overrides?: CallOverrides): Promise<[string]> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + proxy(overrides?: CallOverrides): Promise<[string]> + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber + alreadyIssued: BigNumber + totalSystemDebt: BigNumber + } + > + + resolver(overrides?: CallOverrides): Promise<[string]> + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }> + + sUSD(overrides?: CallOverrides): Promise<[string]> + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + symbol(overrides?: CallOverrides): Promise<[string]> + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[string]> + + synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise<[string]> + + tokenState(overrides?: CallOverrides): Promise<[string]> + + totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]> + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { transferable: BigNumber }> + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + DECIMALS(overrides?: CallOverrides): Promise + + TOKEN_NAME(overrides?: CallOverrides): Promise + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + availableCurrencyKeys(overrides?: CallOverrides): Promise + + availableSynthCount(overrides?: CallOverrides): Promise + + availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + collateral(account: string, overrides?: CallOverrides): Promise + + collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + decimals(overrides?: CallOverrides): Promise + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + issueMaxSynths(overrides?: Overrides & { from?: string }): Promise + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateSelf(overrides?: Overrides & { from?: string }): Promise + + maxIssuableSynths(account: string, overrides?: CallOverrides): Promise + + messageSender(overrides?: CallOverrides): Promise + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise + + mint(overrides?: Overrides & { from?: string }): Promise + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + name(overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + proxy(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber + alreadyIssued: BigNumber + totalSystemDebt: BigNumber + } + > + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + sUSD(overrides?: CallOverrides): Promise + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise + + setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + symbol(overrides?: CallOverrides): Promise + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise + + tokenState(overrides?: CallOverrides): Promise + + totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + transferableSynthetix(account: string, overrides?: CallOverrides): Promise + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + DECIMALS(overrides?: CallOverrides): Promise + + TOKEN_NAME(overrides?: CallOverrides): Promise + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise + + approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise + + availableCurrencyKeys(overrides?: CallOverrides): Promise + + availableSynthCount(overrides?: CallOverrides): Promise + + availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + burnSecondary(arg0: string, arg1: BigNumberish, overrides?: CallOverrides): Promise + + burnSynths(amount: BigNumberish, overrides?: CallOverrides): Promise + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise + + burnSynthsToTarget(overrides?: CallOverrides): Promise + + burnSynthsToTargetOnBehalf(burnForAddress: string, overrides?: CallOverrides): Promise + + collateral(account: string, overrides?: CallOverrides): Promise + + collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + decimals(overrides?: CallOverrides): Promise + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: CallOverrides + ): Promise + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: CallOverrides + ): Promise + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> + + getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + issueMaxSynths(overrides?: CallOverrides): Promise + + issueMaxSynthsOnBehalf(issueForAddress: string, overrides?: CallOverrides): Promise + + issueSynths(amount: BigNumberish, overrides?: CallOverrides): Promise + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise + + liquidateDelinquentAccount(account: string, overrides?: CallOverrides): Promise + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: CallOverrides + ): Promise + + liquidateSelf(overrides?: CallOverrides): Promise + + maxIssuableSynths(account: string, overrides?: CallOverrides): Promise + + messageSender(overrides?: CallOverrides): Promise + + migrateEscrowBalanceToRewardEscrowV2(overrides?: CallOverrides): Promise + + migrateEscrowContractBalance(overrides?: CallOverrides): Promise + + mint(overrides?: CallOverrides): Promise + + mintSecondary(arg0: string, arg1: BigNumberish, overrides?: CallOverrides): Promise + + mintSecondaryRewards(arg0: BigNumberish, overrides?: CallOverrides): Promise + + name(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + proxy(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: CallOverrides): Promise + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber + alreadyIssued: BigNumber + totalSystemDebt: BigNumber + } + > + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + sUSD(overrides?: CallOverrides): Promise + + setMessageSender(sender: string, overrides?: CallOverrides): Promise + + setProxy(_proxy: string, overrides?: CallOverrides): Promise + + setTokenState(_tokenState: string, overrides?: CallOverrides): Promise + + settle( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber + refunded: BigNumber + numEntriesSettled: BigNumber + } + > + + symbol(overrides?: CallOverrides): Promise + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise + + tokenState(overrides?: CallOverrides): Promise + + totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + totalSupply(overrides?: CallOverrides): Promise + + transfer(to: string, value: BigNumberish, overrides?: CallOverrides): Promise + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise + + transferableSynthetix(account: string, overrides?: CallOverrides): Promise + } + + filters: { + 'AccountLiquidated(address,uint256,uint256,address)'( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter + AccountLiquidated( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter + + 'Approval(address,address,uint256)'( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter + Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter + + 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter + AtomicSynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter + + 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + + 'ExchangeRebate(address,bytes32,uint256)'( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter + ExchangeRebate( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter + + 'ExchangeReclaim(address,bytes32,uint256)'( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter + ExchangeReclaim( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter + + 'ExchangeTracking(bytes32,bytes32,uint256,uint256)'( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter + ExchangeTracking( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + + 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter + + 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter + SynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter + + 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter + + 'Transfer(address,address,uint256)'( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter + Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter + } + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + DECIMALS(overrides?: CallOverrides): Promise + + TOKEN_NAME(overrides?: CallOverrides): Promise + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + availableCurrencyKeys(overrides?: CallOverrides): Promise + + availableSynthCount(overrides?: CallOverrides): Promise + + availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise + + balanceOf(account: string, overrides?: CallOverrides): Promise + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynths(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + collateral(account: string, overrides?: CallOverrides): Promise + + collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + decimals(overrides?: CallOverrides): Promise + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + issueMaxSynths(overrides?: Overrides & { from?: string }): Promise + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynths(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateSelf(overrides?: Overrides & { from?: string }): Promise + + maxIssuableSynths(account: string, overrides?: CallOverrides): Promise + + messageSender(overrides?: CallOverrides): Promise + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise + + migrateEscrowContractBalance(overrides?: Overrides & { from?: string }): Promise + + mint(overrides?: Overrides & { from?: string }): Promise + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + name(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + proxy(overrides?: CallOverrides): Promise + + rebuildCache(overrides?: Overrides & { from?: string }): Promise + + remainingIssuableSynths(account: string, overrides?: CallOverrides): Promise + + resolver(overrides?: CallOverrides): Promise + + resolverAddressesRequired(overrides?: CallOverrides): Promise + + sUSD(overrides?: CallOverrides): Promise + + setMessageSender(sender: string, overrides?: Overrides & { from?: string }): Promise + + setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise + + settle(currencyKey: BytesLike, overrides?: Overrides & { from?: string }): Promise + + symbol(overrides?: CallOverrides): Promise + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise + + tokenState(overrides?: CallOverrides): Promise + + totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - tokenState(overrides?: CallOverrides): Promise<[string]>; + totalSupply(overrides?: CallOverrides): Promise - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]>; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { transferable: BigNumber }>; - }; - - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - DECIMALS(overrides?: CallOverrides): Promise; - - TOKEN_NAME(overrides?: CallOverrides): Promise; - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - availableCurrencyKeys(overrides?: CallOverrides): Promise; - - availableSynthCount(overrides?: CallOverrides): Promise; - - availableSynths( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTarget( - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - collateral(account: string, overrides?: CallOverrides): Promise; - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise; - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - issueMaxSynths( - overrides?: Overrides & { from?: string } - ): Promise; - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateSelf( - overrides?: Overrides & { from?: string } - ): Promise; - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise; - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise; - - mint(overrides?: Overrides & { from?: string }): Promise; - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; + transferableSynthetix(account: string, overrides?: CallOverrides): Promise + } - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber; - alreadyIssued: BigNumber; - totalSystemDebt: BigNumber; - } - >; + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise - resolver(overrides?: CallOverrides): Promise; + DECIMALS(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + TOKEN_NAME(overrides?: CallOverrides): Promise - sUSD(overrides?: CallOverrides): Promise; + TOKEN_SYMBOL(overrides?: CallOverrides): Promise - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; + acceptOwnership(overrides?: Overrides & { from?: string }): Promise - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - symbol(overrides?: CallOverrides): Promise; + availableCurrencyKeys(overrides?: CallOverrides): Promise - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; + availableSynthCount(overrides?: CallOverrides): Promise - synthsByAddress( - synthAddress: string, - overrides?: CallOverrides - ): Promise; + availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise - tokenState(overrides?: CallOverrides): Promise; + balanceOf(account: string, overrides?: CallOverrides): Promise - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - totalSupply(overrides?: CallOverrides): Promise; + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + collateral(account: string, overrides?: CallOverrides): Promise + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + decimals(overrides?: CallOverrides): Promise + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise + + isResolverCached(overrides?: CallOverrides): Promise + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + issueMaxSynths(overrides?: Overrides & { from?: string }): Promise + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + liquidateSelf(overrides?: Overrides & { from?: string }): Promise + + maxIssuableSynths(account: string, overrides?: CallOverrides): Promise + + messageSender(overrides?: CallOverrides): Promise + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise + + mint(overrides?: Overrides & { from?: string }): Promise + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + name(overrides?: CallOverrides): Promise + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise; + owner(overrides?: CallOverrides): Promise - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - DECIMALS(overrides?: CallOverrides): Promise; + proxy(overrides?: CallOverrides): Promise - TOKEN_NAME(overrides?: CallOverrides): Promise; - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - availableCurrencyKeys(overrides?: CallOverrides): Promise; - - availableSynthCount(overrides?: CallOverrides): Promise; - - availableSynths( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - burnSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - burnSynthsToTarget(overrides?: CallOverrides): Promise; - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: CallOverrides - ): Promise; - - collateral(account: string, overrides?: CallOverrides): Promise; - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise; - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: CallOverrides - ): Promise; - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: CallOverrides - ): Promise; - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: CallOverrides - ): Promise; - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise; - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } - >; - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - issueMaxSynths(overrides?: CallOverrides): Promise; - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: CallOverrides - ): Promise; - - issueSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise; - - liquidateDelinquentAccount( - account: string, - overrides?: CallOverrides - ): Promise; - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: CallOverrides - ): Promise; - - liquidateSelf(overrides?: CallOverrides): Promise; - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: CallOverrides - ): Promise; - - migrateEscrowContractBalance(overrides?: CallOverrides): Promise; - - mint(overrides?: CallOverrides): Promise; - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise; - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: CallOverrides - ): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; - - rebuildCache(overrides?: CallOverrides): Promise; - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber; - alreadyIssued: BigNumber; - totalSystemDebt: BigNumber; - } - >; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired(overrides?: CallOverrides): Promise; - - sUSD(overrides?: CallOverrides): Promise; - - setMessageSender(sender: string, overrides?: CallOverrides): Promise; - - setProxy(_proxy: string, overrides?: CallOverrides): Promise; - - setTokenState( - _tokenState: string, - overrides?: CallOverrides - ): Promise; - - settle( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber; - refunded: BigNumber; - numEntriesSettled: BigNumber; - } - >; - - symbol(overrides?: CallOverrides): Promise; - - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; - - synthsByAddress( - synthAddress: string, - overrides?: CallOverrides - ): Promise; - - tokenState(overrides?: CallOverrides): Promise; - - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - totalSupply(overrides?: CallOverrides): Promise; - - transfer( - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise; - - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccountLiquidated(address,uint256,uint256,address)"( - account?: string | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter; - AccountLiquidated( - account?: string | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter; - - "Approval(address,address,uint256)"( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; - Approval( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter; - - "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter; - AtomicSynthExchange( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter; - - "CacheUpdated(bytes32,address)"( - name?: null, - destination?: null - ): CacheUpdatedEventFilter; - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - - "ExchangeRebate(address,bytes32,uint256)"( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter; - ExchangeRebate( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter; - - "ExchangeReclaim(address,bytes32,uint256)"( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter; - ExchangeReclaim( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter; - - "ExchangeTracking(bytes32,bytes32,uint256,uint256)"( - trackingCode?: BytesLike | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter; - ExchangeTracking( - trackingCode?: BytesLike | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - - "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; - - "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter; - SynthExchange( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter; - - "TokenStateUpdated(address)"( - newTokenState?: null - ): TokenStateUpdatedEventFilter; - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; - - "Transfer(address,address,uint256)"( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - Transfer( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - DECIMALS(overrides?: CallOverrides): Promise; - - TOKEN_NAME(overrides?: CallOverrides): Promise; - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - availableCurrencyKeys(overrides?: CallOverrides): Promise; - - availableSynthCount(overrides?: CallOverrides): Promise; - - availableSynths( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf(account: string, overrides?: CallOverrides): Promise; - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTarget( - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - collateral(account: string, overrides?: CallOverrides): Promise; - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise; - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - issueMaxSynths( - overrides?: Overrides & { from?: string } - ): Promise; - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateSelf( - overrides?: Overrides & { from?: string } - ): Promise; - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise; - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise; - - mint(overrides?: Overrides & { from?: string }): Promise; - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; - - rebuildCache(overrides?: Overrides & { from?: string }): Promise; + rebuildCache(overrides?: Overrides & { from?: string }): Promise - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise - resolver(overrides?: CallOverrides): Promise; + resolver(overrides?: CallOverrides): Promise - resolverAddressesRequired(overrides?: CallOverrides): Promise; + resolverAddressesRequired(overrides?: CallOverrides): Promise - sUSD(overrides?: CallOverrides): Promise; + sUSD(overrides?: CallOverrides): Promise - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise - symbol(overrides?: CallOverrides): Promise; - - synths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthsByAddress( - synthAddress: string, - overrides?: CallOverrides - ): Promise; - - tokenState(overrides?: CallOverrides): Promise; + symbol(overrides?: CallOverrides): Promise - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + tokenState(overrides?: CallOverrides): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise; - }; - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - DECIMALS(overrides?: CallOverrides): Promise; - - TOKEN_NAME(overrides?: CallOverrides): Promise; - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise; - - anySynthOrSNXRateIsInvalid( - overrides?: CallOverrides - ): Promise; - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - availableCurrencyKeys( - overrides?: CallOverrides - ): Promise; - - availableSynthCount( - overrides?: CallOverrides - ): Promise; - - availableSynths( - index: BigNumberish, - overrides?: CallOverrides - ): Promise; - - balanceOf( - account: string, - overrides?: CallOverrides - ): Promise; - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTarget( - overrides?: Overrides & { from?: string } - ): Promise; - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - collateral( - account: string, - overrides?: CallOverrides - ): Promise; - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise; - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - decimals(overrides?: CallOverrides): Promise; - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise; - - isResolverCached(overrides?: CallOverrides): Promise; - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - issueMaxSynths( - overrides?: Overrides & { from?: string } - ): Promise; - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - liquidateSelf( - overrides?: Overrides & { from?: string } - ): Promise; - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - - messageSender(overrides?: CallOverrides): Promise; - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise; - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise; - - mint( - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - name(overrides?: CallOverrides): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - proxy(overrides?: CallOverrides): Promise; - - rebuildCache( - overrides?: Overrides & { from?: string } - ): Promise; - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise; - - resolver(overrides?: CallOverrides): Promise; - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise; - - sUSD(overrides?: CallOverrides): Promise; - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise; - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise; - - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - symbol(overrides?: CallOverrides): Promise; - - synths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthsByAddress( - synthAddress: string, - overrides?: CallOverrides - ): Promise; - - tokenState(overrides?: CallOverrides): Promise; + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + totalSupply(overrides?: CallOverrides): Promise - totalSupply(overrides?: CallOverrides): Promise; + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise; - }; + transferableSynthetix(account: string, overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/SystemSettings.ts b/packages/sdk/src/contracts/types/SystemSettings.ts index e203985891..f3102b93fd 100644 --- a/packages/sdk/src/contracts/types/SystemSettings.ts +++ b/packages/sdk/src/contracts/types/SystemSettings.ts @@ -572,9 +572,8 @@ export type AggregatorWarningFlagsUpdatedEvent = TypedEvent< AggregatorWarningFlagsUpdatedEventObject > -export type AggregatorWarningFlagsUpdatedEventFilter = TypedEventFilter< - AggregatorWarningFlagsUpdatedEvent -> +export type AggregatorWarningFlagsUpdatedEventFilter = + TypedEventFilter export interface AtomicEquivalentForDexPricingUpdatedEventObject { synthKey: string @@ -585,9 +584,8 @@ export type AtomicEquivalentForDexPricingUpdatedEvent = TypedEvent< AtomicEquivalentForDexPricingUpdatedEventObject > -export type AtomicEquivalentForDexPricingUpdatedEventFilter = TypedEventFilter< - AtomicEquivalentForDexPricingUpdatedEvent -> +export type AtomicEquivalentForDexPricingUpdatedEventFilter = + TypedEventFilter export interface AtomicExchangeFeeUpdatedEventObject { synthKey: string @@ -608,9 +606,8 @@ export type AtomicMaxVolumePerBlockUpdatedEvent = TypedEvent< AtomicMaxVolumePerBlockUpdatedEventObject > -export type AtomicMaxVolumePerBlockUpdatedEventFilter = TypedEventFilter< - AtomicMaxVolumePerBlockUpdatedEvent -> +export type AtomicMaxVolumePerBlockUpdatedEventFilter = + TypedEventFilter export interface AtomicTwapWindowUpdatedEventObject { newWindow: BigNumber @@ -631,9 +628,8 @@ export type AtomicVolatilityConsiderationWindowUpdatedEvent = TypedEvent< AtomicVolatilityConsiderationWindowUpdatedEventObject > -export type AtomicVolatilityConsiderationWindowUpdatedEventFilter = TypedEventFilter< - AtomicVolatilityConsiderationWindowUpdatedEvent -> +export type AtomicVolatilityConsiderationWindowUpdatedEventFilter = + TypedEventFilter export interface AtomicVolatilityUpdateThresholdUpdatedEventObject { synthKey: string @@ -644,9 +640,8 @@ export type AtomicVolatilityUpdateThresholdUpdatedEvent = TypedEvent< AtomicVolatilityUpdateThresholdUpdatedEventObject > -export type AtomicVolatilityUpdateThresholdUpdatedEventFilter = TypedEventFilter< - AtomicVolatilityUpdateThresholdUpdatedEvent -> +export type AtomicVolatilityUpdateThresholdUpdatedEventFilter = + TypedEventFilter export interface CacheUpdatedEventObject { name: string @@ -672,9 +667,8 @@ export type CrossChainSynthTransferEnabledUpdatedEvent = TypedEvent< CrossChainSynthTransferEnabledUpdatedEventObject > -export type CrossChainSynthTransferEnabledUpdatedEventFilter = TypedEventFilter< - CrossChainSynthTransferEnabledUpdatedEvent -> +export type CrossChainSynthTransferEnabledUpdatedEventFilter = + TypedEventFilter export interface CrossDomainMessageGasLimitChangedEventObject { gasLimitType: number @@ -685,9 +679,8 @@ export type CrossDomainMessageGasLimitChangedEvent = TypedEvent< CrossDomainMessageGasLimitChangedEventObject > -export type CrossDomainMessageGasLimitChangedEventFilter = TypedEventFilter< - CrossDomainMessageGasLimitChangedEvent -> +export type CrossDomainMessageGasLimitChangedEventFilter = + TypedEventFilter export interface DebtSnapshotStaleTimeUpdatedEventObject { debtSnapshotStaleTime: BigNumber @@ -697,9 +690,8 @@ export type DebtSnapshotStaleTimeUpdatedEvent = TypedEvent< DebtSnapshotStaleTimeUpdatedEventObject > -export type DebtSnapshotStaleTimeUpdatedEventFilter = TypedEventFilter< - DebtSnapshotStaleTimeUpdatedEvent -> +export type DebtSnapshotStaleTimeUpdatedEventFilter = + TypedEventFilter export interface EtherWrapperBurnFeeRateUpdatedEventObject { rate: BigNumber @@ -709,9 +701,8 @@ export type EtherWrapperBurnFeeRateUpdatedEvent = TypedEvent< EtherWrapperBurnFeeRateUpdatedEventObject > -export type EtherWrapperBurnFeeRateUpdatedEventFilter = TypedEventFilter< - EtherWrapperBurnFeeRateUpdatedEvent -> +export type EtherWrapperBurnFeeRateUpdatedEventFilter = + TypedEventFilter export interface EtherWrapperMaxETHUpdatedEventObject { maxETH: BigNumber @@ -731,9 +722,8 @@ export type EtherWrapperMintFeeRateUpdatedEvent = TypedEvent< EtherWrapperMintFeeRateUpdatedEventObject > -export type EtherWrapperMintFeeRateUpdatedEventFilter = TypedEventFilter< - EtherWrapperMintFeeRateUpdatedEvent -> +export type EtherWrapperMintFeeRateUpdatedEventFilter = + TypedEventFilter export interface ExchangeDynamicFeeRoundsUpdatedEventObject { dynamicFeeRounds: BigNumber @@ -743,9 +733,8 @@ export type ExchangeDynamicFeeRoundsUpdatedEvent = TypedEvent< ExchangeDynamicFeeRoundsUpdatedEventObject > -export type ExchangeDynamicFeeRoundsUpdatedEventFilter = TypedEventFilter< - ExchangeDynamicFeeRoundsUpdatedEvent -> +export type ExchangeDynamicFeeRoundsUpdatedEventFilter = + TypedEventFilter export interface ExchangeDynamicFeeThresholdUpdatedEventObject { dynamicFeeThreshold: BigNumber @@ -755,9 +744,8 @@ export type ExchangeDynamicFeeThresholdUpdatedEvent = TypedEvent< ExchangeDynamicFeeThresholdUpdatedEventObject > -export type ExchangeDynamicFeeThresholdUpdatedEventFilter = TypedEventFilter< - ExchangeDynamicFeeThresholdUpdatedEvent -> +export type ExchangeDynamicFeeThresholdUpdatedEventFilter = + TypedEventFilter export interface ExchangeDynamicFeeWeightDecayUpdatedEventObject { dynamicFeeWeightDecay: BigNumber @@ -767,9 +755,8 @@ export type ExchangeDynamicFeeWeightDecayUpdatedEvent = TypedEvent< ExchangeDynamicFeeWeightDecayUpdatedEventObject > -export type ExchangeDynamicFeeWeightDecayUpdatedEventFilter = TypedEventFilter< - ExchangeDynamicFeeWeightDecayUpdatedEvent -> +export type ExchangeDynamicFeeWeightDecayUpdatedEventFilter = + TypedEventFilter export interface ExchangeFeeUpdatedEventObject { synthKey: string @@ -787,9 +774,8 @@ export type ExchangeMaxDynamicFeeUpdatedEvent = TypedEvent< ExchangeMaxDynamicFeeUpdatedEventObject > -export type ExchangeMaxDynamicFeeUpdatedEventFilter = TypedEventFilter< - ExchangeMaxDynamicFeeUpdatedEvent -> +export type ExchangeMaxDynamicFeeUpdatedEventFilter = + TypedEventFilter export interface FeePeriodDurationUpdatedEventObject { newFeePeriodDuration: BigNumber @@ -850,9 +836,8 @@ export type LiquidationEscrowDurationUpdatedEvent = TypedEvent< LiquidationEscrowDurationUpdatedEventObject > -export type LiquidationEscrowDurationUpdatedEventFilter = TypedEventFilter< - LiquidationEscrowDurationUpdatedEvent -> +export type LiquidationEscrowDurationUpdatedEventFilter = + TypedEventFilter export interface LiquidationPenaltyUpdatedEventObject { newPenalty: BigNumber @@ -907,9 +892,8 @@ export type PriceDeviationThresholdUpdatedEvent = TypedEvent< PriceDeviationThresholdUpdatedEventObject > -export type PriceDeviationThresholdUpdatedEventFilter = TypedEventFilter< - PriceDeviationThresholdUpdatedEvent -> +export type PriceDeviationThresholdUpdatedEventFilter = + TypedEventFilter export interface PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject { synthKey: string @@ -920,9 +904,8 @@ export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEvent = TypedEvent< PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject > -export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter = TypedEventFilter< - PureChainlinkPriceForAtomicSwapsEnabledUpdatedEvent -> +export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter = + TypedEventFilter export interface RateStalePeriodUpdatedEventObject { rateStalePeriod: BigNumber @@ -939,9 +922,8 @@ export type SelfLiquidationPenaltyUpdatedEvent = TypedEvent< SelfLiquidationPenaltyUpdatedEventObject > -export type SelfLiquidationPenaltyUpdatedEventFilter = TypedEventFilter< - SelfLiquidationPenaltyUpdatedEvent -> +export type SelfLiquidationPenaltyUpdatedEventFilter = + TypedEventFilter export interface SnxLiquidationPenaltyUpdatedEventObject { newPenalty: BigNumber @@ -951,9 +933,8 @@ export type SnxLiquidationPenaltyUpdatedEvent = TypedEvent< SnxLiquidationPenaltyUpdatedEventObject > -export type SnxLiquidationPenaltyUpdatedEventFilter = TypedEventFilter< - SnxLiquidationPenaltyUpdatedEvent -> +export type SnxLiquidationPenaltyUpdatedEventFilter = + TypedEventFilter export interface TargetThresholdUpdatedEventObject { newTargetThreshold: BigNumber @@ -999,9 +980,8 @@ export type WrapperMaxTokenAmountUpdatedEvent = TypedEvent< WrapperMaxTokenAmountUpdatedEventObject > -export type WrapperMaxTokenAmountUpdatedEventFilter = TypedEventFilter< - WrapperMaxTokenAmountUpdatedEvent -> +export type WrapperMaxTokenAmountUpdatedEventFilter = + TypedEventFilter export interface WrapperMintFeeRateUpdatedEventObject { wrapper: string diff --git a/packages/sdk/src/contracts/types/SystemStatus.ts b/packages/sdk/src/contracts/types/SystemStatus.ts index 6c0eb6b3a9..f50fb4c2d4 100644 --- a/packages/sdk/src/contracts/types/SystemStatus.ts +++ b/packages/sdk/src/contracts/types/SystemStatus.ts @@ -2,2232 +2,1651 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface SystemStatusInterface extends utils.Interface { - functions: { - "CONTRACT_NAME()": FunctionFragment; - "SECTION_EXCHANGE()": FunctionFragment; - "SECTION_FUTURES()": FunctionFragment; - "SECTION_ISSUANCE()": FunctionFragment; - "SECTION_SYNTH()": FunctionFragment; - "SECTION_SYNTH_EXCHANGE()": FunctionFragment; - "SECTION_SYSTEM()": FunctionFragment; - "SUSPENSION_REASON_UPGRADE()": FunctionFragment; - "acceptOwnership()": FunctionFragment; - "accessControl(bytes32,address)": FunctionFragment; - "exchangeSuspension()": FunctionFragment; - "futuresMarketSuspension(bytes32)": FunctionFragment; - "futuresSuspension()": FunctionFragment; - "getFuturesMarketSuspensions(bytes32[])": FunctionFragment; - "getSynthExchangeSuspensions(bytes32[])": FunctionFragment; - "getSynthSuspensions(bytes32[])": FunctionFragment; - "isSystemUpgrading()": FunctionFragment; - "issuanceSuspension()": FunctionFragment; - "nominateNewOwner(address)": FunctionFragment; - "nominatedOwner()": FunctionFragment; - "owner()": FunctionFragment; - "requireExchangeActive()": FunctionFragment; - "requireExchangeBetweenSynthsAllowed(bytes32,bytes32)": FunctionFragment; - "requireFuturesActive()": FunctionFragment; - "requireFuturesMarketActive(bytes32)": FunctionFragment; - "requireIssuanceActive()": FunctionFragment; - "requireSynthActive(bytes32)": FunctionFragment; - "requireSynthExchangeActive(bytes32)": FunctionFragment; - "requireSynthsActive(bytes32,bytes32)": FunctionFragment; - "requireSystemActive()": FunctionFragment; - "resumeExchange()": FunctionFragment; - "resumeFutures()": FunctionFragment; - "resumeFuturesMarket(bytes32)": FunctionFragment; - "resumeFuturesMarkets(bytes32[])": FunctionFragment; - "resumeIssuance()": FunctionFragment; - "resumeSynth(bytes32)": FunctionFragment; - "resumeSynthExchange(bytes32)": FunctionFragment; - "resumeSynths(bytes32[])": FunctionFragment; - "resumeSynthsExchange(bytes32[])": FunctionFragment; - "resumeSystem()": FunctionFragment; - "suspendExchange(uint256)": FunctionFragment; - "suspendFutures(uint256)": FunctionFragment; - "suspendFuturesMarket(bytes32,uint256)": FunctionFragment; - "suspendFuturesMarkets(bytes32[],uint256)": FunctionFragment; - "suspendIssuance(uint256)": FunctionFragment; - "suspendSynth(bytes32,uint256)": FunctionFragment; - "suspendSynthExchange(bytes32,uint256)": FunctionFragment; - "suspendSynths(bytes32[],uint256)": FunctionFragment; - "suspendSynthsExchange(bytes32[],uint256)": FunctionFragment; - "suspendSystem(uint256)": FunctionFragment; - "synthExchangeSuspension(bytes32)": FunctionFragment; - "synthSuspended(bytes32)": FunctionFragment; - "synthSuspension(bytes32)": FunctionFragment; - "systemSuspended()": FunctionFragment; - "systemSuspension()": FunctionFragment; - "updateAccessControl(bytes32,address,bool,bool)": FunctionFragment; - "updateAccessControls(bytes32[],address[],bool[],bool[])": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: - | "CONTRACT_NAME" - | "SECTION_EXCHANGE" - | "SECTION_FUTURES" - | "SECTION_ISSUANCE" - | "SECTION_SYNTH" - | "SECTION_SYNTH_EXCHANGE" - | "SECTION_SYSTEM" - | "SUSPENSION_REASON_UPGRADE" - | "acceptOwnership" - | "accessControl" - | "exchangeSuspension" - | "futuresMarketSuspension" - | "futuresSuspension" - | "getFuturesMarketSuspensions" - | "getSynthExchangeSuspensions" - | "getSynthSuspensions" - | "isSystemUpgrading" - | "issuanceSuspension" - | "nominateNewOwner" - | "nominatedOwner" - | "owner" - | "requireExchangeActive" - | "requireExchangeBetweenSynthsAllowed" - | "requireFuturesActive" - | "requireFuturesMarketActive" - | "requireIssuanceActive" - | "requireSynthActive" - | "requireSynthExchangeActive" - | "requireSynthsActive" - | "requireSystemActive" - | "resumeExchange" - | "resumeFutures" - | "resumeFuturesMarket" - | "resumeFuturesMarkets" - | "resumeIssuance" - | "resumeSynth" - | "resumeSynthExchange" - | "resumeSynths" - | "resumeSynthsExchange" - | "resumeSystem" - | "suspendExchange" - | "suspendFutures" - | "suspendFuturesMarket" - | "suspendFuturesMarkets" - | "suspendIssuance" - | "suspendSynth" - | "suspendSynthExchange" - | "suspendSynths" - | "suspendSynthsExchange" - | "suspendSystem" - | "synthExchangeSuspension" - | "synthSuspended" - | "synthSuspension" - | "systemSuspended" - | "systemSuspension" - | "updateAccessControl" - | "updateAccessControls" - ): FunctionFragment; - - encodeFunctionData( - functionFragment: "CONTRACT_NAME", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_EXCHANGE", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_FUTURES", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_ISSUANCE", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_SYNTH", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_SYNTH_EXCHANGE", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SECTION_SYSTEM", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "SUSPENSION_REASON_UPGRADE", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "acceptOwnership", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "accessControl", - values: [BytesLike, string] - ): string; - encodeFunctionData( - functionFragment: "exchangeSuspension", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "futuresMarketSuspension", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "futuresSuspension", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "getFuturesMarketSuspensions", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "getSynthExchangeSuspensions", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "getSynthSuspensions", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "isSystemUpgrading", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "issuanceSuspension", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "nominateNewOwner", - values: [string] - ): string; - encodeFunctionData( - functionFragment: "nominatedOwner", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "owner", values?: undefined): string; - encodeFunctionData( - functionFragment: "requireExchangeActive", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "requireExchangeBetweenSynthsAllowed", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "requireFuturesActive", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "requireFuturesMarketActive", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "requireIssuanceActive", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "requireSynthActive", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "requireSynthExchangeActive", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "requireSynthsActive", - values: [BytesLike, BytesLike] - ): string; - encodeFunctionData( - functionFragment: "requireSystemActive", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "resumeExchange", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "resumeFutures", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "resumeFuturesMarket", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "resumeFuturesMarkets", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "resumeIssuance", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "resumeSynth", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "resumeSynthExchange", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "resumeSynths", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "resumeSynthsExchange", - values: [BytesLike[]] - ): string; - encodeFunctionData( - functionFragment: "resumeSystem", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "suspendExchange", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendFutures", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendFuturesMarket", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendFuturesMarkets", - values: [BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendIssuance", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendSynth", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendSynthExchange", - values: [BytesLike, BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendSynths", - values: [BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendSynthsExchange", - values: [BytesLike[], BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "suspendSystem", - values: [BigNumberish] - ): string; - encodeFunctionData( - functionFragment: "synthExchangeSuspension", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "synthSuspended", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "synthSuspension", - values: [BytesLike] - ): string; - encodeFunctionData( - functionFragment: "systemSuspended", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "systemSuspension", - values?: undefined - ): string; - encodeFunctionData( - functionFragment: "updateAccessControl", - values: [BytesLike, string, boolean, boolean] - ): string; - encodeFunctionData( - functionFragment: "updateAccessControls", - values: [BytesLike[], string[], boolean[], boolean[]] - ): string; - - decodeFunctionResult( - functionFragment: "CONTRACT_NAME", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_EXCHANGE", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_FUTURES", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_ISSUANCE", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_SYNTH", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_SYNTH_EXCHANGE", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SECTION_SYSTEM", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "SUSPENSION_REASON_UPGRADE", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "acceptOwnership", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "accessControl", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "exchangeSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "futuresMarketSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "futuresSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getFuturesMarketSuspensions", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getSynthExchangeSuspensions", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "getSynthSuspensions", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "isSystemUpgrading", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "issuanceSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominateNewOwner", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "nominatedOwner", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "requireExchangeActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireExchangeBetweenSynthsAllowed", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireFuturesActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireFuturesMarketActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireIssuanceActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireSynthActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireSynthExchangeActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireSynthsActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "requireSystemActive", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeFutures", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeFuturesMarket", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeFuturesMarkets", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeIssuance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeSynth", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeSynthExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeSynthsExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "resumeSystem", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendFutures", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendFuturesMarket", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendFuturesMarkets", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendIssuance", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendSynth", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendSynthExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendSynths", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendSynthsExchange", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "suspendSystem", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthExchangeSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthSuspended", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "synthSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "systemSuspended", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "systemSuspension", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "updateAccessControl", - data: BytesLike - ): Result; - decodeFunctionResult( - functionFragment: "updateAccessControls", - data: BytesLike - ): Result; - - events: { - "AccessControlUpdated(bytes32,address,bool,bool)": EventFragment; - "ExchangeResumed(uint256)": EventFragment; - "ExchangeSuspended(uint256)": EventFragment; - "FuturesMarketResumed(bytes32,uint256)": EventFragment; - "FuturesMarketSuspended(bytes32,uint256)": EventFragment; - "FuturesResumed(uint256)": EventFragment; - "FuturesSuspended(uint256)": EventFragment; - "IssuanceResumed(uint256)": EventFragment; - "IssuanceSuspended(uint256)": EventFragment; - "OwnerChanged(address,address)": EventFragment; - "OwnerNominated(address)": EventFragment; - "SynthExchangeResumed(bytes32,uint256)": EventFragment; - "SynthExchangeSuspended(bytes32,uint256)": EventFragment; - "SynthResumed(bytes32,uint256)": EventFragment; - "SynthSuspended(bytes32,uint256)": EventFragment; - "SystemResumed(uint256)": EventFragment; - "SystemSuspended(uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "AccessControlUpdated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "ExchangeSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FuturesMarketResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FuturesMarketSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FuturesResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "FuturesSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "IssuanceResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "IssuanceSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; - getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthExchangeResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthExchangeSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SynthSuspended"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SystemResumed"): EventFragment; - getEvent(nameOrSignatureOrTopic: "SystemSuspended"): EventFragment; + functions: { + 'CONTRACT_NAME()': FunctionFragment + 'SECTION_EXCHANGE()': FunctionFragment + 'SECTION_FUTURES()': FunctionFragment + 'SECTION_ISSUANCE()': FunctionFragment + 'SECTION_SYNTH()': FunctionFragment + 'SECTION_SYNTH_EXCHANGE()': FunctionFragment + 'SECTION_SYSTEM()': FunctionFragment + 'SUSPENSION_REASON_UPGRADE()': FunctionFragment + 'acceptOwnership()': FunctionFragment + 'accessControl(bytes32,address)': FunctionFragment + 'exchangeSuspension()': FunctionFragment + 'futuresMarketSuspension(bytes32)': FunctionFragment + 'futuresSuspension()': FunctionFragment + 'getFuturesMarketSuspensions(bytes32[])': FunctionFragment + 'getSynthExchangeSuspensions(bytes32[])': FunctionFragment + 'getSynthSuspensions(bytes32[])': FunctionFragment + 'isSystemUpgrading()': FunctionFragment + 'issuanceSuspension()': FunctionFragment + 'nominateNewOwner(address)': FunctionFragment + 'nominatedOwner()': FunctionFragment + 'owner()': FunctionFragment + 'requireExchangeActive()': FunctionFragment + 'requireExchangeBetweenSynthsAllowed(bytes32,bytes32)': FunctionFragment + 'requireFuturesActive()': FunctionFragment + 'requireFuturesMarketActive(bytes32)': FunctionFragment + 'requireIssuanceActive()': FunctionFragment + 'requireSynthActive(bytes32)': FunctionFragment + 'requireSynthExchangeActive(bytes32)': FunctionFragment + 'requireSynthsActive(bytes32,bytes32)': FunctionFragment + 'requireSystemActive()': FunctionFragment + 'resumeExchange()': FunctionFragment + 'resumeFutures()': FunctionFragment + 'resumeFuturesMarket(bytes32)': FunctionFragment + 'resumeFuturesMarkets(bytes32[])': FunctionFragment + 'resumeIssuance()': FunctionFragment + 'resumeSynth(bytes32)': FunctionFragment + 'resumeSynthExchange(bytes32)': FunctionFragment + 'resumeSynths(bytes32[])': FunctionFragment + 'resumeSynthsExchange(bytes32[])': FunctionFragment + 'resumeSystem()': FunctionFragment + 'suspendExchange(uint256)': FunctionFragment + 'suspendFutures(uint256)': FunctionFragment + 'suspendFuturesMarket(bytes32,uint256)': FunctionFragment + 'suspendFuturesMarkets(bytes32[],uint256)': FunctionFragment + 'suspendIssuance(uint256)': FunctionFragment + 'suspendSynth(bytes32,uint256)': FunctionFragment + 'suspendSynthExchange(bytes32,uint256)': FunctionFragment + 'suspendSynths(bytes32[],uint256)': FunctionFragment + 'suspendSynthsExchange(bytes32[],uint256)': FunctionFragment + 'suspendSystem(uint256)': FunctionFragment + 'synthExchangeSuspension(bytes32)': FunctionFragment + 'synthSuspended(bytes32)': FunctionFragment + 'synthSuspension(bytes32)': FunctionFragment + 'systemSuspended()': FunctionFragment + 'systemSuspension()': FunctionFragment + 'updateAccessControl(bytes32,address,bool,bool)': FunctionFragment + 'updateAccessControls(bytes32[],address[],bool[],bool[])': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: + | 'CONTRACT_NAME' + | 'SECTION_EXCHANGE' + | 'SECTION_FUTURES' + | 'SECTION_ISSUANCE' + | 'SECTION_SYNTH' + | 'SECTION_SYNTH_EXCHANGE' + | 'SECTION_SYSTEM' + | 'SUSPENSION_REASON_UPGRADE' + | 'acceptOwnership' + | 'accessControl' + | 'exchangeSuspension' + | 'futuresMarketSuspension' + | 'futuresSuspension' + | 'getFuturesMarketSuspensions' + | 'getSynthExchangeSuspensions' + | 'getSynthSuspensions' + | 'isSystemUpgrading' + | 'issuanceSuspension' + | 'nominateNewOwner' + | 'nominatedOwner' + | 'owner' + | 'requireExchangeActive' + | 'requireExchangeBetweenSynthsAllowed' + | 'requireFuturesActive' + | 'requireFuturesMarketActive' + | 'requireIssuanceActive' + | 'requireSynthActive' + | 'requireSynthExchangeActive' + | 'requireSynthsActive' + | 'requireSystemActive' + | 'resumeExchange' + | 'resumeFutures' + | 'resumeFuturesMarket' + | 'resumeFuturesMarkets' + | 'resumeIssuance' + | 'resumeSynth' + | 'resumeSynthExchange' + | 'resumeSynths' + | 'resumeSynthsExchange' + | 'resumeSystem' + | 'suspendExchange' + | 'suspendFutures' + | 'suspendFuturesMarket' + | 'suspendFuturesMarkets' + | 'suspendIssuance' + | 'suspendSynth' + | 'suspendSynthExchange' + | 'suspendSynths' + | 'suspendSynthsExchange' + | 'suspendSystem' + | 'synthExchangeSuspension' + | 'synthSuspended' + | 'synthSuspension' + | 'systemSuspended' + | 'systemSuspension' + | 'updateAccessControl' + | 'updateAccessControls' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_EXCHANGE', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_FUTURES', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_ISSUANCE', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_SYNTH', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_SYNTH_EXCHANGE', values?: undefined): string + encodeFunctionData(functionFragment: 'SECTION_SYSTEM', values?: undefined): string + encodeFunctionData(functionFragment: 'SUSPENSION_REASON_UPGRADE', values?: undefined): string + encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string + encodeFunctionData(functionFragment: 'accessControl', values: [BytesLike, string]): string + encodeFunctionData(functionFragment: 'exchangeSuspension', values?: undefined): string + encodeFunctionData(functionFragment: 'futuresMarketSuspension', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'futuresSuspension', values?: undefined): string + encodeFunctionData(functionFragment: 'getFuturesMarketSuspensions', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'getSynthExchangeSuspensions', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'getSynthSuspensions', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'isSystemUpgrading', values?: undefined): string + encodeFunctionData(functionFragment: 'issuanceSuspension', values?: undefined): string + encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string + encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string + encodeFunctionData(functionFragment: 'owner', values?: undefined): string + encodeFunctionData(functionFragment: 'requireExchangeActive', values?: undefined): string + encodeFunctionData( + functionFragment: 'requireExchangeBetweenSynthsAllowed', + values: [BytesLike, BytesLike] + ): string + encodeFunctionData(functionFragment: 'requireFuturesActive', values?: undefined): string + encodeFunctionData(functionFragment: 'requireFuturesMarketActive', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'requireIssuanceActive', values?: undefined): string + encodeFunctionData(functionFragment: 'requireSynthActive', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'requireSynthExchangeActive', values: [BytesLike]): string + encodeFunctionData( + functionFragment: 'requireSynthsActive', + values: [BytesLike, BytesLike] + ): string + encodeFunctionData(functionFragment: 'requireSystemActive', values?: undefined): string + encodeFunctionData(functionFragment: 'resumeExchange', values?: undefined): string + encodeFunctionData(functionFragment: 'resumeFutures', values?: undefined): string + encodeFunctionData(functionFragment: 'resumeFuturesMarket', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'resumeFuturesMarkets', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'resumeIssuance', values?: undefined): string + encodeFunctionData(functionFragment: 'resumeSynth', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'resumeSynthExchange', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'resumeSynths', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'resumeSynthsExchange', values: [BytesLike[]]): string + encodeFunctionData(functionFragment: 'resumeSystem', values?: undefined): string + encodeFunctionData(functionFragment: 'suspendExchange', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'suspendFutures', values: [BigNumberish]): string + encodeFunctionData( + functionFragment: 'suspendFuturesMarket', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData( + functionFragment: 'suspendFuturesMarkets', + values: [BytesLike[], BigNumberish] + ): string + encodeFunctionData(functionFragment: 'suspendIssuance', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'suspendSynth', values: [BytesLike, BigNumberish]): string + encodeFunctionData( + functionFragment: 'suspendSynthExchange', + values: [BytesLike, BigNumberish] + ): string + encodeFunctionData(functionFragment: 'suspendSynths', values: [BytesLike[], BigNumberish]): string + encodeFunctionData( + functionFragment: 'suspendSynthsExchange', + values: [BytesLike[], BigNumberish] + ): string + encodeFunctionData(functionFragment: 'suspendSystem', values: [BigNumberish]): string + encodeFunctionData(functionFragment: 'synthExchangeSuspension', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'synthSuspended', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'synthSuspension', values: [BytesLike]): string + encodeFunctionData(functionFragment: 'systemSuspended', values?: undefined): string + encodeFunctionData(functionFragment: 'systemSuspension', values?: undefined): string + encodeFunctionData( + functionFragment: 'updateAccessControl', + values: [BytesLike, string, boolean, boolean] + ): string + encodeFunctionData( + functionFragment: 'updateAccessControls', + values: [BytesLike[], string[], boolean[], boolean[]] + ): string + + decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_EXCHANGE', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_FUTURES', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_ISSUANCE', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_SYNTH', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_SYNTH_EXCHANGE', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SECTION_SYSTEM', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'SUSPENSION_REASON_UPGRADE', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'accessControl', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'exchangeSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'futuresMarketSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'futuresSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getFuturesMarketSuspensions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getSynthExchangeSuspensions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'getSynthSuspensions', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'isSystemUpgrading', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'issuanceSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireExchangeActive', data: BytesLike): Result + decodeFunctionResult( + functionFragment: 'requireExchangeBetweenSynthsAllowed', + data: BytesLike + ): Result + decodeFunctionResult(functionFragment: 'requireFuturesActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireFuturesMarketActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireIssuanceActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireSynthActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireSynthExchangeActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireSynthsActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'requireSystemActive', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeFutures', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeFuturesMarket', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeFuturesMarkets', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeIssuance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeSynth', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeSynthExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeSynthsExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'resumeSystem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendFutures', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendFuturesMarket', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendFuturesMarkets', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendIssuance', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendSynth', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendSynthExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendSynths', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendSynthsExchange', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'suspendSystem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthExchangeSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthSuspended', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'synthSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'systemSuspended', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'systemSuspension', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'updateAccessControl', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'updateAccessControls', data: BytesLike): Result + + events: { + 'AccessControlUpdated(bytes32,address,bool,bool)': EventFragment + 'ExchangeResumed(uint256)': EventFragment + 'ExchangeSuspended(uint256)': EventFragment + 'FuturesMarketResumed(bytes32,uint256)': EventFragment + 'FuturesMarketSuspended(bytes32,uint256)': EventFragment + 'FuturesResumed(uint256)': EventFragment + 'FuturesSuspended(uint256)': EventFragment + 'IssuanceResumed(uint256)': EventFragment + 'IssuanceSuspended(uint256)': EventFragment + 'OwnerChanged(address,address)': EventFragment + 'OwnerNominated(address)': EventFragment + 'SynthExchangeResumed(bytes32,uint256)': EventFragment + 'SynthExchangeSuspended(bytes32,uint256)': EventFragment + 'SynthResumed(bytes32,uint256)': EventFragment + 'SynthSuspended(bytes32,uint256)': EventFragment + 'SystemResumed(uint256)': EventFragment + 'SystemSuspended(uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'AccessControlUpdated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'ExchangeSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FuturesMarketResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FuturesMarketSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FuturesResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'FuturesSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'IssuanceResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'IssuanceSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthExchangeResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthExchangeSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SynthSuspended'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SystemResumed'): EventFragment + getEvent(nameOrSignatureOrTopic: 'SystemSuspended'): EventFragment } export interface AccessControlUpdatedEventObject { - section: string; - account: string; - canSuspend: boolean; - canResume: boolean; + section: string + account: string + canSuspend: boolean + canResume: boolean } export type AccessControlUpdatedEvent = TypedEvent< - [string, string, boolean, boolean], - AccessControlUpdatedEventObject ->; + [string, string, boolean, boolean], + AccessControlUpdatedEventObject +> -export type AccessControlUpdatedEventFilter = - TypedEventFilter; +export type AccessControlUpdatedEventFilter = TypedEventFilter export interface ExchangeResumedEventObject { - reason: BigNumber; + reason: BigNumber } -export type ExchangeResumedEvent = TypedEvent< - [BigNumber], - ExchangeResumedEventObject ->; +export type ExchangeResumedEvent = TypedEvent<[BigNumber], ExchangeResumedEventObject> -export type ExchangeResumedEventFilter = TypedEventFilter; +export type ExchangeResumedEventFilter = TypedEventFilter export interface ExchangeSuspendedEventObject { - reason: BigNumber; + reason: BigNumber } -export type ExchangeSuspendedEvent = TypedEvent< - [BigNumber], - ExchangeSuspendedEventObject ->; +export type ExchangeSuspendedEvent = TypedEvent<[BigNumber], ExchangeSuspendedEventObject> -export type ExchangeSuspendedEventFilter = - TypedEventFilter; +export type ExchangeSuspendedEventFilter = TypedEventFilter export interface FuturesMarketResumedEventObject { - marketKey: string; - reason: BigNumber; + marketKey: string + reason: BigNumber } export type FuturesMarketResumedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketResumedEventObject ->; + [string, BigNumber], + FuturesMarketResumedEventObject +> -export type FuturesMarketResumedEventFilter = - TypedEventFilter; +export type FuturesMarketResumedEventFilter = TypedEventFilter export interface FuturesMarketSuspendedEventObject { - marketKey: string; - reason: BigNumber; + marketKey: string + reason: BigNumber } export type FuturesMarketSuspendedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketSuspendedEventObject ->; + [string, BigNumber], + FuturesMarketSuspendedEventObject +> -export type FuturesMarketSuspendedEventFilter = - TypedEventFilter; +export type FuturesMarketSuspendedEventFilter = TypedEventFilter export interface FuturesResumedEventObject { - reason: BigNumber; + reason: BigNumber } -export type FuturesResumedEvent = TypedEvent< - [BigNumber], - FuturesResumedEventObject ->; +export type FuturesResumedEvent = TypedEvent<[BigNumber], FuturesResumedEventObject> -export type FuturesResumedEventFilter = TypedEventFilter; +export type FuturesResumedEventFilter = TypedEventFilter export interface FuturesSuspendedEventObject { - reason: BigNumber; + reason: BigNumber } -export type FuturesSuspendedEvent = TypedEvent< - [BigNumber], - FuturesSuspendedEventObject ->; +export type FuturesSuspendedEvent = TypedEvent<[BigNumber], FuturesSuspendedEventObject> -export type FuturesSuspendedEventFilter = - TypedEventFilter; +export type FuturesSuspendedEventFilter = TypedEventFilter export interface IssuanceResumedEventObject { - reason: BigNumber; + reason: BigNumber } -export type IssuanceResumedEvent = TypedEvent< - [BigNumber], - IssuanceResumedEventObject ->; +export type IssuanceResumedEvent = TypedEvent<[BigNumber], IssuanceResumedEventObject> -export type IssuanceResumedEventFilter = TypedEventFilter; +export type IssuanceResumedEventFilter = TypedEventFilter export interface IssuanceSuspendedEventObject { - reason: BigNumber; + reason: BigNumber } -export type IssuanceSuspendedEvent = TypedEvent< - [BigNumber], - IssuanceSuspendedEventObject ->; +export type IssuanceSuspendedEvent = TypedEvent<[BigNumber], IssuanceSuspendedEventObject> -export type IssuanceSuspendedEventFilter = - TypedEventFilter; +export type IssuanceSuspendedEventFilter = TypedEventFilter export interface OwnerChangedEventObject { - oldOwner: string; - newOwner: string; + oldOwner: string + newOwner: string } -export type OwnerChangedEvent = TypedEvent< - [string, string], - OwnerChangedEventObject ->; +export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> -export type OwnerChangedEventFilter = TypedEventFilter; +export type OwnerChangedEventFilter = TypedEventFilter export interface OwnerNominatedEventObject { - newOwner: string; + newOwner: string } -export type OwnerNominatedEvent = TypedEvent< - [string], - OwnerNominatedEventObject ->; +export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> -export type OwnerNominatedEventFilter = TypedEventFilter; +export type OwnerNominatedEventFilter = TypedEventFilter export interface SynthExchangeResumedEventObject { - currencyKey: string; - reason: BigNumber; + currencyKey: string + reason: BigNumber } export type SynthExchangeResumedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeResumedEventObject ->; + [string, BigNumber], + SynthExchangeResumedEventObject +> -export type SynthExchangeResumedEventFilter = - TypedEventFilter; +export type SynthExchangeResumedEventFilter = TypedEventFilter export interface SynthExchangeSuspendedEventObject { - currencyKey: string; - reason: BigNumber; + currencyKey: string + reason: BigNumber } export type SynthExchangeSuspendedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeSuspendedEventObject ->; + [string, BigNumber], + SynthExchangeSuspendedEventObject +> -export type SynthExchangeSuspendedEventFilter = - TypedEventFilter; +export type SynthExchangeSuspendedEventFilter = TypedEventFilter export interface SynthResumedEventObject { - currencyKey: string; - reason: BigNumber; + currencyKey: string + reason: BigNumber } -export type SynthResumedEvent = TypedEvent< - [string, BigNumber], - SynthResumedEventObject ->; +export type SynthResumedEvent = TypedEvent<[string, BigNumber], SynthResumedEventObject> -export type SynthResumedEventFilter = TypedEventFilter; +export type SynthResumedEventFilter = TypedEventFilter export interface SynthSuspendedEventObject { - currencyKey: string; - reason: BigNumber; + currencyKey: string + reason: BigNumber } -export type SynthSuspendedEvent = TypedEvent< - [string, BigNumber], - SynthSuspendedEventObject ->; +export type SynthSuspendedEvent = TypedEvent<[string, BigNumber], SynthSuspendedEventObject> -export type SynthSuspendedEventFilter = TypedEventFilter; +export type SynthSuspendedEventFilter = TypedEventFilter export interface SystemResumedEventObject { - reason: BigNumber; + reason: BigNumber } -export type SystemResumedEvent = TypedEvent< - [BigNumber], - SystemResumedEventObject ->; +export type SystemResumedEvent = TypedEvent<[BigNumber], SystemResumedEventObject> -export type SystemResumedEventFilter = TypedEventFilter; +export type SystemResumedEventFilter = TypedEventFilter export interface SystemSuspendedEventObject { - reason: BigNumber; + reason: BigNumber } -export type SystemSuspendedEvent = TypedEvent< - [BigNumber], - SystemSuspendedEventObject ->; +export type SystemSuspendedEvent = TypedEvent<[BigNumber], SystemSuspendedEventObject> -export type SystemSuspendedEventFilter = TypedEventFilter; +export type SystemSuspendedEventFilter = TypedEventFilter export interface SystemStatus extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; - - interface: SystemStatusInterface; - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; - - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; - - SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]>; - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]>; - - SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]>; - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; - - SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]>; - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]>; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise< - [boolean, boolean] & { canSuspend: boolean; canResume: boolean } - >; - - exchangeSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - futuresSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]>; - - issuanceSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - - owner(overrides?: CallOverrides): Promise<[string]>; - - requireExchangeActive(overrides?: CallOverrides): Promise<[void]>; - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]>; - - requireFuturesActive(overrides?: CallOverrides): Promise<[void]>; - - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]>; - - requireIssuanceActive(overrides?: CallOverrides): Promise<[void]>; - - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]>; - - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]>; - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]>; - - requireSystemActive(overrides?: CallOverrides): Promise<[void]>; - - resumeExchange( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFutures( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeIssuance( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSystem( - overrides?: Overrides & { from?: string } - ): Promise; - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - synthSuspended( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]>; - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - systemSuspended(overrides?: CallOverrides): Promise<[boolean]>; - - systemSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_FUTURES(overrides?: CallOverrides): Promise; - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise; - - SECTION_SYNTH(overrides?: CallOverrides): Promise; - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_SYSTEM(overrides?: CallOverrides): Promise; - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }>; - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } - >; - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } - >; - - isSystemUpgrading(overrides?: CallOverrides): Promise; - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - requireExchangeActive(overrides?: CallOverrides): Promise; - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireFuturesActive(overrides?: CallOverrides): Promise; - - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireIssuanceActive(overrides?: CallOverrides): Promise; - - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSystemActive(overrides?: CallOverrides): Promise; - - resumeExchange( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFutures( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeIssuance( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSystem( - overrides?: Overrides & { from?: string } - ): Promise; - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - synthSuspended( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - systemSuspended(overrides?: CallOverrides): Promise; - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise; - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_FUTURES(overrides?: CallOverrides): Promise; - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise; - - SECTION_SYNTH(overrides?: CallOverrides): Promise; - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_SYSTEM(overrides?: CallOverrides): Promise; - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; - - acceptOwnership(overrides?: CallOverrides): Promise; - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise< - [boolean, boolean] & { canSuspend: boolean; canResume: boolean } - >; - - exchangeSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - futuresSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[]; - reasons: BigNumber[]; - } - >; - - isSystemUpgrading(overrides?: CallOverrides): Promise; - - issuanceSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - requireExchangeActive(overrides?: CallOverrides): Promise; - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireFuturesActive(overrides?: CallOverrides): Promise; - - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireIssuanceActive(overrides?: CallOverrides): Promise; - - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSystemActive(overrides?: CallOverrides): Promise; - - resumeExchange(overrides?: CallOverrides): Promise; - - resumeFutures(overrides?: CallOverrides): Promise; - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - resumeIssuance(overrides?: CallOverrides): Promise; - - resumeSynth( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - resumeSystem(overrides?: CallOverrides): Promise; - - suspendExchange( - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendFutures( - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendIssuance( - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - suspendSystem( - reason: BigNumberish, - overrides?: CallOverrides - ): Promise; - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - synthSuspended( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - systemSuspended(overrides?: CallOverrides): Promise; - - systemSuspension( - overrides?: CallOverrides - ): Promise< - [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } - >; - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: CallOverrides - ): Promise; - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: CallOverrides - ): Promise; - }; - - filters: { - "AccessControlUpdated(bytes32,address,bool,bool)"( - section?: BytesLike | null, - account?: string | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter; - AccessControlUpdated( - section?: BytesLike | null, - account?: string | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter; - - "ExchangeResumed(uint256)"(reason?: null): ExchangeResumedEventFilter; - ExchangeResumed(reason?: null): ExchangeResumedEventFilter; - - "ExchangeSuspended(uint256)"(reason?: null): ExchangeSuspendedEventFilter; - ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter; - - "FuturesMarketResumed(bytes32,uint256)"( - marketKey?: null, - reason?: null - ): FuturesMarketResumedEventFilter; - FuturesMarketResumed( - marketKey?: null, - reason?: null - ): FuturesMarketResumedEventFilter; - - "FuturesMarketSuspended(bytes32,uint256)"( - marketKey?: null, - reason?: null - ): FuturesMarketSuspendedEventFilter; - FuturesMarketSuspended( - marketKey?: null, - reason?: null - ): FuturesMarketSuspendedEventFilter; - - "FuturesResumed(uint256)"(reason?: null): FuturesResumedEventFilter; - FuturesResumed(reason?: null): FuturesResumedEventFilter; - - "FuturesSuspended(uint256)"(reason?: null): FuturesSuspendedEventFilter; - FuturesSuspended(reason?: null): FuturesSuspendedEventFilter; - - "IssuanceResumed(uint256)"(reason?: null): IssuanceResumedEventFilter; - IssuanceResumed(reason?: null): IssuanceResumedEventFilter; - - "IssuanceSuspended(uint256)"(reason?: null): IssuanceSuspendedEventFilter; - IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter; - - "OwnerChanged(address,address)"( - oldOwner?: null, - newOwner?: null - ): OwnerChangedEventFilter; - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - - "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - - "SynthExchangeResumed(bytes32,uint256)"( - currencyKey?: null, - reason?: null - ): SynthExchangeResumedEventFilter; - SynthExchangeResumed( - currencyKey?: null, - reason?: null - ): SynthExchangeResumedEventFilter; - - "SynthExchangeSuspended(bytes32,uint256)"( - currencyKey?: null, - reason?: null - ): SynthExchangeSuspendedEventFilter; - SynthExchangeSuspended( - currencyKey?: null, - reason?: null - ): SynthExchangeSuspendedEventFilter; - - "SynthResumed(bytes32,uint256)"( - currencyKey?: null, - reason?: null - ): SynthResumedEventFilter; - SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter; - - "SynthSuspended(bytes32,uint256)"( - currencyKey?: null, - reason?: null - ): SynthSuspendedEventFilter; - SynthSuspended( - currencyKey?: null, - reason?: null - ): SynthSuspendedEventFilter; - - "SystemResumed(uint256)"(reason?: null): SystemResumedEventFilter; - SystemResumed(reason?: null): SystemResumedEventFilter; - - "SystemSuspended(uint256)"(reason?: null): SystemSuspendedEventFilter; - SystemSuspended(reason?: null): SystemSuspendedEventFilter; - }; - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_FUTURES(overrides?: CallOverrides): Promise; - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise; - - SECTION_SYNTH(overrides?: CallOverrides): Promise; - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise + + interface: SystemStatusInterface + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> + + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]> + + SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]> + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]> + + SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]> + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]> + + SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]> + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]> + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> + + exchangeSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[] + reasons: BigNumber[] + } + > + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[] + reasons: BigNumber[] + } + > + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[] + reasons: BigNumber[] + } + > + + isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]> + + issuanceSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise<[string]> + + owner(overrides?: CallOverrides): Promise<[string]> + + requireExchangeActive(overrides?: CallOverrides): Promise<[void]> + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]> + + requireFuturesActive(overrides?: CallOverrides): Promise<[void]> + + requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise<[void]> + + requireIssuanceActive(overrides?: CallOverrides): Promise<[void]> + + requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[void]> + + requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[void]> + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]> + + requireSystemActive(overrides?: CallOverrides): Promise<[void]> + + resumeExchange(overrides?: Overrides & { from?: string }): Promise + + resumeFutures(overrides?: Overrides & { from?: string }): Promise + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeIssuance(overrides?: Overrides & { from?: string }): Promise + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSystem(overrides?: Overrides & { from?: string }): Promise + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + systemSuspended(overrides?: CallOverrides): Promise<[boolean]> + + systemSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise + } + + CONTRACT_NAME(overrides?: CallOverrides): Promise + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_FUTURES(overrides?: CallOverrides): Promise + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise + + SECTION_SYNTH(overrides?: CallOverrides): Promise + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_SYSTEM(overrides?: CallOverrides): Promise + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> + + exchangeSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[] + reasons: BigNumber[] + } + > + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> + + isSystemUpgrading(overrides?: CallOverrides): Promise + + issuanceSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + requireExchangeActive(overrides?: CallOverrides): Promise + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireFuturesActive(overrides?: CallOverrides): Promise + + requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise + + requireIssuanceActive(overrides?: CallOverrides): Promise + + requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireSystemActive(overrides?: CallOverrides): Promise + + resumeExchange(overrides?: Overrides & { from?: string }): Promise + + resumeFutures(overrides?: Overrides & { from?: string }): Promise + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeIssuance(overrides?: Overrides & { from?: string }): Promise + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSystem(overrides?: Overrides & { from?: string }): Promise + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + systemSuspended(overrides?: CallOverrides): Promise + + systemSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_FUTURES(overrides?: CallOverrides): Promise + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise + + SECTION_SYNTH(overrides?: CallOverrides): Promise + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_SYSTEM(overrides?: CallOverrides): Promise + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: CallOverrides): Promise + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> + + exchangeSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + futuresSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[] + reasons: BigNumber[] + } + > + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[] + reasons: BigNumber[] + } + > + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[] + reasons: BigNumber[] + } + > + + isSystemUpgrading(overrides?: CallOverrides): Promise + + issuanceSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + requireExchangeActive(overrides?: CallOverrides): Promise + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireFuturesActive(overrides?: CallOverrides): Promise + + requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise + + requireIssuanceActive(overrides?: CallOverrides): Promise + + requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireSystemActive(overrides?: CallOverrides): Promise + + resumeExchange(overrides?: CallOverrides): Promise + + resumeFutures(overrides?: CallOverrides): Promise + + resumeFuturesMarket(marketKey: BytesLike, overrides?: CallOverrides): Promise + + resumeFuturesMarkets(marketKeys: BytesLike[], overrides?: CallOverrides): Promise + + resumeIssuance(overrides?: CallOverrides): Promise + + resumeSynth(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + resumeSynthExchange(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + resumeSynths(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + resumeSynthsExchange(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise + + resumeSystem(overrides?: CallOverrides): Promise + + suspendExchange(reason: BigNumberish, overrides?: CallOverrides): Promise + + suspendFutures(reason: BigNumberish, overrides?: CallOverrides): Promise + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendIssuance(reason: BigNumberish, overrides?: CallOverrides): Promise + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise + + suspendSystem(reason: BigNumberish, overrides?: CallOverrides): Promise + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + systemSuspended(overrides?: CallOverrides): Promise + + systemSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: CallOverrides + ): Promise + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: CallOverrides + ): Promise + } + + filters: { + 'AccessControlUpdated(bytes32,address,bool,bool)'( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter + AccessControlUpdated( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter + + 'ExchangeResumed(uint256)'(reason?: null): ExchangeResumedEventFilter + ExchangeResumed(reason?: null): ExchangeResumedEventFilter + + 'ExchangeSuspended(uint256)'(reason?: null): ExchangeSuspendedEventFilter + ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter + + 'FuturesMarketResumed(bytes32,uint256)'( + marketKey?: null, + reason?: null + ): FuturesMarketResumedEventFilter + FuturesMarketResumed(marketKey?: null, reason?: null): FuturesMarketResumedEventFilter + + 'FuturesMarketSuspended(bytes32,uint256)'( + marketKey?: null, + reason?: null + ): FuturesMarketSuspendedEventFilter + FuturesMarketSuspended(marketKey?: null, reason?: null): FuturesMarketSuspendedEventFilter + + 'FuturesResumed(uint256)'(reason?: null): FuturesResumedEventFilter + FuturesResumed(reason?: null): FuturesResumedEventFilter + + 'FuturesSuspended(uint256)'(reason?: null): FuturesSuspendedEventFilter + FuturesSuspended(reason?: null): FuturesSuspendedEventFilter + + 'IssuanceResumed(uint256)'(reason?: null): IssuanceResumedEventFilter + IssuanceResumed(reason?: null): IssuanceResumedEventFilter + + 'IssuanceSuspended(uint256)'(reason?: null): IssuanceSuspendedEventFilter + IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter + + 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + + 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + + 'SynthExchangeResumed(bytes32,uint256)'( + currencyKey?: null, + reason?: null + ): SynthExchangeResumedEventFilter + SynthExchangeResumed(currencyKey?: null, reason?: null): SynthExchangeResumedEventFilter + + 'SynthExchangeSuspended(bytes32,uint256)'( + currencyKey?: null, + reason?: null + ): SynthExchangeSuspendedEventFilter + SynthExchangeSuspended(currencyKey?: null, reason?: null): SynthExchangeSuspendedEventFilter + + 'SynthResumed(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthResumedEventFilter + SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter + + 'SynthSuspended(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthSuspendedEventFilter + SynthSuspended(currencyKey?: null, reason?: null): SynthSuspendedEventFilter + + 'SystemResumed(uint256)'(reason?: null): SystemResumedEventFilter + SystemResumed(reason?: null): SystemResumedEventFilter + + 'SystemSuspended(uint256)'(reason?: null): SystemSuspendedEventFilter + SystemSuspended(reason?: null): SystemSuspendedEventFilter + } + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_FUTURES(overrides?: CallOverrides): Promise + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise + + SECTION_SYNTH(overrides?: CallOverrides): Promise + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_SYSTEM(overrides?: CallOverrides): Promise + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessControl(arg0: BytesLike, arg1: string, overrides?: CallOverrides): Promise + + exchangeSuspension(overrides?: CallOverrides): Promise + + futuresMarketSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise + + futuresSuspension(overrides?: CallOverrides): Promise + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise + + getSynthExchangeSuspensions(synths: BytesLike[], overrides?: CallOverrides): Promise + + getSynthSuspensions(synths: BytesLike[], overrides?: CallOverrides): Promise + + isSystemUpgrading(overrides?: CallOverrides): Promise + + issuanceSuspension(overrides?: CallOverrides): Promise + + nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + + nominatedOwner(overrides?: CallOverrides): Promise + + owner(overrides?: CallOverrides): Promise + + requireExchangeActive(overrides?: CallOverrides): Promise + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireFuturesActive(overrides?: CallOverrides): Promise + + requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise + + requireIssuanceActive(overrides?: CallOverrides): Promise + + requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise + + requireSystemActive(overrides?: CallOverrides): Promise + + resumeExchange(overrides?: Overrides & { from?: string }): Promise + + resumeFutures(overrides?: Overrides & { from?: string }): Promise + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeIssuance(overrides?: Overrides & { from?: string }): Promise + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSystem(overrides?: Overrides & { from?: string }): Promise + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + synthExchangeSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise + + synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise + + systemSuspended(overrides?: CallOverrides): Promise + + systemSuspension(overrides?: CallOverrides): Promise + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise + } + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_FUTURES(overrides?: CallOverrides): Promise + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise + + SECTION_SYNTH(overrides?: CallOverrides): Promise + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise + + SECTION_SYSTEM(overrides?: CallOverrides): Promise + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise + + acceptOwnership(overrides?: Overrides & { from?: string }): Promise + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise + + exchangeSuspension(overrides?: CallOverrides): Promise + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise - SECTION_SYSTEM(overrides?: CallOverrides): Promise; + futuresSuspension(overrides?: CallOverrides): Promise - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise; + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise - exchangeSuspension(overrides?: CallOverrides): Promise; + isSystemUpgrading(overrides?: CallOverrides): Promise - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; + issuanceSuspension(overrides?: CallOverrides): Promise - futuresSuspension(overrides?: CallOverrides): Promise; + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; + nominatedOwner(overrides?: CallOverrides): Promise - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise; + owner(overrides?: CallOverrides): Promise - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise; + requireExchangeActive(overrides?: CallOverrides): Promise - isSystemUpgrading(overrides?: CallOverrides): Promise; + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - issuanceSuspension(overrides?: CallOverrides): Promise; + requireFuturesActive(overrides?: CallOverrides): Promise - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - requireExchangeActive(overrides?: CallOverrides): Promise; + requireIssuanceActive(overrides?: CallOverrides): Promise - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - requireFuturesActive(overrides?: CallOverrides): Promise; + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise - requireIssuanceActive(overrides?: CallOverrides): Promise; + requireSystemActive(overrides?: CallOverrides): Promise - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + resumeExchange(overrides?: Overrides & { from?: string }): Promise - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + resumeFutures(overrides?: Overrides & { from?: string }): Promise - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise - requireSystemActive(overrides?: CallOverrides): Promise; + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise - resumeExchange( - overrides?: Overrides & { from?: string } - ): Promise; + resumeIssuance(overrides?: Overrides & { from?: string }): Promise - resumeFutures( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeIssuance( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSystem(overrides?: Overrides & { from?: string }): Promise; - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspended( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - systemSuspended(overrides?: CallOverrides): Promise; - - systemSuspension(overrides?: CallOverrides): Promise; - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise; - }; - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise; - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise; - - SECTION_FUTURES(overrides?: CallOverrides): Promise; - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise; - - SECTION_SYNTH(overrides?: CallOverrides): Promise; - - SECTION_SYNTH_EXCHANGE( - overrides?: CallOverrides - ): Promise; - - SECTION_SYSTEM(overrides?: CallOverrides): Promise; - - SUSPENSION_REASON_UPGRADE( - overrides?: CallOverrides - ): Promise; - - acceptOwnership( - overrides?: Overrides & { from?: string } - ): Promise; - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise; - - exchangeSuspension( - overrides?: CallOverrides - ): Promise; - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - futuresSuspension(overrides?: CallOverrides): Promise; - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise; - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise; - - isSystemUpgrading(overrides?: CallOverrides): Promise; - - issuanceSuspension( - overrides?: CallOverrides - ): Promise; - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise; - - nominatedOwner(overrides?: CallOverrides): Promise; - - owner(overrides?: CallOverrides): Promise; - - requireExchangeActive( - overrides?: CallOverrides - ): Promise; - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireFuturesActive( - overrides?: CallOverrides - ): Promise; - - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireIssuanceActive( - overrides?: CallOverrides - ): Promise; - - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - requireSystemActive( - overrides?: CallOverrides - ): Promise; - - resumeExchange( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFutures( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeIssuance( - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise; - - resumeSystem( - overrides?: Overrides & { from?: string } - ): Promise; - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise; - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspended( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise; - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise; - - systemSuspended(overrides?: CallOverrides): Promise; - - systemSuspension(overrides?: CallOverrides): Promise; - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise; - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise; - }; + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise + + resumeSystem(overrides?: Overrides & { from?: string }): Promise + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise + + synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise + + synthSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise + + systemSuspended(overrides?: CallOverrides): Promise + + systemSuspension(overrides?: CallOverrides): Promise + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise + } } diff --git a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts index fcced87c09..395ccfcece 100644 --- a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts @@ -2,141 +2,116 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface VKwentaRedeemerInterface extends utils.Interface { - functions: { - "redeem()": FunctionFragment; - "token()": FunctionFragment; - "vToken()": FunctionFragment; - }; + functions: { + 'redeem()': FunctionFragment + 'token()': FunctionFragment + 'vToken()': FunctionFragment + } - getFunction( - nameOrSignatureOrTopic: "redeem" | "token" | "vToken" - ): FunctionFragment; + getFunction(nameOrSignatureOrTopic: 'redeem' | 'token' | 'vToken'): FunctionFragment - encodeFunctionData(functionFragment: "redeem", values?: undefined): string; - encodeFunctionData(functionFragment: "token", values?: undefined): string; - encodeFunctionData(functionFragment: "vToken", values?: undefined): string; + encodeFunctionData(functionFragment: 'redeem', values?: undefined): string + encodeFunctionData(functionFragment: 'token', values?: undefined): string + encodeFunctionData(functionFragment: 'vToken', values?: undefined): string - decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "vToken", data: BytesLike): Result; + decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'vToken', data: BytesLike): Result - events: { - "Redeemed(address,uint256)": EventFragment; - }; + events: { + 'Redeemed(address,uint256)': EventFragment + } - getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; + getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment } export interface RedeemedEventObject { - redeemer: string; - redeemedAmount: BigNumber; + redeemer: string + redeemedAmount: BigNumber } -export type RedeemedEvent = TypedEvent< - [string, BigNumber], - RedeemedEventObject ->; +export type RedeemedEvent = TypedEvent<[string, BigNumber], RedeemedEventObject> -export type RedeemedEventFilter = TypedEventFilter; +export type RedeemedEventFilter = TypedEventFilter export interface VKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: VKwentaRedeemerInterface; + interface: VKwentaRedeemerInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - redeem( - overrides?: Overrides & { from?: string } - ): Promise; + functions: { + redeem(overrides?: Overrides & { from?: string }): Promise - token(overrides?: CallOverrides): Promise<[string]>; + token(overrides?: CallOverrides): Promise<[string]> - vToken(overrides?: CallOverrides): Promise<[string]>; - }; + vToken(overrides?: CallOverrides): Promise<[string]> + } - redeem( - overrides?: Overrides & { from?: string } - ): Promise; + redeem(overrides?: Overrides & { from?: string }): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - vToken(overrides?: CallOverrides): Promise; + vToken(overrides?: CallOverrides): Promise - callStatic: { - redeem(overrides?: CallOverrides): Promise; + callStatic: { + redeem(overrides?: CallOverrides): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - vToken(overrides?: CallOverrides): Promise; - }; + vToken(overrides?: CallOverrides): Promise + } - filters: { - "Redeemed(address,uint256)"( - redeemer?: null, - redeemedAmount?: null - ): RedeemedEventFilter; - Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter; - }; + filters: { + 'Redeemed(address,uint256)'(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter + Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter + } - estimateGas: { - redeem(overrides?: Overrides & { from?: string }): Promise; + estimateGas: { + redeem(overrides?: Overrides & { from?: string }): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - vToken(overrides?: CallOverrides): Promise; - }; + vToken(overrides?: CallOverrides): Promise + } - populateTransaction: { - redeem( - overrides?: Overrides & { from?: string } - ): Promise; + populateTransaction: { + redeem(overrides?: Overrides & { from?: string }): Promise - token(overrides?: CallOverrides): Promise; + token(overrides?: CallOverrides): Promise - vToken(overrides?: CallOverrides): Promise; - }; + vToken(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts index a939b999ca..5adbbce251 100644 --- a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts @@ -2,172 +2,149 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from "ethers"; -import type { - FunctionFragment, - Result, - EventFragment, -} from "@ethersproject/abi"; -import type { Listener, Provider } from "@ethersproject/providers"; -import type { - TypedEventFilter, - TypedEvent, - TypedListener, - OnEvent, -} from "./common"; + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from 'ethers' +import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' +import type { Listener, Provider } from '@ethersproject/providers' +import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' export interface VeKwentaRedeemerInterface extends utils.Interface { - functions: { - "kwenta()": FunctionFragment; - "redeem(address)": FunctionFragment; - "rewardEscrow()": FunctionFragment; - "veKwenta()": FunctionFragment; - }; - - getFunction( - nameOrSignatureOrTopic: "kwenta" | "redeem" | "rewardEscrow" | "veKwenta" - ): FunctionFragment; - - encodeFunctionData(functionFragment: "kwenta", values?: undefined): string; - encodeFunctionData(functionFragment: "redeem", values: [string]): string; - encodeFunctionData( - functionFragment: "rewardEscrow", - values?: undefined - ): string; - encodeFunctionData(functionFragment: "veKwenta", values?: undefined): string; - - decodeFunctionResult(functionFragment: "kwenta", data: BytesLike): Result; - decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; - decodeFunctionResult( - functionFragment: "rewardEscrow", - data: BytesLike - ): Result; - decodeFunctionResult(functionFragment: "veKwenta", data: BytesLike): Result; - - events: { - "Redeemed(address,address,uint256)": EventFragment; - }; - - getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; + functions: { + 'kwenta()': FunctionFragment + 'redeem(address)': FunctionFragment + 'rewardEscrow()': FunctionFragment + 'veKwenta()': FunctionFragment + } + + getFunction( + nameOrSignatureOrTopic: 'kwenta' | 'redeem' | 'rewardEscrow' | 'veKwenta' + ): FunctionFragment + + encodeFunctionData(functionFragment: 'kwenta', values?: undefined): string + encodeFunctionData(functionFragment: 'redeem', values: [string]): string + encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string + encodeFunctionData(functionFragment: 'veKwenta', values?: undefined): string + + decodeFunctionResult(functionFragment: 'kwenta', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result + decodeFunctionResult(functionFragment: 'veKwenta', data: BytesLike): Result + + events: { + 'Redeemed(address,address,uint256)': EventFragment + } + + getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment } export interface RedeemedEventObject { - redeemer: string; - beneficiary: string; - redeemedAmount: BigNumber; + redeemer: string + beneficiary: string + redeemedAmount: BigNumber } -export type RedeemedEvent = TypedEvent< - [string, string, BigNumber], - RedeemedEventObject ->; +export type RedeemedEvent = TypedEvent<[string, string, BigNumber], RedeemedEventObject> -export type RedeemedEventFilter = TypedEventFilter; +export type RedeemedEventFilter = TypedEventFilter export interface VeKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this; - attach(addressOrName: string): this; - deployed(): Promise; + connect(signerOrProvider: Signer | Provider | string): this + attach(addressOrName: string): this + deployed(): Promise - interface: VeKwentaRedeemerInterface; + interface: VeKwentaRedeemerInterface - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise>; + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise> - listeners( - eventFilter?: TypedEventFilter - ): Array>; - listeners(eventName?: string): Array; - removeAllListeners( - eventFilter: TypedEventFilter - ): this; - removeAllListeners(eventName?: string): this; - off: OnEvent; - on: OnEvent; - once: OnEvent; - removeListener: OnEvent; + listeners( + eventFilter?: TypedEventFilter + ): Array> + listeners(eventName?: string): Array + removeAllListeners(eventFilter: TypedEventFilter): this + removeAllListeners(eventName?: string): this + off: OnEvent + on: OnEvent + once: OnEvent + removeListener: OnEvent - functions: { - kwenta(overrides?: CallOverrides): Promise<[string]>; + functions: { + kwenta(overrides?: CallOverrides): Promise<[string]> - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise; + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + rewardEscrow(overrides?: CallOverrides): Promise<[string]> - veKwenta(overrides?: CallOverrides): Promise<[string]>; - }; + veKwenta(overrides?: CallOverrides): Promise<[string]> + } - kwenta(overrides?: CallOverrides): Promise; + kwenta(overrides?: CallOverrides): Promise - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise; + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - veKwenta(overrides?: CallOverrides): Promise; + veKwenta(overrides?: CallOverrides): Promise - callStatic: { - kwenta(overrides?: CallOverrides): Promise; + callStatic: { + kwenta(overrides?: CallOverrides): Promise - redeem(_beneficiary: string, overrides?: CallOverrides): Promise; + redeem(_beneficiary: string, overrides?: CallOverrides): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - veKwenta(overrides?: CallOverrides): Promise; - }; + veKwenta(overrides?: CallOverrides): Promise + } - filters: { - "Redeemed(address,address,uint256)"( - redeemer?: string | null, - beneficiary?: string | null, - redeemedAmount?: null - ): RedeemedEventFilter; - Redeemed( - redeemer?: string | null, - beneficiary?: string | null, - redeemedAmount?: null - ): RedeemedEventFilter; - }; + filters: { + 'Redeemed(address,address,uint256)'( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter + Redeemed( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter + } - estimateGas: { - kwenta(overrides?: CallOverrides): Promise; + estimateGas: { + kwenta(overrides?: CallOverrides): Promise - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise; + redeem(_beneficiary: string, overrides?: Overrides & { from?: string }): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - veKwenta(overrides?: CallOverrides): Promise; - }; + veKwenta(overrides?: CallOverrides): Promise + } - populateTransaction: { - kwenta(overrides?: CallOverrides): Promise; + populateTransaction: { + kwenta(overrides?: CallOverrides): Promise - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise; + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise - rewardEscrow(overrides?: CallOverrides): Promise; + rewardEscrow(overrides?: CallOverrides): Promise - veKwenta(overrides?: CallOverrides): Promise; - }; + veKwenta(overrides?: CallOverrides): Promise + } } diff --git a/packages/sdk/src/contracts/types/common.ts b/packages/sdk/src/contracts/types/common.ts index 2fc40c7fb1..0621ff0f86 100644 --- a/packages/sdk/src/contracts/types/common.ts +++ b/packages/sdk/src/contracts/types/common.ts @@ -1,44 +1,35 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { Listener } from "@ethersproject/providers"; -import type { Event, EventFilter } from "ethers"; - -export interface TypedEvent< - TArgsArray extends Array = any, - TArgsObject = any -> extends Event { - args: TArgsArray & TArgsObject; +import type { Listener } from '@ethersproject/providers' +import type { Event, EventFilter } from 'ethers' + +export interface TypedEvent = any, TArgsObject = any> extends Event { + args: TArgsArray & TArgsObject } -export interface TypedEventFilter<_TEvent extends TypedEvent> - extends EventFilter {} +export interface TypedEventFilter<_TEvent extends TypedEvent> extends EventFilter {} export interface TypedListener { - (...listenerArg: [...__TypechainArgsArray, TEvent]): void; + (...listenerArg: [...__TypechainArgsArray, TEvent]): void } -type __TypechainArgsArray = T extends TypedEvent ? U : never; +type __TypechainArgsArray = T extends TypedEvent ? U : never export interface OnEvent { - ( - eventFilter: TypedEventFilter, - listener: TypedListener - ): TRes; - (eventName: string, listener: Listener): TRes; + ( + eventFilter: TypedEventFilter, + listener: TypedListener + ): TRes + (eventName: string, listener: Listener): TRes } export type MinEthersFactory = { - deploy(...a: ARGS[]): Promise; -}; + deploy(...a: ARGS[]): Promise +} -export type GetContractTypeFromFactory = F extends MinEthersFactory< - infer C, - any -> - ? C - : never; +export type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never export type GetARGsTypeFromFactory = F extends MinEthersFactory - ? Parameters - : never; + ? Parameters + : never diff --git a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts index 58f33be508..d03548132c 100644 --- a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts @@ -2,67 +2,64 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { BatchClaimer, BatchClaimerInterface } from "../BatchClaimer"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { BatchClaimer, BatchClaimerInterface } from '../BatchClaimer' const _abi = [ - { - inputs: [ - { - internalType: "contract IMultipleMerkleDistributor[]", - name: "_distributors", - type: "address[]", - }, - { - components: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - internalType: "struct IMultipleMerkleDistributor.Claims[][]", - name: "_claims", - type: "tuple[][]", - }, - ], - name: "claimMultiple", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'contract IMultipleMerkleDistributor[]', + name: '_distributors', + type: 'address[]', + }, + { + components: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + internalType: 'struct IMultipleMerkleDistributor.Claims[][]', + name: '_claims', + type: 'tuple[][]', + }, + ], + name: 'claimMultiple', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class BatchClaimer__factory { - static readonly abi = _abi; - static createInterface(): BatchClaimerInterface { - return new utils.Interface(_abi) as BatchClaimerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): BatchClaimer { - return new Contract(address, _abi, signerOrProvider) as BatchClaimer; - } + static readonly abi = _abi + static createInterface(): BatchClaimerInterface { + return new utils.Interface(_abi) as BatchClaimerInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): BatchClaimer { + return new Contract(address, _abi, signerOrProvider) as BatchClaimer + } } diff --git a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts index 490b696189..5bb462bd75 100644 --- a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts +++ b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts @@ -2,224 +2,218 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - DappMaintenance, - DappMaintenanceInterface, -} from "../DappMaintenance"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { DappMaintenance, DappMaintenanceInterface } from '../DappMaintenance' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "SXMaintenance", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "StakingMaintenance", - type: "event", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isPausedSX", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isPausedStaking", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "setMaintenanceModeAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "setMaintenanceModeSX", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "setMaintenanceModeStaking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'SXMaintenance', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'StakingMaintenance', + type: 'event', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isPausedSX', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isPausedStaking', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'setMaintenanceModeAll', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'setMaintenanceModeSX', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'setMaintenanceModeStaking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class DappMaintenance__factory { - static readonly abi = _abi; - static createInterface(): DappMaintenanceInterface { - return new utils.Interface(_abi) as DappMaintenanceInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): DappMaintenance { - return new Contract(address, _abi, signerOrProvider) as DappMaintenance; - } + static readonly abi = _abi + static createInterface(): DappMaintenanceInterface { + return new utils.Interface(_abi) as DappMaintenanceInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): DappMaintenance { + return new Contract(address, _abi, signerOrProvider) as DappMaintenance + } } diff --git a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts index 04ea74421d..c7764a4a28 100644 --- a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts @@ -2,353 +2,353 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { ERC20, ERC20Interface } from "../ERC20"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { ERC20, ERC20Interface } from '../ERC20' const _abi = [ - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "approve", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "mint", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "address", - name: "recipient", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "decimals", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "addedValue", - type: "uint256", - }, - ], - name: "increaseAllowance", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "subtractedValue", - type: "uint256", - }, - ], - name: "decreaseAllowance", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "recipient", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "transfer", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "spender", - type: "address", - }, - ], - name: "allowance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "string", - name: "symbol", - type: "string", - }, - { - internalType: "uint8", - name: "decimals", - type: "uint8", - }, - { - internalType: "uint256", - name: "initialSupply", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, -] as const; + { + constant: true, + inputs: [], + name: 'name', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'approve', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'mint', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + { + internalType: 'address', + name: 'recipient', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'transferFrom', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'decimals', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'addedValue', + type: 'uint256', + }, + ], + name: 'increaseAllowance', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'symbol', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'subtractedValue', + type: 'uint256', + }, + ], + name: 'decreaseAllowance', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'recipient', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'transfer', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + ], + name: 'allowance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'string', + name: 'name', + type: 'string', + }, + { + internalType: 'string', + name: 'symbol', + type: 'string', + }, + { + internalType: 'uint8', + name: 'decimals', + type: 'uint8', + }, + { + internalType: 'uint256', + name: 'initialSupply', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'to', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Transfer', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Approval', + type: 'event', + }, +] as const export class ERC20__factory { - static readonly abi = _abi; - static createInterface(): ERC20Interface { - return new utils.Interface(_abi) as ERC20Interface; - } - static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { - return new Contract(address, _abi, signerOrProvider) as ERC20; - } + static readonly abi = _abi + static createInterface(): ERC20Interface { + return new utils.Interface(_abi) as ERC20Interface + } + static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { + return new Contract(address, _abi, signerOrProvider) as ERC20 + } } diff --git a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts index 9ec13deee9..93e6c95786 100644 --- a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts @@ -2,1106 +2,1102 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { ExchangeRates, ExchangeRatesInterface } from "../ExchangeRates"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { ExchangeRates, ExchangeRatesInterface } from '../ExchangeRates' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "AggregatorAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "AggregatorRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "aggregatorAddress", - type: "address", - }, - ], - name: "addAggregator", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "aggregatorKeys", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "aggregatorWarningFlags", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "aggregators", - outputs: [ - { - internalType: "contract AggregatorV2V3Interface", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "anyRateIsInvalid", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - { - internalType: "uint256[]", - name: "roundIds", - type: "uint256[]", - }, - ], - name: "anyRateIsInvalidAtRound", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "aggregator", - type: "address", - }, - ], - name: "currenciesUsingAggregator", - outputs: [ - { - internalType: "bytes32[]", - name: "currencies", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "currencyKeyDecimals", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "effectiveAtomicValueAndRates", - outputs: [ - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "uint256", - name: "systemValue", - type: "uint256", - }, - { - internalType: "uint256", - name: "systemSourceRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "systemDestinationRate", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "effectiveValue", - outputs: [ - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "effectiveValueAndRates", - outputs: [ - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "uint256", - name: "sourceRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "destinationRate", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "roundIdForSrc", - type: "uint256", - }, - { - internalType: "uint256", - name: "roundIdForDest", - type: "uint256", - }, - ], - name: "effectiveValueAndRatesAtRound", - outputs: [ - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - internalType: "uint256", - name: "sourceRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "destinationRate", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "getCurrentRoundId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "startingRoundId", - type: "uint256", - }, - { - internalType: "uint256", - name: "startingTimestamp", - type: "uint256", - }, - { - internalType: "uint256", - name: "timediff", - type: "uint256", - }, - ], - name: "getLastRoundIdBeforeElapsedSecs", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "lastRateUpdateTimes", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "lastRateUpdateTimesForCurrencies", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateAndInvalid", - outputs: [ - { - internalType: "uint256", - name: "rate", - type: "uint256", - }, - { - internalType: "bool", - name: "isInvalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "roundId", - type: "uint256", - }, - ], - name: "rateAndTimestampAtRound", - outputs: [ - { - internalType: "uint256", - name: "rate", - type: "uint256", - }, - { - internalType: "uint256", - name: "time", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateAndUpdatedTime", - outputs: [ - { - internalType: "uint256", - name: "rate", - type: "uint256", - }, - { - internalType: "uint256", - name: "time", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateForCurrency", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateIsFlagged", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateIsInvalid", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateIsStale", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rateStalePeriod", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "rateWithSafetyChecks", - outputs: [ - { - internalType: "uint256", - name: "rate", - type: "uint256", - }, - { - internalType: "bool", - name: "broken", - type: "bool", - }, - { - internalType: "bool", - name: "staleOrInvalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "ratesAndInvalidForCurrencies", - outputs: [ - { - internalType: "uint256[]", - name: "rates", - type: "uint256[]", - }, - { - internalType: "bool", - name: "anyRateInvalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "numRounds", - type: "uint256", - }, - { - internalType: "uint256", - name: "roundId", - type: "uint256", - }, - ], - name: "ratesAndUpdatedTimeForCurrencyLastNRounds", - outputs: [ - { - internalType: "uint256[]", - name: "rates", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "times", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "ratesForCurrencies", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "removeAggregator", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "synthTooVolatileForAtomicExchange", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - components: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "dexPriceAggregator", - type: "address", - }, - { - internalType: "address", - name: "atomicEquivalentForDexPricing", - type: "address", - }, - { - internalType: "uint256", - name: "atomicExchangeFeeRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "atomicTwapWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "atomicMaxVolumePerBlock", - type: "uint256", - }, - { - internalType: "uint256", - name: "atomicVolatilityConsiderationWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "atomicVolatilityUpdateThreshold", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeFeeRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeMaxDynamicFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeDynamicFeeRounds", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeDynamicFeeThreshold", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeDynamicFeeWeightDecay", - type: "uint256", - }, - ], - internalType: - "struct IDirectIntegrationManager.ParameterIntegrationSettings", - name: "", - type: "tuple", - }, - ], - name: "synthTooVolatileForAtomicExchange", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'aggregator', + type: 'address', + }, + ], + name: 'AggregatorAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'aggregator', + type: 'address', + }, + ], + name: 'AggregatorRemoved', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'aggregatorAddress', + type: 'address', + }, + ], + name: 'addAggregator', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'aggregatorKeys', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'aggregatorWarningFlags', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'aggregators', + outputs: [ + { + internalType: 'contract AggregatorV2V3Interface', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'anyRateIsInvalid', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + { + internalType: 'uint256[]', + name: 'roundIds', + type: 'uint256[]', + }, + ], + name: 'anyRateIsInvalidAtRound', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'aggregator', + type: 'address', + }, + ], + name: 'currenciesUsingAggregator', + outputs: [ + { + internalType: 'bytes32[]', + name: 'currencies', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'currencyKeyDecimals', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'effectiveAtomicValueAndRates', + outputs: [ + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'systemValue', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'systemSourceRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'systemDestinationRate', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'effectiveValue', + outputs: [ + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'effectiveValueAndRates', + outputs: [ + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'sourceRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'destinationRate', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'roundIdForSrc', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'roundIdForDest', + type: 'uint256', + }, + ], + name: 'effectiveValueAndRatesAtRound', + outputs: [ + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'sourceRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'destinationRate', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'getCurrentRoundId', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'startingRoundId', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'startingTimestamp', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'timediff', + type: 'uint256', + }, + ], + name: 'getLastRoundIdBeforeElapsedSecs', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'lastRateUpdateTimes', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'lastRateUpdateTimesForCurrencies', + outputs: [ + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateAndInvalid', + outputs: [ + { + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'isInvalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'roundId', + type: 'uint256', + }, + ], + name: 'rateAndTimestampAtRound', + outputs: [ + { + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'time', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateAndUpdatedTime', + outputs: [ + { + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'time', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateForCurrency', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateIsFlagged', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateIsInvalid', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateIsStale', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rateStalePeriod', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'rateWithSafetyChecks', + outputs: [ + { + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'broken', + type: 'bool', + }, + { + internalType: 'bool', + name: 'staleOrInvalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'ratesAndInvalidForCurrencies', + outputs: [ + { + internalType: 'uint256[]', + name: 'rates', + type: 'uint256[]', + }, + { + internalType: 'bool', + name: 'anyRateInvalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'numRounds', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'roundId', + type: 'uint256', + }, + ], + name: 'ratesAndUpdatedTimeForCurrencyLastNRounds', + outputs: [ + { + internalType: 'uint256[]', + name: 'rates', + type: 'uint256[]', + }, + { + internalType: 'uint256[]', + name: 'times', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'ratesForCurrencies', + outputs: [ + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'removeAggregator', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'synthTooVolatileForAtomicExchange', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + components: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'dexPriceAggregator', + type: 'address', + }, + { + internalType: 'address', + name: 'atomicEquivalentForDexPricing', + type: 'address', + }, + { + internalType: 'uint256', + name: 'atomicExchangeFeeRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'atomicTwapWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'atomicMaxVolumePerBlock', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'atomicVolatilityConsiderationWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'atomicVolatilityUpdateThreshold', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeFeeRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeMaxDynamicFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeDynamicFeeRounds', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeDynamicFeeThreshold', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeDynamicFeeWeightDecay', + type: 'uint256', + }, + ], + internalType: 'struct IDirectIntegrationManager.ParameterIntegrationSettings', + name: '', + type: 'tuple', + }, + ], + name: 'synthTooVolatileForAtomicExchange', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class ExchangeRates__factory { - static readonly abi = _abi; - static createInterface(): ExchangeRatesInterface { - return new utils.Interface(_abi) as ExchangeRatesInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ExchangeRates { - return new Contract(address, _abi, signerOrProvider) as ExchangeRates; - } + static readonly abi = _abi + static createInterface(): ExchangeRatesInterface { + return new utils.Interface(_abi) as ExchangeRatesInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): ExchangeRates { + return new Contract(address, _abi, signerOrProvider) as ExchangeRates + } } diff --git a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts index 17edb53e7b..19dd37f6b6 100644 --- a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts @@ -2,791 +2,788 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { Exchanger, ExchangerInterface } from "../Exchanger"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { Exchanger, ExchangerInterface } from '../Exchanger' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "src", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "dest", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "exchangeFeeRate", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "roundIdForSrc", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "roundIdForDest", - type: "uint256", - }, - ], - name: "ExchangeEntryAppended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "src", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "dest", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reclaim", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "rebate", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "srcRoundIdAtPeriodEnd", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "destRoundIdAtPeriodEnd", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "exchangeTimestamp", - type: "uint256", - }, - ], - name: "ExchangeEntrySettled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "uint256", - name: "refunded", - type: "uint256", - }, - ], - name: "calculateAmountAfterSettlement", - outputs: [ - { - internalType: "uint256", - name: "amountAfterSettlement", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "dynamicFeeRateForExchange", - outputs: [ - { - internalType: "uint256", - name: "feeRate", - type: "uint256", - }, - { - internalType: "bool", - name: "tooVolatile", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "exchangeForAddress", - type: "address", - }, - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "destinationAddress", - type: "address", - }, - { - internalType: "bool", - name: "virtualSynth", - type: "bool", - }, - { - internalType: "address", - name: "rewardAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "exchange", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - { - internalType: "contract IVirtualSynth", - name: "vSynth", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "exchangeAtomically", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "feeRateForExchange", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "getAmountsForExchange", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "uint256", - name: "exchangeFeeRate", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "hasWaitingPeriodOrSettlementOwing", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "isSynthRateInvalid", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "lastExchangeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "maxSecsLeftInWaitingPeriod", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "priceDeviationThresholdFactor", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "settle", - outputs: [ - { - internalType: "uint256", - name: "reclaimed", - type: "uint256", - }, - { - internalType: "uint256", - name: "refunded", - type: "uint256", - }, - { - internalType: "uint256", - name: "numEntriesSettled", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "settlementOwing", - outputs: [ - { - internalType: "uint256", - name: "reclaimAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "rebateAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "numEntries", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "tradingRewardsEnabled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "waitingPeriodSecs", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'src', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'dest', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'exchangeFeeRate', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'roundIdForSrc', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'roundIdForDest', + type: 'uint256', + }, + ], + name: 'ExchangeEntryAppended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'src', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'dest', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reclaim', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'rebate', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'srcRoundIdAtPeriodEnd', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'destRoundIdAtPeriodEnd', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'exchangeTimestamp', + type: 'uint256', + }, + ], + name: 'ExchangeEntrySettled', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'refunded', + type: 'uint256', + }, + ], + name: 'calculateAmountAfterSettlement', + outputs: [ + { + internalType: 'uint256', + name: 'amountAfterSettlement', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'dynamicFeeRateForExchange', + outputs: [ + { + internalType: 'uint256', + name: 'feeRate', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'tooVolatile', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'exchangeForAddress', + type: 'address', + }, + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'destinationAddress', + type: 'address', + }, + { + internalType: 'bool', + name: 'virtualSynth', + type: 'bool', + }, + { + internalType: 'address', + name: 'rewardAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'exchange', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + { + internalType: 'contract IVirtualSynth', + name: 'vSynth', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'exchangeAtomically', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'feeRateForExchange', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'getAmountsForExchange', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'exchangeFeeRate', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'hasWaitingPeriodOrSettlementOwing', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'isSynthRateInvalid', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'lastExchangeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'maxSecsLeftInWaitingPeriod', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'priceDeviationThresholdFactor', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'settle', + outputs: [ + { + internalType: 'uint256', + name: 'reclaimed', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'refunded', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'numEntriesSettled', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'settlementOwing', + outputs: [ + { + internalType: 'uint256', + name: 'reclaimAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'rebateAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'numEntries', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'tradingRewardsEnabled', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'waitingPeriodSecs', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class Exchanger__factory { - static readonly abi = _abi; - static createInterface(): ExchangerInterface { - return new utils.Interface(_abi) as ExchangerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): Exchanger { - return new Contract(address, _abi, signerOrProvider) as Exchanger; - } + static readonly abi = _abi + static createInterface(): ExchangerInterface { + return new utils.Interface(_abi) as ExchangerInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): Exchanger { + return new Contract(address, _abi, signerOrProvider) as Exchanger + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts index beb3ecd82c..aac115b7cf 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts @@ -2,936 +2,930 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - FuturesMarketData, - FuturesMarketDataInterface, -} from "../FuturesMarketData"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { FuturesMarketData, FuturesMarketDataInterface } from '../FuturesMarketData' const _abi = [ - { - inputs: [ - { - internalType: "contract IAddressResolver", - name: "_resolverProxy", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [], - name: "allMarketSummaries", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct FuturesMarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "globals", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "minInitialMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationFeeRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationBufferRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "minKeeperFee", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FuturesGlobals", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IFuturesMarket", - name: "market", - type: "address", - }, - ], - name: "marketDetails", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValueUSD", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.MarketLimits", - name: "limits", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxFundingRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScaleUSD", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FundingParameters", - name: "fundingParameters", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.Sides", - name: "sides", - type: "tuple", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - ], - internalType: "struct FuturesMarketData.MarketSizeDetails", - name: "marketSizeDetails", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - internalType: "struct FuturesMarketData.PriceDetails", - name: "priceDetails", - type: "tuple", - }, - ], - internalType: "struct FuturesMarketData.MarketData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "marketDetailsForKey", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValueUSD", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.MarketLimits", - name: "limits", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxFundingRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScaleUSD", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FundingParameters", - name: "fundingParameters", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.Sides", - name: "sides", - type: "tuple", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - ], - internalType: "struct FuturesMarketData.MarketSizeDetails", - name: "marketSizeDetails", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - internalType: "struct FuturesMarketData.PriceDetails", - name: "priceDetails", - type: "tuple", - }, - ], - internalType: "struct FuturesMarketData.MarketData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address[]", - name: "markets", - type: "address[]", - }, - ], - name: "marketSummaries", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct FuturesMarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "marketKeys", - type: "bytes32[]", - }, - ], - name: "marketSummariesForKeys", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - ], - internalType: "struct FuturesMarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct FuturesMarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "parameters", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValueUSD", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScaleUSD", - type: "uint256", - }, - ], - internalType: "struct IFuturesMarketSettings.Parameters", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IFuturesMarket", - name: "market", - type: "address", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positionDetails", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IFuturesMarketBaseTypes.Position", - name: "position", - type: "tuple", - }, - { - internalType: "int256", - name: "notionalValue", - type: "int256", - }, - { - internalType: "int256", - name: "profitLoss", - type: "int256", - }, - { - internalType: "int256", - name: "accruedFunding", - type: "int256", - }, - { - internalType: "uint256", - name: "remainingMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "accessibleMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPrice", - type: "uint256", - }, - { - internalType: "bool", - name: "canLiquidatePosition", - type: "bool", - }, - ], - internalType: "struct FuturesMarketData.PositionData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positionDetailsForMarketKey", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IFuturesMarketBaseTypes.Position", - name: "position", - type: "tuple", - }, - { - internalType: "int256", - name: "notionalValue", - type: "int256", - }, - { - internalType: "int256", - name: "profitLoss", - type: "int256", - }, - { - internalType: "int256", - name: "accruedFunding", - type: "int256", - }, - { - internalType: "uint256", - name: "remainingMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "accessibleMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPrice", - type: "uint256", - }, - { - internalType: "bool", - name: "canLiquidatePosition", - type: "bool", - }, - ], - internalType: "struct FuturesMarketData.PositionData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverProxy", - outputs: [ - { - internalType: "contract IAddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'contract IAddressResolver', + name: '_resolverProxy', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + constant: true, + inputs: [], + name: 'allMarketSummaries', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct FuturesMarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'globals', + outputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'minInitialMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationFeeRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationBufferRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'minKeeperFee', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FuturesGlobals', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IFuturesMarket', + name: 'market', + type: 'address', + }, + ], + name: 'marketDetails', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValueUSD', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.MarketLimits', + name: 'limits', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxFundingRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScaleUSD', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FundingParameters', + name: 'fundingParameters', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.Sides', + name: 'sides', + type: 'tuple', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + ], + internalType: 'struct FuturesMarketData.MarketSizeDetails', + name: 'marketSizeDetails', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + internalType: 'struct FuturesMarketData.PriceDetails', + name: 'priceDetails', + type: 'tuple', + }, + ], + internalType: 'struct FuturesMarketData.MarketData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'marketDetailsForKey', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValueUSD', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.MarketLimits', + name: 'limits', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxFundingRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScaleUSD', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FundingParameters', + name: 'fundingParameters', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.Sides', + name: 'sides', + type: 'tuple', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + ], + internalType: 'struct FuturesMarketData.MarketSizeDetails', + name: 'marketSizeDetails', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + internalType: 'struct FuturesMarketData.PriceDetails', + name: 'priceDetails', + type: 'tuple', + }, + ], + internalType: 'struct FuturesMarketData.MarketData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address[]', + name: 'markets', + type: 'address[]', + }, + ], + name: 'marketSummaries', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct FuturesMarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'marketKeys', + type: 'bytes32[]', + }, + ], + name: 'marketSummariesForKeys', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + ], + internalType: 'struct FuturesMarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct FuturesMarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'parameters', + outputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValueUSD', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScaleUSD', + type: 'uint256', + }, + ], + internalType: 'struct IFuturesMarketSettings.Parameters', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IFuturesMarket', + name: 'market', + type: 'address', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positionDetails', + outputs: [ + { + components: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IFuturesMarketBaseTypes.Position', + name: 'position', + type: 'tuple', + }, + { + internalType: 'int256', + name: 'notionalValue', + type: 'int256', + }, + { + internalType: 'int256', + name: 'profitLoss', + type: 'int256', + }, + { + internalType: 'int256', + name: 'accruedFunding', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'remainingMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'accessibleMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPrice', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'canLiquidatePosition', + type: 'bool', + }, + ], + internalType: 'struct FuturesMarketData.PositionData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positionDetailsForMarketKey', + outputs: [ + { + components: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IFuturesMarketBaseTypes.Position', + name: 'position', + type: 'tuple', + }, + { + internalType: 'int256', + name: 'notionalValue', + type: 'int256', + }, + { + internalType: 'int256', + name: 'profitLoss', + type: 'int256', + }, + { + internalType: 'int256', + name: 'accruedFunding', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'remainingMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'accessibleMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPrice', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'canLiquidatePosition', + type: 'bool', + }, + ], + internalType: 'struct FuturesMarketData.PositionData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverProxy', + outputs: [ + { + internalType: 'contract IAddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class FuturesMarketData__factory { - static readonly abi = _abi; - static createInterface(): FuturesMarketDataInterface { - return new utils.Interface(_abi) as FuturesMarketDataInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): FuturesMarketData { - return new Contract(address, _abi, signerOrProvider) as FuturesMarketData; - } + static readonly abi = _abi + static createInterface(): FuturesMarketDataInterface { + return new utils.Interface(_abi) as FuturesMarketDataInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketData { + return new Contract(address, _abi, signerOrProvider) as FuturesMarketData + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts index 54e5e0677e..6162446e4f 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts @@ -2,892 +2,885 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - FuturesMarketSettings, - FuturesMarketSettingsInterface, -} from "../FuturesMarketSettings"; + FuturesMarketSettings, + FuturesMarketSettingsInterface, +} from '../FuturesMarketSettings' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "bps", - type: "uint256", - }, - ], - name: "LiquidationBufferRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "bps", - type: "uint256", - }, - ], - name: "LiquidationFeeRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "minMargin", - type: "uint256", - }, - ], - name: "MinInitialMarginUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "sUSD", - type: "uint256", - }, - ], - name: "MinKeeperFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "parameter", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "ParameterUpdated", - type: "event", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationBufferRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationFeeRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "makerFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "makerFeeNextPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxFundingRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxLeverage", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxMarketValueUSD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minInitialMargin", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minKeeperFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "nextPriceConfirmWindow", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "parameters", - outputs: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValueUSD", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScaleUSD", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_ratio", - type: "uint256", - }, - ], - name: "setLiquidationBufferRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_ratio", - type: "uint256", - }, - ], - name: "setLiquidationFeeRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_makerFee", - type: "uint256", - }, - ], - name: "setMakerFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_makerFeeNextPrice", - type: "uint256", - }, - ], - name: "setMakerFeeNextPrice", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxFundingRate", - type: "uint256", - }, - ], - name: "setMaxFundingRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxLeverage", - type: "uint256", - }, - ], - name: "setMaxLeverage", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxMarketValueUSD", - type: "uint256", - }, - ], - name: "setMaxMarketValueUSD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_minMargin", - type: "uint256", - }, - ], - name: "setMinInitialMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_sUSD", - type: "uint256", - }, - ], - name: "setMinKeeperFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_nextPriceConfirmWindow", - type: "uint256", - }, - ], - name: "setNextPriceConfirmWindow", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "_makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "_takerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "_makerFeeNextPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "_nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxMarketValueUSD", - type: "uint256", - }, - { - internalType: "uint256", - name: "_maxFundingRate", - type: "uint256", - }, - { - internalType: "uint256", - name: "_skewScaleUSD", - type: "uint256", - }, - ], - name: "setParameters", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_skewScaleUSD", - type: "uint256", - }, - ], - name: "setSkewScaleUSD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFee", - type: "uint256", - }, - ], - name: "setTakerFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFeeNextPrice", - type: "uint256", - }, - ], - name: "setTakerFeeNextPrice", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "skewScaleUSD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "takerFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "takerFeeNextPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - "payab`le": false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'bps', + type: 'uint256', + }, + ], + name: 'LiquidationBufferRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'bps', + type: 'uint256', + }, + ], + name: 'LiquidationFeeRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'minMargin', + type: 'uint256', + }, + ], + name: 'MinInitialMarginUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'sUSD', + type: 'uint256', + }, + ], + name: 'MinKeeperFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'parameter', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'ParameterUpdated', + type: 'event', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationBufferRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationFeeRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'makerFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'makerFeeNextPrice', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxFundingRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxLeverage', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxMarketValueUSD', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'minInitialMargin', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'minKeeperFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'nextPriceConfirmWindow', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'parameters', + outputs: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValueUSD', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScaleUSD', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_ratio', + type: 'uint256', + }, + ], + name: 'setLiquidationBufferRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_ratio', + type: 'uint256', + }, + ], + name: 'setLiquidationFeeRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_makerFee', + type: 'uint256', + }, + ], + name: 'setMakerFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_makerFeeNextPrice', + type: 'uint256', + }, + ], + name: 'setMakerFeeNextPrice', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxFundingRate', + type: 'uint256', + }, + ], + name: 'setMaxFundingRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxLeverage', + type: 'uint256', + }, + ], + name: 'setMaxLeverage', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxMarketValueUSD', + type: 'uint256', + }, + ], + name: 'setMaxMarketValueUSD', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_minMargin', + type: 'uint256', + }, + ], + name: 'setMinInitialMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_sUSD', + type: 'uint256', + }, + ], + name: 'setMinKeeperFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_nextPriceConfirmWindow', + type: 'uint256', + }, + ], + name: 'setNextPriceConfirmWindow', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_takerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_makerFeeNextPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_maxMarketValueUSD', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_maxFundingRate', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_skewScaleUSD', + type: 'uint256', + }, + ], + name: 'setParameters', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_skewScaleUSD', + type: 'uint256', + }, + ], + name: 'setSkewScaleUSD', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFee', + type: 'uint256', + }, + ], + name: 'setTakerFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFeeNextPrice', + type: 'uint256', + }, + ], + name: 'setTakerFeeNextPrice', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'skewScaleUSD', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'takerFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'takerFeeNextPrice', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + 'payab`le': false, + stateMutability: 'view', + type: 'function', + }, +] as const export class FuturesMarketSettings__factory { - static readonly abi = _abi; - static createInterface(): FuturesMarketSettingsInterface { - return new utils.Interface(_abi) as FuturesMarketSettingsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): FuturesMarketSettings { - return new Contract( - address, - _abi, - signerOrProvider - ) as FuturesMarketSettings; - } + static readonly abi = _abi + static createInterface(): FuturesMarketSettingsInterface { + return new utils.Interface(_abi) as FuturesMarketSettingsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketSettings { + return new Contract(address, _abi, signerOrProvider) as FuturesMarketSettings + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts index d7b990df4a..f3a1a4455f 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts @@ -2,1129 +2,1126 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { FuturesMarket, FuturesMarketInterface } from "../FuturesMarket"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { FuturesMarket, FuturesMarketInterface } from '../FuturesMarket' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_resolver", - type: "address", - }, - { - internalType: "bytes32", - name: "_baseAsset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "int256", - name: "funding", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "timestamp", - type: "uint256", - }, - ], - name: "FundingRecomputed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "FuturesTracking", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "marginDelta", - type: "int256", - }, - ], - name: "MarginTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "currentRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "targetRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "commitDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "keeperDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "NextPriceOrderRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "targetRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "commitDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "keeperDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "NextPriceOrderSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "liquidator", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "size", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "PositionLiquidated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "margin", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "size", - type: "int256", - }, - { - indexed: false, - internalType: "int256", - name: "tradeSize", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "lastPrice", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fundingIndex", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "PositionModified", - type: "event", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accessibleMargin", - outputs: [ - { - internalType: "uint256", - name: "marginAccessible", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accruedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "assetPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "baseAsset", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "canLiquidate", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "cancelNextPriceOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "closePosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "closePositionWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currentFundingRate", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "executeNextPriceOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingLastRecomputed", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "fundingSequence", - outputs: [ - { - internalType: "int128", - name: "", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingSequenceLength", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidatePosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketDebt", - outputs: [ - { - internalType: "uint256", - name: "debt", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketKey", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSize", - outputs: [ - { - internalType: "uint128", - name: "", - type: "uint128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSizes", - outputs: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSkew", - outputs: [ - { - internalType: "int128", - name: "", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - ], - name: "modifyPosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "modifyPositionWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "nextPriceOrders", - outputs: [ - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "targetRoundId", - type: "uint128", - }, - { - internalType: "uint128", - name: "commitDeposit", - type: "uint128", - }, - { - internalType: "uint128", - name: "keeperDeposit", - type: "uint128", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "notionalValue", - outputs: [ - { - internalType: "int256", - name: "value", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - ], - name: "orderFee", - outputs: [ - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "positions", - outputs: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "postTradeDetails", - outputs: [ - { - internalType: "uint256", - name: "margin", - type: "uint256", - }, - { - internalType: "int256", - name: "size", - type: "int256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "liqPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "enum IFuturesMarketBaseTypes.Status", - name: "status", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "profitLoss", - outputs: [ - { - internalType: "int256", - name: "pnl", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "recomputeFunding", - outputs: [ - { - internalType: "uint256", - name: "lastIndex", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "remainingMargin", - outputs: [ - { - internalType: "uint256", - name: "marginRemaining", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - ], - name: "submitNextPriceOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "submitNextPriceOrderWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "marginDelta", - type: "int256", - }, - ], - name: "transferMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "unrecordedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "withdrawAllMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + { + internalType: 'bytes32', + name: '_baseAsset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'timestamp', + type: 'uint256', + }, + ], + name: 'FundingRecomputed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'FuturesTracking', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'marginDelta', + type: 'int256', + }, + ], + name: 'MarginTransferred', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'currentRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'targetRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'commitDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'keeperDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'NextPriceOrderRemoved', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'targetRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'commitDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'keeperDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'NextPriceOrderSubmitted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint256', + name: 'id', + type: 'uint256', + }, + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'liquidator', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'PositionLiquidated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint256', + name: 'id', + type: 'uint256', + }, + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'margin', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + indexed: false, + internalType: 'int256', + name: 'tradeSize', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'lastPrice', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fundingIndex', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'PositionModified', + type: 'event', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accessibleMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginAccessible', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accruedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'assetPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'baseAsset', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'canLiquidate', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'cancelNextPriceOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'closePosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'closePositionWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currentFundingRate', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'executeNextPriceOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingLastRecomputed', + outputs: [ + { + internalType: 'uint32', + name: '', + type: 'uint32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'fundingSequence', + outputs: [ + { + internalType: 'int128', + name: '', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingSequenceLength', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidatePosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketDebt', + outputs: [ + { + internalType: 'uint256', + name: 'debt', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketKey', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSize', + outputs: [ + { + internalType: 'uint128', + name: '', + type: 'uint128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSizes', + outputs: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSkew', + outputs: [ + { + internalType: 'int128', + name: '', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + ], + name: 'modifyPosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'modifyPositionWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'nextPriceOrders', + outputs: [ + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'targetRoundId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'commitDeposit', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'keeperDeposit', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'notionalValue', + outputs: [ + { + internalType: 'int256', + name: 'value', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + ], + name: 'orderFee', + outputs: [ + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'positions', + outputs: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'postTradeDetails', + outputs: [ + { + internalType: 'uint256', + name: 'margin', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liqPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'enum IFuturesMarketBaseTypes.Status', + name: 'status', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'profitLoss', + outputs: [ + { + internalType: 'int256', + name: 'pnl', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'recomputeFunding', + outputs: [ + { + internalType: 'uint256', + name: 'lastIndex', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'remainingMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginRemaining', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + ], + name: 'submitNextPriceOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'submitNextPriceOrderWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'marginDelta', + type: 'int256', + }, + ], + name: 'transferMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'unrecordedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'withdrawAllMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class FuturesMarket__factory { - static readonly abi = _abi; - static createInterface(): FuturesMarketInterface { - return new utils.Interface(_abi) as FuturesMarketInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): FuturesMarket { - return new Contract(address, _abi, signerOrProvider) as FuturesMarket; - } + static readonly abi = _abi + static createInterface(): FuturesMarketInterface { + return new utils.Interface(_abi) as FuturesMarketInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarket { + return new Contract(address, _abi, signerOrProvider) as FuturesMarket + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts index f81ab47f06..8d78fd7ada 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts @@ -2,1150 +2,1144 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - KwentaArrakisVault, - KwentaArrakisVaultInterface, -} from "../KwentaArrakisVault"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { KwentaArrakisVault, KwentaArrakisVaultInterface } from '../KwentaArrakisVault' const _abi = [ - { - inputs: [ - { - internalType: "address payable", - name: "_gelato", - type: "address", - }, - { - internalType: "address", - name: "_arrakisTreasury", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "receiver", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "burnAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amount0Out", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amount1Out", - type: "uint256", - }, - { - indexed: false, - internalType: "uint128", - name: "liquidityBurned", - type: "uint128", - }, - ], - name: "Burned", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "feesEarned0", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "feesEarned1", - type: "uint256", - }, - ], - name: "FeesEarned", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "receiver", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "mintAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amount0In", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amount1In", - type: "uint256", - }, - { - indexed: false, - internalType: "uint128", - name: "liquidityMinted", - type: "uint128", - }, - ], - name: "Minted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousManager", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newManager", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "int24", - name: "lowerTick_", - type: "int24", - }, - { - indexed: false, - internalType: "int24", - name: "upperTick_", - type: "int24", - }, - { - indexed: false, - internalType: "uint128", - name: "liquidityBefore", - type: "uint128", - }, - { - indexed: false, - internalType: "uint128", - name: "liquidityAfter", - type: "uint128", - }, - ], - name: "Rebalance", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint16", - name: "managerFeeBPS", - type: "uint16", - }, - { - indexed: false, - internalType: "address", - name: "managerTreasury", - type: "address", - }, - { - indexed: false, - internalType: "uint16", - name: "gelatoRebalanceBPS", - type: "uint16", - }, - { - indexed: false, - internalType: "uint16", - name: "gelatoSlippageBPS", - type: "uint16", - }, - { - indexed: false, - internalType: "uint32", - name: "gelatoSlippageInterval", - type: "uint32", - }, - ], - name: "UpdateManagerParams", - type: "event", - }, - { - inputs: [], - name: "GELATO", - outputs: [ - { - internalType: "address payable", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "RESTRICTED_MINT_ENABLED", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "spender", - type: "address", - }, - ], - name: "allowance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "approve", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "arrakisBalance0", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "arrakisBalance1", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "arrakisFeeBPS", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "arrakisTreasury", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "burnAmount", - type: "uint256", - }, - { - internalType: "address", - name: "receiver", - type: "address", - }, - ], - name: "burn", - outputs: [ - { - internalType: "uint256", - name: "amount0", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1", - type: "uint256", - }, - { - internalType: "uint128", - name: "liquidityBurned", - type: "uint128", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "decimals", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "subtractedValue", - type: "uint256", - }, - ], - name: "decreaseAllowance", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "int24", - name: "newLowerTick", - type: "int24", - }, - { - internalType: "int24", - name: "newUpperTick", - type: "int24", - }, - { - internalType: "uint160", - name: "swapThresholdPrice", - type: "uint160", - }, - { - internalType: "uint256", - name: "swapAmountBPS", - type: "uint256", - }, - { - internalType: "bool", - name: "zeroForOne", - type: "bool", - }, - ], - name: "executiveRebalance", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "gelatoRebalanceBPS", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "gelatoSlippageBPS", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "gelatoSlippageInterval", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "amount0Max", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1Max", - type: "uint256", - }, - ], - name: "getMintAmounts", - outputs: [ - { - internalType: "uint256", - name: "amount0", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1", - type: "uint256", - }, - { - internalType: "uint256", - name: "mintAmount", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getPositionID", - outputs: [ - { - internalType: "bytes32", - name: "positionID", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getUnderlyingBalances", - outputs: [ - { - internalType: "uint256", - name: "amount0Current", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1Current", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint160", - name: "sqrtRatioX96", - type: "uint160", - }, - ], - name: "getUnderlyingBalancesAtPrice", - outputs: [ - { - internalType: "uint256", - name: "amount0Current", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1Current", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "addedValue", - type: "uint256", - }, - ], - name: "increaseAllowance", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "_name", - type: "string", - }, - { - internalType: "string", - name: "_symbol", - type: "string", - }, - { - internalType: "address", - name: "_pool", - type: "address", - }, - { - internalType: "uint16", - name: "_managerFeeBPS", - type: "uint16", - }, - { - internalType: "int24", - name: "_lowerTick", - type: "int24", - }, - { - internalType: "int24", - name: "_upperTick", - type: "int24", - }, - { - internalType: "address", - name: "_manager_", - type: "address", - }, - ], - name: "initialize", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "lowerTick", - outputs: [ - { - internalType: "int24", - name: "", - type: "int24", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "manager", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "managerBalance0", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "managerBalance1", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "managerFeeBPS", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "managerTreasury", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "mintAmount", - type: "uint256", - }, - { - internalType: "address", - name: "receiver", - type: "address", - }, - ], - name: "mint", - outputs: [ - { - internalType: "uint256", - name: "amount0", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1", - type: "uint256", - }, - { - internalType: "uint128", - name: "liquidityMinted", - type: "uint128", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "pool", - outputs: [ - { - internalType: "contract IUniswapV3Pool", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint160", - name: "swapThresholdPrice", - type: "uint160", - }, - { - internalType: "uint256", - name: "swapAmountBPS", - type: "uint256", - }, - { - internalType: "bool", - name: "zeroForOne", - type: "bool", - }, - { - internalType: "uint256", - name: "feeAmount", - type: "uint256", - }, - { - internalType: "address", - name: "paymentToken", - type: "address", - }, - ], - name: "rebalance", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "restrictedMintToggle", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "toggleRestrictMint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "token0", - outputs: [ - { - internalType: "contract IERC20", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "token1", - outputs: [ - { - internalType: "contract IERC20", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "recipient", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "transfer", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "address", - name: "recipient", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "amount0Owed", - type: "uint256", - }, - { - internalType: "uint256", - name: "amount1Owed", - type: "uint256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "uniswapV3MintCallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "int256", - name: "amount0Delta", - type: "int256", - }, - { - internalType: "int256", - name: "amount1Delta", - type: "int256", - }, - { - internalType: "bytes", - name: "", - type: "bytes", - }, - ], - name: "uniswapV3SwapCallback", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "int16", - name: "newManagerFeeBPS", - type: "int16", - }, - { - internalType: "address", - name: "newManagerTreasury", - type: "address", - }, - { - internalType: "int16", - name: "newRebalanceBPS", - type: "int16", - }, - { - internalType: "int16", - name: "newSlippageBPS", - type: "int16", - }, - { - internalType: "int32", - name: "newSlippageInterval", - type: "int32", - }, - ], - name: "updateManagerParams", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "upperTick", - outputs: [ - { - internalType: "int24", - name: "", - type: "int24", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "version", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "withdrawArrakisBalance", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "withdrawManagerBalance", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address payable', + name: '_gelato', + type: 'address', + }, + { + internalType: 'address', + name: '_arrakisTreasury', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Approval', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'receiver', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'burnAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount0Out', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount1Out', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint128', + name: 'liquidityBurned', + type: 'uint128', + }, + ], + name: 'Burned', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'feesEarned0', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'feesEarned1', + type: 'uint256', + }, + ], + name: 'FeesEarned', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'receiver', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'mintAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount0In', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount1In', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint128', + name: 'liquidityMinted', + type: 'uint128', + }, + ], + name: 'Minted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'previousManager', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'newManager', + type: 'address', + }, + ], + name: 'OwnershipTransferred', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'int24', + name: 'lowerTick_', + type: 'int24', + }, + { + indexed: false, + internalType: 'int24', + name: 'upperTick_', + type: 'int24', + }, + { + indexed: false, + internalType: 'uint128', + name: 'liquidityBefore', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint128', + name: 'liquidityAfter', + type: 'uint128', + }, + ], + name: 'Rebalance', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'to', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Transfer', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint16', + name: 'managerFeeBPS', + type: 'uint16', + }, + { + indexed: false, + internalType: 'address', + name: 'managerTreasury', + type: 'address', + }, + { + indexed: false, + internalType: 'uint16', + name: 'gelatoRebalanceBPS', + type: 'uint16', + }, + { + indexed: false, + internalType: 'uint16', + name: 'gelatoSlippageBPS', + type: 'uint16', + }, + { + indexed: false, + internalType: 'uint32', + name: 'gelatoSlippageInterval', + type: 'uint32', + }, + ], + name: 'UpdateManagerParams', + type: 'event', + }, + { + inputs: [], + name: 'GELATO', + outputs: [ + { + internalType: 'address payable', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'RESTRICTED_MINT_ENABLED', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + ], + name: 'allowance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'approve', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'arrakisBalance0', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'arrakisBalance1', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'arrakisFeeBPS', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'arrakisTreasury', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'burnAmount', + type: 'uint256', + }, + { + internalType: 'address', + name: 'receiver', + type: 'address', + }, + ], + name: 'burn', + outputs: [ + { + internalType: 'uint256', + name: 'amount0', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1', + type: 'uint256', + }, + { + internalType: 'uint128', + name: 'liquidityBurned', + type: 'uint128', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'decimals', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'subtractedValue', + type: 'uint256', + }, + ], + name: 'decreaseAllowance', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'int24', + name: 'newLowerTick', + type: 'int24', + }, + { + internalType: 'int24', + name: 'newUpperTick', + type: 'int24', + }, + { + internalType: 'uint160', + name: 'swapThresholdPrice', + type: 'uint160', + }, + { + internalType: 'uint256', + name: 'swapAmountBPS', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'zeroForOne', + type: 'bool', + }, + ], + name: 'executiveRebalance', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'gelatoRebalanceBPS', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'gelatoSlippageBPS', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'gelatoSlippageInterval', + outputs: [ + { + internalType: 'uint32', + name: '', + type: 'uint32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'amount0Max', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1Max', + type: 'uint256', + }, + ], + name: 'getMintAmounts', + outputs: [ + { + internalType: 'uint256', + name: 'amount0', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'mintAmount', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getPositionID', + outputs: [ + { + internalType: 'bytes32', + name: 'positionID', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getUnderlyingBalances', + outputs: [ + { + internalType: 'uint256', + name: 'amount0Current', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1Current', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint160', + name: 'sqrtRatioX96', + type: 'uint160', + }, + ], + name: 'getUnderlyingBalancesAtPrice', + outputs: [ + { + internalType: 'uint256', + name: 'amount0Current', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1Current', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'addedValue', + type: 'uint256', + }, + ], + name: 'increaseAllowance', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'string', + name: '_name', + type: 'string', + }, + { + internalType: 'string', + name: '_symbol', + type: 'string', + }, + { + internalType: 'address', + name: '_pool', + type: 'address', + }, + { + internalType: 'uint16', + name: '_managerFeeBPS', + type: 'uint16', + }, + { + internalType: 'int24', + name: '_lowerTick', + type: 'int24', + }, + { + internalType: 'int24', + name: '_upperTick', + type: 'int24', + }, + { + internalType: 'address', + name: '_manager_', + type: 'address', + }, + ], + name: 'initialize', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'lowerTick', + outputs: [ + { + internalType: 'int24', + name: '', + type: 'int24', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'manager', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'managerBalance0', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'managerBalance1', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'managerFeeBPS', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'managerTreasury', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'mintAmount', + type: 'uint256', + }, + { + internalType: 'address', + name: 'receiver', + type: 'address', + }, + ], + name: 'mint', + outputs: [ + { + internalType: 'uint256', + name: 'amount0', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1', + type: 'uint256', + }, + { + internalType: 'uint128', + name: 'liquidityMinted', + type: 'uint128', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'name', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'pool', + outputs: [ + { + internalType: 'contract IUniswapV3Pool', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint160', + name: 'swapThresholdPrice', + type: 'uint160', + }, + { + internalType: 'uint256', + name: 'swapAmountBPS', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'zeroForOne', + type: 'bool', + }, + { + internalType: 'uint256', + name: 'feeAmount', + type: 'uint256', + }, + { + internalType: 'address', + name: 'paymentToken', + type: 'address', + }, + ], + name: 'rebalance', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'renounceOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'restrictedMintToggle', + outputs: [ + { + internalType: 'uint16', + name: '', + type: 'uint16', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'symbol', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'toggleRestrictMint', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'token0', + outputs: [ + { + internalType: 'contract IERC20', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'token1', + outputs: [ + { + internalType: 'contract IERC20', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'recipient', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'transfer', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + { + internalType: 'address', + name: 'recipient', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'transferFrom', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'amount0Owed', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'amount1Owed', + type: 'uint256', + }, + { + internalType: 'bytes', + name: '', + type: 'bytes', + }, + ], + name: 'uniswapV3MintCallback', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'int256', + name: 'amount0Delta', + type: 'int256', + }, + { + internalType: 'int256', + name: 'amount1Delta', + type: 'int256', + }, + { + internalType: 'bytes', + name: '', + type: 'bytes', + }, + ], + name: 'uniswapV3SwapCallback', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'int16', + name: 'newManagerFeeBPS', + type: 'int16', + }, + { + internalType: 'address', + name: 'newManagerTreasury', + type: 'address', + }, + { + internalType: 'int16', + name: 'newRebalanceBPS', + type: 'int16', + }, + { + internalType: 'int16', + name: 'newSlippageBPS', + type: 'int16', + }, + { + internalType: 'int32', + name: 'newSlippageInterval', + type: 'int32', + }, + ], + name: 'updateManagerParams', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'upperTick', + outputs: [ + { + internalType: 'int24', + name: '', + type: 'int24', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'version', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'withdrawArrakisBalance', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'withdrawManagerBalance', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class KwentaArrakisVault__factory { - static readonly abi = _abi; - static createInterface(): KwentaArrakisVaultInterface { - return new utils.Interface(_abi) as KwentaArrakisVaultInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): KwentaArrakisVault { - return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault; - } + static readonly abi = _abi + static createInterface(): KwentaArrakisVaultInterface { + return new utils.Interface(_abi) as KwentaArrakisVaultInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): KwentaArrakisVault { + return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts index e58d01b4fd..1d48fe29bc 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts @@ -2,724 +2,714 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - KwentaStakingRewards, - KwentaStakingRewardsInterface, -} from "../KwentaStakingRewards"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { KwentaStakingRewards, KwentaStakingRewardsInterface } from '../KwentaStakingRewards' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_rewardEscrow", - type: "address", - }, - { - internalType: "address", - name: "_supplySchedule", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "EscrowStaked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "EscrowUnstaked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Paused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Recovered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "RewardAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "RewardPaid", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newDuration", - type: "uint256", - }, - ], - name: "RewardsDurationUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Staked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "Unpaused", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Unstaked", - type: "event", - }, - { - inputs: [], - name: "_totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "earned", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "escrowedBalanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "exit", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getReward", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getRewardForDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "lastTimeRewardApplicable", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "lastUpdateTime", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "nonEscrowedBalanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "notifyRewardAmount", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "pauseStakingRewards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "periodFinish", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "tokenAddress", - type: "address", - }, - { - internalType: "uint256", - name: "tokenAmount", - type: "uint256", - }, - ], - name: "recoverERC20", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "rewardEscrow", - outputs: [ - { - internalType: "contract IRewardEscrow", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardPerToken", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardPerTokenStored", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "rewards", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardsDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_rewardsDuration", - type: "uint256", - }, - ], - name: "setRewardsDuration", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "stake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "stakeEscrow", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "supplySchedule", - outputs: [ - { - internalType: "contract ISupplySchedule", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "token", - outputs: [ - { - internalType: "contract IERC20", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "unpauseStakingRewards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "unstake", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "unstakeEscrow", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "userRewardPerTokenPaid", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_token', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardEscrow', + type: 'address', + }, + { + internalType: 'address', + name: '_supplySchedule', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'EscrowStaked', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'EscrowUnstaked', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'Paused', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'token', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Recovered', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'RewardAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'RewardPaid', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newDuration', + type: 'uint256', + }, + ], + name: 'RewardsDurationUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Staked', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'Unpaused', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Unstaked', + type: 'event', + }, + { + inputs: [], + name: '_totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'earned', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'escrowedBalanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'exit', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'getReward', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'getRewardForDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'lastTimeRewardApplicable', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'lastUpdateTime', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'nonEscrowedBalanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'notifyRewardAmount', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'pauseStakingRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'paused', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'periodFinish', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'tokenAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: 'tokenAmount', + type: 'uint256', + }, + ], + name: 'recoverERC20', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'rewardEscrow', + outputs: [ + { + internalType: 'contract IRewardEscrow', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardPerToken', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardPerTokenStored', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'rewards', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardsDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_rewardsDuration', + type: 'uint256', + }, + ], + name: 'setRewardsDuration', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'stake', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'stakeEscrow', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'supplySchedule', + outputs: [ + { + internalType: 'contract ISupplySchedule', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'token', + outputs: [ + { + internalType: 'contract IERC20', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'unpauseStakingRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'unstake', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'unstakeEscrow', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'userRewardPerTokenPaid', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class KwentaStakingRewards__factory { - static readonly abi = _abi; - static createInterface(): KwentaStakingRewardsInterface { - return new utils.Interface(_abi) as KwentaStakingRewardsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): KwentaStakingRewards { - return new Contract( - address, - _abi, - signerOrProvider - ) as KwentaStakingRewards; - } + static readonly abi = _abi + static createInterface(): KwentaStakingRewardsInterface { + return new utils.Interface(_abi) as KwentaStakingRewardsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): KwentaStakingRewards { + return new Contract(address, _abi, signerOrProvider) as KwentaStakingRewards + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts index e3baaedac2..6e9892ab52 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts @@ -2,314 +2,310 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - MultipleMerkleDistributorOp, - MultipleMerkleDistributorOpInterface, -} from "../MultipleMerkleDistributorOp"; + MultipleMerkleDistributorOp, + MultipleMerkleDistributorOpInterface, +} from '../MultipleMerkleDistributorOp' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_token", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "Claimed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "MerkleRootModified", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - internalType: "struct IMultipleMerkleDistributor.Claims[]", - name: "claims", - type: "tuple[]", - }, - ], - name: "claimMultiple", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "isClaimed", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "merkleRoots", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "merkleRoot", - type: "bytes32", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "setMerkleRootForEpoch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "token", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_token', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'Claimed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'MerkleRootModified', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'claim', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + internalType: 'struct IMultipleMerkleDistributor.Claims[]', + name: 'claims', + type: 'tuple[]', + }, + ], + name: 'claimMultiple', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'isClaimed', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'merkleRoots', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'merkleRoot', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'setMerkleRootForEpoch', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'token', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class MultipleMerkleDistributorOp__factory { - static readonly abi = _abi; - static createInterface(): MultipleMerkleDistributorOpInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorOp { - return new Contract( - address, - _abi, - signerOrProvider - ) as MultipleMerkleDistributorOp; - } + static readonly abi = _abi + static createInterface(): MultipleMerkleDistributorOpInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorOp { + return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorOp + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts index e65da0d3a8..3f7539df3e 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts @@ -2,334 +2,328 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - MultipleMerkleDistributorPerpsV2, - MultipleMerkleDistributorPerpsV2Interface, -} from "../MultipleMerkleDistributorPerpsV2"; + MultipleMerkleDistributorPerpsV2, + MultipleMerkleDistributorPerpsV2Interface, +} from '../MultipleMerkleDistributorPerpsV2' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_rewardEscrow", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "Claimed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "MerkleRootModified", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - internalType: "struct IMultipleMerkleDistributor.Claims[]", - name: "claims", - type: "tuple[]", - }, - ], - name: "claimMultiple", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "isClaimed", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "merkleRoots", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardEscrow", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "merkleRoot", - type: "bytes32", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "setMerkleRootForEpoch", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "token", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_token', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardEscrow', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'Claimed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'MerkleRootModified', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'claim', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + internalType: 'struct IMultipleMerkleDistributor.Claims[]', + name: 'claims', + type: 'tuple[]', + }, + ], + name: 'claimMultiple', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'isClaimed', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'merkleRoots', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardEscrow', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'merkleRoot', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'setMerkleRootForEpoch', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'token', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class MultipleMerkleDistributorPerpsV2__factory { - static readonly abi = _abi; - static createInterface(): MultipleMerkleDistributorPerpsV2Interface { - return new utils.Interface( - _abi - ) as MultipleMerkleDistributorPerpsV2Interface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorPerpsV2 { - return new Contract( - address, - _abi, - signerOrProvider - ) as MultipleMerkleDistributorPerpsV2; - } + static readonly abi = _abi + static createInterface(): MultipleMerkleDistributorPerpsV2Interface { + return new utils.Interface(_abi) as MultipleMerkleDistributorPerpsV2Interface + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorPerpsV2 { + return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorPerpsV2 + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts index e1759c2f52..b33171c024 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts @@ -2,340 +2,333 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - MultipleMerkleDistributor, - MultipleMerkleDistributorInterface, -} from "../MultipleMerkleDistributor"; + MultipleMerkleDistributor, + MultipleMerkleDistributorInterface, +} from '../MultipleMerkleDistributor' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_token", - type: "address", - }, - { - internalType: "address", - name: "_rewardEscrow", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "Claimed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "MerkleRootAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "claim", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - { - internalType: "bytes32[]", - name: "merkleProof", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - internalType: "struct IMultipleMerkleDistributor.Claims[]", - name: "claims", - type: "tuple[]", - }, - ], - name: "claimMultiple", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "distributionEpoch", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "epoch", - type: "uint256", - }, - ], - name: "isClaimed", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "merkleRoots", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_merkleRoot", - type: "bytes32", - }, - ], - name: "newMerkleRoot", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "rewardEscrow", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "token", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_token', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardEscrow', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'Claimed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'MerkleRootAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'claim', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + { + internalType: 'bytes32[]', + name: 'merkleProof', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + internalType: 'struct IMultipleMerkleDistributor.Claims[]', + name: 'claims', + type: 'tuple[]', + }, + ], + name: 'claimMultiple', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'distributionEpoch', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'epoch', + type: 'uint256', + }, + ], + name: 'isClaimed', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'merkleRoots', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_merkleRoot', + type: 'bytes32', + }, + ], + name: 'newMerkleRoot', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'rewardEscrow', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'token', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class MultipleMerkleDistributor__factory { - static readonly abi = _abi; - static createInterface(): MultipleMerkleDistributorInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributor { - return new Contract( - address, - _abi, - signerOrProvider - ) as MultipleMerkleDistributor; - } + static readonly abi = _abi + static createInterface(): MultipleMerkleDistributorInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): MultipleMerkleDistributor { + return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributor + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts index 762a6d7fa0..7e2b41eb18 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts @@ -2,1170 +2,1164 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - PerpsV2MarketData, - PerpsV2MarketDataInterface, -} from "../PerpsV2MarketData"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { PerpsV2MarketData, PerpsV2MarketDataInterface } from '../PerpsV2MarketData' const _abi = [ - { - inputs: [ - { - internalType: "contract IAddressResolver", - name: "_resolverProxy", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [], - name: "allMarketSummaries", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - internalType: "int256", - name: "currentFundingVelocity", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "allProxiedMarketSummaries", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - internalType: "int256", - name: "currentFundingVelocity", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "globals", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "minInitialMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationFeeRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "minKeeperFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxKeeperFee", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FuturesGlobals", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IPerpsV2MarketViews", - name: "market", - type: "address", - }, - ], - name: "marketDetails", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.MarketLimits", - name: "limits", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FundingParameters", - name: "fundingParameters", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.Sides", - name: "sides", - type: "tuple", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSizeDetails", - name: "marketSizeDetails", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - internalType: "struct PerpsV2MarketData.PriceDetails", - name: "priceDetails", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "marketDetailsForKey", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.MarketLimits", - name: "limits", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FundingParameters", - name: "fundingParameters", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - components: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.Sides", - name: "sides", - type: "tuple", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSizeDetails", - name: "marketSizeDetails", - type: "tuple", - }, - { - components: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - internalType: "struct PerpsV2MarketData.PriceDetails", - name: "priceDetails", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address[]", - name: "markets", - type: "address[]", - }, - ], - name: "marketSummaries", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - internalType: "int256", - name: "currentFundingVelocity", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "marketKeys", - type: "bytes32[]", - }, - ], - name: "marketSummariesForKeys", - outputs: [ - { - components: [ - { - internalType: "address", - name: "market", - type: "address", - }, - { - internalType: "bytes32", - name: "asset", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "marketSize", - type: "uint256", - }, - { - internalType: "int256", - name: "marketSkew", - type: "int256", - }, - { - internalType: "uint256", - name: "marketDebt", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - internalType: "int256", - name: "currentFundingVelocity", - type: "int256", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - internalType: "struct PerpsV2MarketData.FeeRates", - name: "feeRates", - type: "tuple", - }, - ], - internalType: "struct PerpsV2MarketData.MarketSummary[]", - name: "", - type: "tuple[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "parameters", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - internalType: "uint256", - name: "nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "delayedOrderConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "minDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMinAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMaxAge", - type: "uint256", - }, - { - internalType: "bytes32", - name: "offchainMarketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "offchainPriceDivergence", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPremiumMultiplier", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationBufferRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPD", - type: "uint256", - }, - ], - internalType: "struct IPerpsV2MarketSettings.Parameters", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IPerpsV2MarketViews", - name: "market", - type: "address", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positionDetails", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IPerpsV2MarketBaseTypes.Position", - name: "position", - type: "tuple", - }, - { - internalType: "int256", - name: "notionalValue", - type: "int256", - }, - { - internalType: "int256", - name: "profitLoss", - type: "int256", - }, - { - internalType: "int256", - name: "accruedFunding", - type: "int256", - }, - { - internalType: "uint256", - name: "remainingMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "accessibleMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPrice", - type: "uint256", - }, - { - internalType: "bool", - name: "canLiquidatePosition", - type: "bool", - }, - ], - internalType: "struct PerpsV2MarketData.PositionData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positionDetailsForMarketKey", - outputs: [ - { - components: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IPerpsV2MarketBaseTypes.Position", - name: "position", - type: "tuple", - }, - { - internalType: "int256", - name: "notionalValue", - type: "int256", - }, - { - internalType: "int256", - name: "profitLoss", - type: "int256", - }, - { - internalType: "int256", - name: "accruedFunding", - type: "int256", - }, - { - internalType: "uint256", - name: "remainingMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "accessibleMargin", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPrice", - type: "uint256", - }, - { - internalType: "bool", - name: "canLiquidatePosition", - type: "bool", - }, - ], - internalType: "struct PerpsV2MarketData.PositionData", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverProxy", - outputs: [ - { - internalType: "contract IAddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'contract IAddressResolver', + name: '_resolverProxy', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + constant: true, + inputs: [], + name: 'allMarketSummaries', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + internalType: 'int256', + name: 'currentFundingVelocity', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'allProxiedMarketSummaries', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + internalType: 'int256', + name: 'currentFundingVelocity', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'globals', + outputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'minInitialMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationFeeRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'minKeeperFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxKeeperFee', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FuturesGlobals', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IPerpsV2MarketViews', + name: 'market', + type: 'address', + }, + ], + name: 'marketDetails', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketLimits', + name: 'limits', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FundingParameters', + name: 'fundingParameters', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.Sides', + name: 'sides', + type: 'tuple', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSizeDetails', + name: 'marketSizeDetails', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + internalType: 'struct PerpsV2MarketData.PriceDetails', + name: 'priceDetails', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'marketDetailsForKey', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketLimits', + name: 'limits', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FundingParameters', + name: 'fundingParameters', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.Sides', + name: 'sides', + type: 'tuple', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSizeDetails', + name: 'marketSizeDetails', + type: 'tuple', + }, + { + components: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + internalType: 'struct PerpsV2MarketData.PriceDetails', + name: 'priceDetails', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address[]', + name: 'markets', + type: 'address[]', + }, + ], + name: 'marketSummaries', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + internalType: 'int256', + name: 'currentFundingVelocity', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'marketKeys', + type: 'bytes32[]', + }, + ], + name: 'marketSummariesForKeys', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'market', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'asset', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'marketSize', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'marketSkew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'marketDebt', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + internalType: 'int256', + name: 'currentFundingVelocity', + type: 'int256', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + internalType: 'struct PerpsV2MarketData.FeeRates', + name: 'feeRates', + type: 'tuple', + }, + ], + internalType: 'struct PerpsV2MarketData.MarketSummary[]', + name: '', + type: 'tuple[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'parameters', + outputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'delayedOrderConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'minDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMinAge', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMaxAge', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'offchainMarketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'offchainPriceDivergence', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPremiumMultiplier', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationBufferRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxPD', + type: 'uint256', + }, + ], + internalType: 'struct IPerpsV2MarketSettings.Parameters', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IPerpsV2MarketViews', + name: 'market', + type: 'address', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positionDetails', + outputs: [ + { + components: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IPerpsV2MarketBaseTypes.Position', + name: 'position', + type: 'tuple', + }, + { + internalType: 'int256', + name: 'notionalValue', + type: 'int256', + }, + { + internalType: 'int256', + name: 'profitLoss', + type: 'int256', + }, + { + internalType: 'int256', + name: 'accruedFunding', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'remainingMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'accessibleMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPrice', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'canLiquidatePosition', + type: 'bool', + }, + ], + internalType: 'struct PerpsV2MarketData.PositionData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positionDetailsForMarketKey', + outputs: [ + { + components: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IPerpsV2MarketBaseTypes.Position', + name: 'position', + type: 'tuple', + }, + { + internalType: 'int256', + name: 'notionalValue', + type: 'int256', + }, + { + internalType: 'int256', + name: 'profitLoss', + type: 'int256', + }, + { + internalType: 'int256', + name: 'accruedFunding', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'remainingMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'accessibleMargin', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPrice', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'canLiquidatePosition', + type: 'bool', + }, + ], + internalType: 'struct PerpsV2MarketData.PositionData', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverProxy', + outputs: [ + { + internalType: 'contract IAddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class PerpsV2MarketData__factory { - static readonly abi = _abi; - static createInterface(): PerpsV2MarketDataInterface { - return new utils.Interface(_abi) as PerpsV2MarketDataInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): PerpsV2MarketData { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData; - } + static readonly abi = _abi + static createInterface(): PerpsV2MarketDataInterface { + return new utils.Interface(_abi) as PerpsV2MarketDataInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketData { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts index 78f919de23..5974e9b3a7 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts @@ -2,1665 +2,1658 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - PerpsV2MarketSettings, - PerpsV2MarketSettingsInterface, -} from "../PerpsV2MarketSettings"; + PerpsV2MarketSettings, + PerpsV2MarketSettingsInterface, +} from '../PerpsV2MarketSettings' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "keeperFee", - type: "uint256", - }, - ], - name: "KeeperLiquidationFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "bps", - type: "uint256", - }, - ], - name: "LiquidationBufferRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "bps", - type: "uint256", - }, - ], - name: "LiquidationFeeRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "sUSD", - type: "uint256", - }, - ], - name: "MaxKeeperFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "minMargin", - type: "uint256", - }, - ], - name: "MinInitialMarginUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "sUSD", - type: "uint256", - }, - ], - name: "MinKeeperFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "parameter", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "ParameterUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "parameter", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "value", - type: "bytes32", - }, - ], - name: "ParameterUpdatedBytes32", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "delayedOrderConfirmWindow", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "keeperLiquidationFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "liquidationBufferRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationFeeRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "liquidationPremiumMultiplier", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "makerFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "makerFeeDelayedOrder", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "makerFeeOffchainDelayedOrder", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxDelayTimeDelta", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxFundingVelocity", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "maxKeeperFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxLeverage", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxLiquidationDelta", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxMarketValue", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "maxPD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "minDelayTimeDelta", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minInitialMargin", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minKeeperFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "nextPriceConfirmWindow", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "offchainDelayedOrderMaxAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "offchainDelayedOrderMinAge", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "offchainMarketKey", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "offchainPriceDivergence", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "parameters", - outputs: [ - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - internalType: "uint256", - name: "nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "delayedOrderConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "minDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMinAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMaxAge", - type: "uint256", - }, - { - internalType: "bytes32", - name: "offchainMarketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "offchainPriceDivergence", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPremiumMultiplier", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationBufferRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPD", - type: "uint256", - }, - ], - internalType: "struct IPerpsV2MarketSettings.Parameters", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_delayedOrderConfirmWindow", - type: "uint256", - }, - ], - name: "setDelayedOrderConfirmWindow", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_keeperFee", - type: "uint256", - }, - ], - name: "setKeeperLiquidationFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_ratio", - type: "uint256", - }, - ], - name: "setLiquidationBufferRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_ratio", - type: "uint256", - }, - ], - name: "setLiquidationFeeRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_liquidationPremiumMultiplier", - type: "uint256", - }, - ], - name: "setLiquidationPremiumMultiplier", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_makerFee", - type: "uint256", - }, - ], - name: "setMakerFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_makerFeeDelayedOrder", - type: "uint256", - }, - ], - name: "setMakerFeeDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_makerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - name: "setMakerFeeOffchainDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxDelayTimeDelta", - type: "uint256", - }, - ], - name: "setMaxDelayTimeDelta", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxFundingVelocity", - type: "uint256", - }, - ], - name: "setMaxFundingVelocity", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_sUSD", - type: "uint256", - }, - ], - name: "setMaxKeeperFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxLeverage", - type: "uint256", - }, - ], - name: "setMaxLeverage", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxLiquidationDelta", - type: "uint256", - }, - ], - name: "setMaxLiquidationDelta", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxMarketValue", - type: "uint256", - }, - ], - name: "setMaxMarketValue", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_maxPD", - type: "uint256", - }, - ], - name: "setMaxPD", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_minDelayTimeDelta", - type: "uint256", - }, - ], - name: "setMinDelayTimeDelta", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_minMargin", - type: "uint256", - }, - ], - name: "setMinInitialMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_sUSD", - type: "uint256", - }, - ], - name: "setMinKeeperFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_nextPriceConfirmWindow", - type: "uint256", - }, - ], - name: "setNextPriceConfirmWindow", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_offchainDelayedOrderMaxAge", - type: "uint256", - }, - ], - name: "setOffchainDelayedOrderMaxAge", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_offchainDelayedOrderMinAge", - type: "uint256", - }, - ], - name: "setOffchainDelayedOrderMinAge", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "_offchainMarketKey", - type: "bytes32", - }, - ], - name: "setOffchainMarketKey", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_offchainPriceDivergence", - type: "uint256", - }, - ], - name: "setOffchainPriceDivergence", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - components: [ - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "makerFeeOffchainDelayedOrder", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLeverage", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - internalType: "uint256", - name: "nextPriceConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "delayedOrderConfirmWindow", - type: "uint256", - }, - { - internalType: "uint256", - name: "minDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxDelayTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMinAge", - type: "uint256", - }, - { - internalType: "uint256", - name: "offchainDelayedOrderMaxAge", - type: "uint256", - }, - { - internalType: "bytes32", - name: "offchainMarketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "offchainPriceDivergence", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationPremiumMultiplier", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationBufferRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxPD", - type: "uint256", - }, - ], - internalType: "struct IPerpsV2MarketSettings.Parameters", - name: "_parameters", - type: "tuple", - }, - ], - name: "setParameters", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_skewScale", - type: "uint256", - }, - ], - name: "setSkewScale", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFee", - type: "uint256", - }, - ], - name: "setTakerFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFeeDelayedOrder", - type: "uint256", - }, - ], - name: "setTakerFeeDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_takerFeeOffchainDelayedOrder", - type: "uint256", - }, - ], - name: "setTakerFeeOffchainDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "skewScale", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "takerFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "takerFeeDelayedOrder", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "takerFeeOffchainDelayedOrder", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'keeperFee', + type: 'uint256', + }, + ], + name: 'KeeperLiquidationFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'bps', + type: 'uint256', + }, + ], + name: 'LiquidationBufferRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'bps', + type: 'uint256', + }, + ], + name: 'LiquidationFeeRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'sUSD', + type: 'uint256', + }, + ], + name: 'MaxKeeperFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'minMargin', + type: 'uint256', + }, + ], + name: 'MinInitialMarginUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'sUSD', + type: 'uint256', + }, + ], + name: 'MinKeeperFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'parameter', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'ParameterUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'parameter', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'value', + type: 'bytes32', + }, + ], + name: 'ParameterUpdatedBytes32', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'delayedOrderConfirmWindow', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'keeperLiquidationFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'liquidationBufferRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationFeeRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'liquidationPremiumMultiplier', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'makerFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'makerFeeDelayedOrder', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'makerFeeOffchainDelayedOrder', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxDelayTimeDelta', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxFundingVelocity', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'maxKeeperFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxLeverage', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxLiquidationDelta', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxMarketValue', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'maxPD', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'minDelayTimeDelta', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'minInitialMargin', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'minKeeperFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'nextPriceConfirmWindow', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'offchainDelayedOrderMaxAge', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'offchainDelayedOrderMinAge', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'offchainMarketKey', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'offchainPriceDivergence', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'parameters', + outputs: [ + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'delayedOrderConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'minDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMinAge', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMaxAge', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'offchainMarketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'offchainPriceDivergence', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPremiumMultiplier', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationBufferRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxPD', + type: 'uint256', + }, + ], + internalType: 'struct IPerpsV2MarketSettings.Parameters', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_delayedOrderConfirmWindow', + type: 'uint256', + }, + ], + name: 'setDelayedOrderConfirmWindow', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_keeperFee', + type: 'uint256', + }, + ], + name: 'setKeeperLiquidationFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_ratio', + type: 'uint256', + }, + ], + name: 'setLiquidationBufferRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_ratio', + type: 'uint256', + }, + ], + name: 'setLiquidationFeeRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_liquidationPremiumMultiplier', + type: 'uint256', + }, + ], + name: 'setLiquidationPremiumMultiplier', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_makerFee', + type: 'uint256', + }, + ], + name: 'setMakerFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_makerFeeDelayedOrder', + type: 'uint256', + }, + ], + name: 'setMakerFeeDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + name: 'setMakerFeeOffchainDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxDelayTimeDelta', + type: 'uint256', + }, + ], + name: 'setMaxDelayTimeDelta', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxFundingVelocity', + type: 'uint256', + }, + ], + name: 'setMaxFundingVelocity', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_sUSD', + type: 'uint256', + }, + ], + name: 'setMaxKeeperFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxLeverage', + type: 'uint256', + }, + ], + name: 'setMaxLeverage', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxLiquidationDelta', + type: 'uint256', + }, + ], + name: 'setMaxLiquidationDelta', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxMarketValue', + type: 'uint256', + }, + ], + name: 'setMaxMarketValue', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_maxPD', + type: 'uint256', + }, + ], + name: 'setMaxPD', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_minDelayTimeDelta', + type: 'uint256', + }, + ], + name: 'setMinDelayTimeDelta', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_minMargin', + type: 'uint256', + }, + ], + name: 'setMinInitialMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_sUSD', + type: 'uint256', + }, + ], + name: 'setMinKeeperFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_nextPriceConfirmWindow', + type: 'uint256', + }, + ], + name: 'setNextPriceConfirmWindow', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_offchainDelayedOrderMaxAge', + type: 'uint256', + }, + ], + name: 'setOffchainDelayedOrderMaxAge', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_offchainDelayedOrderMinAge', + type: 'uint256', + }, + ], + name: 'setOffchainDelayedOrderMinAge', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: '_offchainMarketKey', + type: 'bytes32', + }, + ], + name: 'setOffchainMarketKey', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_offchainPriceDivergence', + type: 'uint256', + }, + ], + name: 'setOffchainPriceDivergence', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'makerFeeOffchainDelayedOrder', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLeverage', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'nextPriceConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'delayedOrderConfirmWindow', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'minDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxDelayTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMinAge', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'offchainDelayedOrderMaxAge', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'offchainMarketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'offchainPriceDivergence', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationPremiumMultiplier', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationBufferRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxPD', + type: 'uint256', + }, + ], + internalType: 'struct IPerpsV2MarketSettings.Parameters', + name: '_parameters', + type: 'tuple', + }, + ], + name: 'setParameters', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_skewScale', + type: 'uint256', + }, + ], + name: 'setSkewScale', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFee', + type: 'uint256', + }, + ], + name: 'setTakerFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFeeDelayedOrder', + type: 'uint256', + }, + ], + name: 'setTakerFeeDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_takerFeeOffchainDelayedOrder', + type: 'uint256', + }, + ], + name: 'setTakerFeeOffchainDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'skewScale', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'takerFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'takerFeeDelayedOrder', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'takerFeeOffchainDelayedOrder', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class PerpsV2MarketSettings__factory { - static readonly abi = _abi; - static createInterface(): PerpsV2MarketSettingsInterface { - return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): PerpsV2MarketSettings { - return new Contract( - address, - _abi, - signerOrProvider - ) as PerpsV2MarketSettings; - } + static readonly abi = _abi + static createInterface(): PerpsV2MarketSettingsInterface { + return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketSettings { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketSettings + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts index e4e9388878..772645baef 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts @@ -2,806 +2,800 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - PerpsV2MarketViews, - PerpsV2MarketViewsInterface, -} from "../PerpsV2MarketViews"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { PerpsV2MarketViews, PerpsV2MarketViewsInterface } from '../PerpsV2MarketViews' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_marketState", - type: "address", - }, - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accessibleMargin", - outputs: [ - { - internalType: "uint256", - name: "marginAccessible", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accruedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "assetPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "baseAsset", - outputs: [ - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "canLiquidate", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currentFundingRate", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currentFundingVelocity", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - ], - name: "fillPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingLastRecomputed", - outputs: [ - { - internalType: "uint32", - name: "", - type: "uint32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - ], - name: "fundingSequence", - outputs: [ - { - internalType: "int128", - name: "", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingSequenceLength", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketDebt", - outputs: [ - { - internalType: "uint256", - name: "debt", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketKey", - outputs: [ - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSize", - outputs: [ - { - internalType: "uint128", - name: "", - type: "uint128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSizes", - outputs: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSkew", - outputs: [ - { - internalType: "int128", - name: "", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketState", - outputs: [ - { - internalType: "contract IPerpsV2MarketState", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "notionalValue", - outputs: [ - { - internalType: "int256", - name: "value", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "enum IPerpsV2MarketBaseTypes.OrderType", - name: "orderType", - type: "uint8", - }, - ], - name: "orderFee", - outputs: [ - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positions", - outputs: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IPerpsV2MarketBaseTypes.Position", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "tradePrice", - type: "uint256", - }, - { - internalType: "enum IPerpsV2MarketBaseTypes.OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "postTradeDetails", - outputs: [ - { - internalType: "uint256", - name: "margin", - type: "uint256", - }, - { - internalType: "int256", - name: "size", - type: "int256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "liqPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "enum IPerpsV2MarketBaseTypes.Status", - name: "status", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "profitLoss", - outputs: [ - { - internalType: "int256", - name: "pnl", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "remainingMargin", - outputs: [ - { - internalType: "uint256", - name: "marginRemaining", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "unrecordedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_marketState', + type: 'address', + }, + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accessibleMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginAccessible', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accruedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'assetPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'baseAsset', + outputs: [ + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'canLiquidate', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currentFundingRate', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currentFundingVelocity', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + ], + name: 'fillPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingLastRecomputed', + outputs: [ + { + internalType: 'uint32', + name: '', + type: 'uint32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + ], + name: 'fundingSequence', + outputs: [ + { + internalType: 'int128', + name: '', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingSequenceLength', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketDebt', + outputs: [ + { + internalType: 'uint256', + name: 'debt', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketKey', + outputs: [ + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSize', + outputs: [ + { + internalType: 'uint128', + name: '', + type: 'uint128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSizes', + outputs: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSkew', + outputs: [ + { + internalType: 'int128', + name: '', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketState', + outputs: [ + { + internalType: 'contract IPerpsV2MarketState', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'notionalValue', + outputs: [ + { + internalType: 'int256', + name: 'value', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', + name: 'orderType', + type: 'uint8', + }, + ], + name: 'orderFee', + outputs: [ + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positions', + outputs: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IPerpsV2MarketBaseTypes.Position', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'tradePrice', + type: 'uint256', + }, + { + internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', + name: 'orderType', + type: 'uint8', + }, + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'postTradeDetails', + outputs: [ + { + internalType: 'uint256', + name: 'margin', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liqPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'enum IPerpsV2MarketBaseTypes.Status', + name: 'status', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'profitLoss', + outputs: [ + { + internalType: 'int256', + name: 'pnl', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'remainingMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginRemaining', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'unrecordedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class PerpsV2MarketViews__factory { - static readonly abi = _abi; - static createInterface(): PerpsV2MarketViewsInterface { - return new utils.Interface(_abi) as PerpsV2MarketViewsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): PerpsV2MarketViews { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews; - } + static readonly abi = _abi + static createInterface(): PerpsV2MarketViewsInterface { + return new utils.Interface(_abi) as PerpsV2MarketViewsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketViews { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts index c1c7d09c76..ab69d8e77f 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts @@ -2,1435 +2,1432 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { PerpsV2Market, PerpsV2MarketInterface } from "../PerpsV2Market"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { PerpsV2Market, PerpsV2MarketInterface } from '../PerpsV2Market' const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "isOffchain", - type: "bool", - }, - { - indexed: false, - internalType: "uint256", - name: "currentRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "targetRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "commitDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "keeperDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "DelayedOrderRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "isOffchain", - type: "bool", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "targetRoundId", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "intentionTime", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "executableAtTime", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "commitDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "keeperDeposit", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "DelayedOrderSubmitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "int256", - name: "funding", - type: "int256", - }, - { - indexed: false, - internalType: "int256", - name: "fundingRate", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "timestamp", - type: "uint256", - }, - ], - name: "FundingRecomputed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "marginDelta", - type: "int256", - }, - ], - name: "MarginTransferred", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "baseAsset", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "PerpsTracking", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "flagger", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "timestamp", - type: "uint256", - }, - ], - name: "PositionFlagged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "liquidator", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "size", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "flaggerFee", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "liquidatorFee", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "stakersFee", - type: "uint256", - }, - ], - name: "PositionLiquidated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "id", - type: "uint256", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "margin", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "size", - type: "int256", - }, - { - indexed: false, - internalType: "int256", - name: "tradeSize", - type: "int256", - }, - { - indexed: false, - internalType: "uint256", - name: "lastPrice", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fundingIndex", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "skew", - type: "int256", - }, - ], - name: "PositionModified", - type: "event", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accessibleMargin", - outputs: [ - { - internalType: "uint256", - name: "marginAccessible", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "accruedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "assetPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "baseAsset", - outputs: [ - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "canLiquidate", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "cancelDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "cancelOffchainDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - ], - name: "closePosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "closePositionWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currentFundingRate", - outputs: [ - { - internalType: "int256", - name: "fundingRate", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currentFundingVelocity", - outputs: [ - { - internalType: "int256", - name: "fundingVelocity", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "delayedOrders", - outputs: [ - { - components: [ - { - internalType: "bool", - name: "isOffchain", - type: "bool", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "desiredFillPrice", - type: "uint128", - }, - { - internalType: "uint128", - name: "targetRoundId", - type: "uint128", - }, - { - internalType: "uint128", - name: "commitDeposit", - type: "uint128", - }, - { - internalType: "uint128", - name: "keeperDeposit", - type: "uint128", - }, - { - internalType: "uint256", - name: "executableAtTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "intentionTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "executeDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes[]", - name: "priceUpdateData", - type: "bytes[]", - }, - ], - name: "executeOffchainDelayedOrder", - outputs: [], - payable: true, - stateMutability: "payable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - ], - name: "fillPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "flagPosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "forceLiquidatePosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingLastRecomputed", - outputs: [ - { - internalType: "uint32", - name: "timestamp", - type: "uint32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingRateLastRecomputed", - outputs: [ - { - internalType: "int128", - name: "fundingRate", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - ], - name: "fundingSequence", - outputs: [ - { - internalType: "int128", - name: "netFunding", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "fundingSequenceLength", - outputs: [ - { - internalType: "uint256", - name: "length", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isFlagged", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidatePosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidationPrice", - outputs: [ - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketDebt", - outputs: [ - { - internalType: "uint256", - name: "debt", - type: "uint256", - }, - { - internalType: "bool", - name: "isInvalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketKey", - outputs: [ - { - internalType: "bytes32", - name: "key", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSize", - outputs: [ - { - internalType: "uint128", - name: "size", - type: "uint128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSizes", - outputs: [ - { - internalType: "uint256", - name: "long", - type: "uint256", - }, - { - internalType: "uint256", - name: "short", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "marketSkew", - outputs: [ - { - internalType: "int128", - name: "skew", - type: "int128", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - ], - name: "modifyPosition", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "modifyPositionWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "notionalValue", - outputs: [ - { - internalType: "int256", - name: "value", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "enum IPerpsV2MarketBaseTypes.OrderType", - name: "orderType", - type: "uint8", - }, - ], - name: "orderFee", - outputs: [ - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "positions", - outputs: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IPerpsV2MarketConsolidated.Position", - name: "", - type: "tuple", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "tradePrice", - type: "uint256", - }, - { - internalType: "enum IPerpsV2MarketBaseTypes.OrderType", - name: "orderType", - type: "uint8", - }, - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "postTradeDetails", - outputs: [ - { - internalType: "uint256", - name: "margin", - type: "uint256", - }, - { - internalType: "int256", - name: "size", - type: "int256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - { - internalType: "uint256", - name: "liqPrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - { - internalType: "enum IPerpsV2MarketConsolidated.Status", - name: "status", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "profitLoss", - outputs: [ - { - internalType: "int256", - name: "pnl", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "recomputeFunding", - outputs: [ - { - internalType: "uint256", - name: "lastIndex", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "remainingMargin", - outputs: [ - { - internalType: "uint256", - name: "marginRemaining", - type: "uint256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "desiredTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "submitCloseDelayedOrderWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "submitCloseOffchainDelayedOrderWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - ], - name: "submitDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredTimeDelta", - type: "uint256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "submitDelayedOrderWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - ], - name: "submitOffchainDelayedOrder", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "submitOffchainDelayedOrderWithTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "int256", - name: "marginDelta", - type: "int256", - }, - ], - name: "transferMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "unrecordedFunding", - outputs: [ - { - internalType: "int256", - name: "funding", - type: "int256", - }, - { - internalType: "bool", - name: "invalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "withdrawAllMargin", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bool', + name: 'isOffchain', + type: 'bool', + }, + { + indexed: false, + internalType: 'uint256', + name: 'currentRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'targetRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'commitDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'keeperDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'DelayedOrderRemoved', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bool', + name: 'isOffchain', + type: 'bool', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'targetRoundId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'intentionTime', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'executableAtTime', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'commitDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'keeperDeposit', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'DelayedOrderSubmitted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + indexed: false, + internalType: 'int256', + name: 'fundingRate', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'timestamp', + type: 'uint256', + }, + ], + name: 'FundingRecomputed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'marginDelta', + type: 'int256', + }, + ], + name: 'MarginTransferred', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'baseAsset', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'PerpsTracking', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'id', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'flagger', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'timestamp', + type: 'uint256', + }, + ], + name: 'PositionFlagged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'id', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'liquidator', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'flaggerFee', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'liquidatorFee', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'stakersFee', + type: 'uint256', + }, + ], + name: 'PositionLiquidated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint256', + name: 'id', + type: 'uint256', + }, + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'margin', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + indexed: false, + internalType: 'int256', + name: 'tradeSize', + type: 'int256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'lastPrice', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fundingIndex', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'skew', + type: 'int256', + }, + ], + name: 'PositionModified', + type: 'event', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accessibleMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginAccessible', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'accruedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'assetPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'baseAsset', + outputs: [ + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'canLiquidate', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'cancelDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'cancelOffchainDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + ], + name: 'closePosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'closePositionWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currentFundingRate', + outputs: [ + { + internalType: 'int256', + name: 'fundingRate', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currentFundingVelocity', + outputs: [ + { + internalType: 'int256', + name: 'fundingVelocity', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'delayedOrders', + outputs: [ + { + components: [ + { + internalType: 'bool', + name: 'isOffchain', + type: 'bool', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'desiredFillPrice', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'targetRoundId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'commitDeposit', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'keeperDeposit', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'executableAtTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'intentionTime', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'executeDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes[]', + name: 'priceUpdateData', + type: 'bytes[]', + }, + ], + name: 'executeOffchainDelayedOrder', + outputs: [], + payable: true, + stateMutability: 'payable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + ], + name: 'fillPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'flagPosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'forceLiquidatePosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingLastRecomputed', + outputs: [ + { + internalType: 'uint32', + name: 'timestamp', + type: 'uint32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingRateLastRecomputed', + outputs: [ + { + internalType: 'int128', + name: 'fundingRate', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + ], + name: 'fundingSequence', + outputs: [ + { + internalType: 'int128', + name: 'netFunding', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'fundingSequenceLength', + outputs: [ + { + internalType: 'uint256', + name: 'length', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'isFlagged', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidatePosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidationPrice', + outputs: [ + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketDebt', + outputs: [ + { + internalType: 'uint256', + name: 'debt', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'isInvalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketKey', + outputs: [ + { + internalType: 'bytes32', + name: 'key', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSize', + outputs: [ + { + internalType: 'uint128', + name: 'size', + type: 'uint128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSizes', + outputs: [ + { + internalType: 'uint256', + name: 'long', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'short', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'marketSkew', + outputs: [ + { + internalType: 'int128', + name: 'skew', + type: 'int128', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + ], + name: 'modifyPosition', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'modifyPositionWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'notionalValue', + outputs: [ + { + internalType: 'int256', + name: 'value', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', + name: 'orderType', + type: 'uint8', + }, + ], + name: 'orderFee', + outputs: [ + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'positions', + outputs: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IPerpsV2MarketConsolidated.Position', + name: '', + type: 'tuple', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'tradePrice', + type: 'uint256', + }, + { + internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', + name: 'orderType', + type: 'uint8', + }, + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'postTradeDetails', + outputs: [ + { + internalType: 'uint256', + name: 'margin', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'size', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liqPrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + { + internalType: 'enum IPerpsV2MarketConsolidated.Status', + name: 'status', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'profitLoss', + outputs: [ + { + internalType: 'int256', + name: 'pnl', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'recomputeFunding', + outputs: [ + { + internalType: 'uint256', + name: 'lastIndex', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'remainingMargin', + outputs: [ + { + internalType: 'uint256', + name: 'marginRemaining', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'desiredTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'submitCloseDelayedOrderWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'submitCloseOffchainDelayedOrderWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + ], + name: 'submitDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredTimeDelta', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'submitDelayedOrderWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + ], + name: 'submitOffchainDelayedOrder', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'submitOffchainDelayedOrderWithTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'int256', + name: 'marginDelta', + type: 'int256', + }, + ], + name: 'transferMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'unrecordedFunding', + outputs: [ + { + internalType: 'int256', + name: 'funding', + type: 'int256', + }, + { + internalType: 'bool', + name: 'invalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'withdrawAllMargin', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class PerpsV2Market__factory { - static readonly abi = _abi; - static createInterface(): PerpsV2MarketInterface { - return new utils.Interface(_abi) as PerpsV2MarketInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): PerpsV2Market { - return new Contract(address, _abi, signerOrProvider) as PerpsV2Market; - } + static readonly abi = _abi + static createInterface(): PerpsV2MarketInterface { + return new utils.Interface(_abi) as PerpsV2MarketInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2Market { + return new Contract(address, _abi, signerOrProvider) as PerpsV2Market + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts index 7124b48074..04f471537f 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts @@ -2,3388 +2,3382 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - PerpsV3MarketProxy, - PerpsV3MarketProxyInterface, -} from "../PerpsV3MarketProxy"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { PerpsV3MarketProxy, PerpsV3MarketProxyInterface } from '../PerpsV3MarketProxy' const _abi = [ - { - inputs: [ - { - internalType: "bytes32", - name: "which", - type: "bytes32", - }, - ], - name: "FeatureUnavailable", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "InvalidAccountId", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - ], - name: "InvalidPermission", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "origin", - type: "address", - }, - ], - name: "OnlyAccountTokenProxy", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "target", - type: "address", - }, - ], - name: "PermissionDenied", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "PermissionNotGranted", - type: "error", - }, - { - inputs: [], - name: "PositionOutOfBounds", - type: "error", - }, - { - inputs: [], - name: "ValueAlreadyInSet", - type: "error", - }, - { - inputs: [], - name: "ValueNotInSet", - type: "error", - }, - { - inputs: [], - name: "ZeroAddress", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - ], - name: "AccountCreated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: true, - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "PermissionGranted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: true, - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "PermissionRevoked", - type: "event", - }, - { - inputs: [], - name: "createAccount", - outputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "requestedAccountId", - type: "uint128", - }, - ], - name: "createAccount", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "getAccountLastInteraction", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "getAccountOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "getAccountPermissions", - outputs: [ - { - components: [ - { - internalType: "address", - name: "user", - type: "address", - }, - { - internalType: "bytes32[]", - name: "permissions", - type: "bytes32[]", - }, - ], - internalType: "struct IAccountModule.AccountPermissions[]", - name: "accountPerms", - type: "tuple[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getAccountTokenAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "grantPermission", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "hasPermission", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "isAuthorized", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "notifyAccountTransfer", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - ], - name: "renouncePermission", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "permission", - type: "bytes32", - }, - { - internalType: "address", - name: "user", - type: "address", - }, - ], - name: "revokePermission", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "expected", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "actual", - type: "bytes32", - }, - ], - name: "MismatchAssociatedSystemKind", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "MissingAssociatedSystem", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "Unauthorized", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "kind", - type: "bytes32", - }, - { - indexed: true, - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "proxy", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "impl", - type: "address", - }, - ], - name: "AssociatedSystemSet", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "getAssociatedSystem", - outputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - { - internalType: "bytes32", - name: "kind", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "string", - name: "symbol", - type: "string", - }, - { - internalType: "string", - name: "uri", - type: "string", - }, - { - internalType: "address", - name: "impl", - type: "address", - }, - ], - name: "initOrUpgradeNft", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - internalType: "string", - name: "name", - type: "string", - }, - { - internalType: "string", - name: "symbol", - type: "string", - }, - { - internalType: "uint8", - name: "decimals", - type: "uint8", - }, - { - internalType: "address", - name: "impl", - type: "address", - }, - ], - name: "initOrUpgradeToken", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - internalType: "address", - name: "endpoint", - type: "address", - }, - ], - name: "registerUnmanagedSystem", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "ImplementationIsSterile", - type: "error", - }, - { - inputs: [], - name: "NoChange", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "contr", - type: "address", - }, - ], - name: "NotAContract", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "addr", - type: "address", - }, - ], - name: "NotNominated", - type: "error", - }, - { - inputs: [], - name: "UpgradeSimulationFailed", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "self", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "Upgraded", - type: "event", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "getImplementation", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newNominatedOwner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceNomination", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "simulateUpgradeTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newImplementation", - type: "address", - }, - ], - name: "upgradeTo", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "InvalidMarketOwner", - type: "error", - }, - { - inputs: [], - name: "OverflowInt256ToUint256", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "MarketOwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - indexed: false, - internalType: "address", - name: "newNominatedOwner", - type: "address", - }, - ], - name: "MarketOwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - indexed: false, - internalType: "bytes32", - name: "feedId", - type: "bytes32", - }, - ], - name: "MarketPriceDataUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - indexed: true, - internalType: "address", - name: "marketOwner", - type: "address", - }, - { - indexed: false, - internalType: "string", - name: "marketName", - type: "string", - }, - { - indexed: false, - internalType: "string", - name: "marketSymbol", - type: "string", - }, - ], - name: "MarketRegistered", - type: "event", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "acceptMarketOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "string", - name: "marketName", - type: "string", - }, - { - internalType: "string", - name: "marketSymbol", - type: "string", - }, - { - internalType: "address", - name: "marketOwner", - type: "address", - }, - ], - name: "createMarket", - outputs: [ - { - internalType: "uint128", - name: "", - type: "uint128", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "getMarketOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "minimumCredit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - internalType: "address", - name: "newNominatedOwner", - type: "address", - }, - ], - name: "nominateMarketOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "reportedDebt", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract ISpotMarketSystem", - name: "spotMarket", - type: "address", - }, - ], - name: "setSpotMarket", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "contract ISynthetixSystem", - name: "synthetix", - type: "address", - }, - ], - name: "setSynthetix", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes4", - name: "interfaceId", - type: "bytes4", - }, - ], - name: "supportsInterface", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - ], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "perpsMarketId", - type: "uint128", - }, - { - internalType: "bytes32", - name: "feedId", - type: "bytes32", - }, - ], - name: "updatePriceData", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "AccountLiquidatable", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "AccountNotFound", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "collateralAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "withdrawAmount", - type: "uint256", - }, - ], - name: "InsufficientCollateral", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "available", - type: "uint256", - }, - { - internalType: "uint256", - name: "required", - type: "uint256", - }, - ], - name: "InsufficientCollateralAvailableForWithdraw", - type: "error", - }, - { - inputs: [ - { - internalType: "int256", - name: "amountDelta", - type: "int256", - }, - ], - name: "InvalidAmountDelta", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "InvalidMarket", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "maxAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "collateralAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "depositAmount", - type: "uint256", - }, - ], - name: "MaxCollateralExceeded", - type: "error", - }, - { - inputs: [], - name: "OverflowUint128ToInt128", - type: "error", - }, - { - inputs: [], - name: "OverflowUint256ToInt256", - type: "error", - }, - { - inputs: [], - name: "OverflowUint256ToUint128", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "PriceFeedNotSet", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - ], - name: "SynthNotEnabledForCollateral", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: true, - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - indexed: true, - internalType: "int256", - name: "amountDelta", - type: "int256", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "CollateralModified", - type: "event", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getAsyncOrderClaim", - outputs: [ - { - components: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "settlementStrategyId", - type: "uint128", - }, - { - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct AsyncOrder.Data", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "getAvailableMargin", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getOpenPosition", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - { - internalType: "int256", - name: "", - type: "int256", - }, - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - internalType: "int256", - name: "amountDelta", - type: "int256", - }, - ], - name: "modifyCollateral", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "totalAccountOpenInterest", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "totalCollateralValue", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "currentFundingRate", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "currentFundingVelocity", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "int256", - name: "orderSize", - type: "int256", - }, - { - internalType: "uint256", - name: "price", - type: "uint256", - }, - ], - name: "fillPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getMarketSummary", - outputs: [ - { - components: [ - { - internalType: "int256", - name: "skew", - type: "int256", - }, - { - internalType: "uint256", - name: "size", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxOpenInterest", - type: "uint256", - }, - { - internalType: "int256", - name: "currentFundingRate", - type: "int256", - }, - { - internalType: "int256", - name: "currentFundingVelocity", - type: "int256", - }, - { - internalType: "uint256", - name: "indexPrice", - type: "uint256", - }, - ], - internalType: "struct IPerpsMarketModule.MarketSummary", - name: "summary", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "indexPrice", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "maxOpenInterest", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "size", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "skew", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - internalType: "uint256", - name: "fillPrice", - type: "uint256", - }, - ], - name: "AcceptablePriceExceeded", - type: "error", - }, - { - inputs: [ - { - internalType: "int256", - name: "availableMargin", - type: "int256", - }, - { - internalType: "uint256", - name: "minMargin", - type: "uint256", - }, - ], - name: "InsufficientMargin", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "leftover", - type: "uint256", - }, - ], - name: "InsufficientMarginError", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "settlementStrategyId", - type: "uint128", - }, - ], - name: "InvalidSettlementStrategy", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - { - internalType: "string[]", - name: "urls", - type: "string[]", - }, - { - internalType: "bytes", - name: "callData", - type: "bytes", - }, - { - internalType: "bytes4", - name: "callbackFunction", - type: "bytes4", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - name: "OffchainLookup", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "OrderAlreadyCommitted", - type: "error", - }, - { - inputs: [], - name: "OrderNotValid", - type: "error", - }, - { - inputs: [], - name: "OverflowInt256ToInt128", - type: "error", - }, - { - inputs: [], - name: "OverflowUint256ToUint64", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "deviation", - type: "uint256", - }, - { - internalType: "uint256", - name: "tolerance", - type: "uint256", - }, - ], - name: "PriceDeviationToleranceExceeded", - type: "error", - }, - { - inputs: [ - { - internalType: "enum SettlementStrategy.Type", - name: "strategyType", - type: "uint8", - }, - ], - name: "SettlementStrategyNotFound", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "timestamp", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementExpiration", - type: "uint256", - }, - ], - name: "SettlementWindowExpired", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "timestamp", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementExpiration", - type: "uint256", - }, - ], - name: "SettlementWindowNotExpired", - type: "error", - }, - { - inputs: [], - name: "ZeroSizeOrder", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - ], - name: "OrderCanceled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: true, - internalType: "enum SettlementStrategy.Type", - name: "orderType", - type: "uint8", - }, - { - indexed: false, - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - indexed: false, - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "expirationTime", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "OrderCommitted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: true, - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "fillPrice", - type: "uint256", - }, - { - indexed: false, - internalType: "int256", - name: "accountPnlRealized", - type: "int256", - }, - { - indexed: false, - internalType: "int128", - name: "newSize", - type: "int128", - }, - { - indexed: false, - internalType: "uint256", - name: "collectedFees", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "settelementReward", - type: "uint256", - }, - { - indexed: true, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "settler", - type: "address", - }, - ], - name: "OrderSettled", - type: "event", - }, - { - inputs: [], - name: "PRECISION", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "cancelOrder", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - components: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "settlementStrategyId", - type: "uint128", - }, - { - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct AsyncOrder.OrderCommitmentRequest", - name: "commitment", - type: "tuple", - }, - ], - name: "commitOrder", - outputs: [ - { - components: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "settlementStrategyId", - type: "uint128", - }, - { - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct AsyncOrder.Data", - name: "retOrder", - type: "tuple", - }, - { - internalType: "uint256", - name: "fees", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "getOrder", - outputs: [ - { - components: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "settlementStrategyId", - type: "uint128", - }, - { - internalType: "uint256", - name: "settlementTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "acceptablePrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct AsyncOrder.Data", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "settle", - outputs: [], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes", - name: "result", - type: "bytes", - }, - { - internalType: "bytes", - name: "extraData", - type: "bytes", - }, - ], - name: "settlePythOrder", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - indexed: false, - internalType: "bool", - name: "allowAll", - type: "bool", - }, - ], - name: "FeatureFlagAllowAllSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "FeatureFlagAllowlistAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "FeatureFlagAllowlistRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - indexed: false, - internalType: "address[]", - name: "deniers", - type: "address[]", - }, - ], - name: "FeatureFlagDeniersReset", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - indexed: false, - internalType: "bool", - name: "denyAll", - type: "bool", - }, - ], - name: "FeatureFlagDenyAllSet", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "addToFeatureFlagAllowlist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - ], - name: "getDeniers", - outputs: [ - { - internalType: "address[]", - name: "", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - ], - name: "getFeatureFlagAllowAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - ], - name: "getFeatureFlagAllowlist", - outputs: [ - { - internalType: "address[]", - name: "", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - ], - name: "getFeatureFlagDenyAll", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "isFeatureAllowed", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "removeFromFeatureFlagAllowlist", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "address[]", - name: "deniers", - type: "address[]", - }, - ], - name: "setDeniers", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "bool", - name: "allowAll", - type: "bool", - }, - ], - name: "setFeatureFlagAllowAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "feature", - type: "bytes32", - }, - { - internalType: "bool", - name: "denyAll", - type: "bool", - }, - ], - name: "setFeatureFlagDenyAll", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "NotEligibleForLiquidation", - type: "error", - }, - { - inputs: [ - { - internalType: "uint128", - name: "accountId", - type: "uint128", - }, - ], - name: "liquidate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "liquidateFlagged", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "marketOwner", - type: "address", - }, - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "OnlyMarketOwner", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - ], - name: "FundingParametersSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "initialMarginFraction", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "maintenanceMarginFraction", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "liquidationRewardRatioD18", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "maxLiquidationLimitAccumulationMultiplier", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "maxSecondsInLiquidationWindow", - type: "uint256", - }, - ], - name: "LiquidationParametersSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "lockedOiPercent", - type: "uint256", - }, - ], - name: "LockedOiPercentSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - ], - name: "MaxMarketValueSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "makerFeeRatio", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "takerFeeRatio", - type: "uint256", - }, - ], - name: "OrderFeesSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - components: [ - { - internalType: "enum SettlementStrategy.Type", - name: "strategyType", - type: "uint8", - }, - { - internalType: "uint256", - name: "settlementDelay", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementWindowDuration", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceWindowDuration", - type: "uint256", - }, - { - internalType: "address", - name: "priceVerificationContract", - type: "address", - }, - { - internalType: "bytes32", - name: "feedId", - type: "bytes32", - }, - { - internalType: "string", - name: "url", - type: "string", - }, - { - internalType: "uint256", - name: "settlementReward", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceDeviationTolerance", - type: "uint256", - }, - { - internalType: "bool", - name: "disabled", - type: "bool", - }, - ], - indexed: false, - internalType: "struct SettlementStrategy.Data", - name: "strategy", - type: "tuple", - }, - { - indexed: true, - internalType: "uint256", - name: "strategyId", - type: "uint256", - }, - ], - name: "SettlementStrategyAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "strategyId", - type: "uint256", - }, - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "SettlementStrategyEnabled", - type: "event", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - components: [ - { - internalType: "enum SettlementStrategy.Type", - name: "strategyType", - type: "uint8", - }, - { - internalType: "uint256", - name: "settlementDelay", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementWindowDuration", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceWindowDuration", - type: "uint256", - }, - { - internalType: "address", - name: "priceVerificationContract", - type: "address", - }, - { - internalType: "bytes32", - name: "feedId", - type: "bytes32", - }, - { - internalType: "string", - name: "url", - type: "string", - }, - { - internalType: "uint256", - name: "settlementReward", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceDeviationTolerance", - type: "uint256", - }, - { - internalType: "bool", - name: "disabled", - type: "bool", - }, - ], - internalType: "struct SettlementStrategy.Data", - name: "strategy", - type: "tuple", - }, - ], - name: "addSettlementStrategy", - outputs: [ - { - internalType: "uint256", - name: "strategyId", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getFundingParameters", - outputs: [ - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getLiquidationParameters", - outputs: [ - { - internalType: "uint256", - name: "initialMarginFraction", - type: "uint256", - }, - { - internalType: "uint256", - name: "maintenanceMarginFraction", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationRewardRatioD18", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationLimitAccumulationMultiplier", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxSecondsInLiquidationWindow", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getLockedOiPercent", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getMaxMarketValue", - outputs: [ - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - ], - name: "getOrderFees", - outputs: [ - { - internalType: "uint256", - name: "makerFee", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFee", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "strategyId", - type: "uint256", - }, - ], - name: "getSettlementStrategy", - outputs: [ - { - components: [ - { - internalType: "enum SettlementStrategy.Type", - name: "strategyType", - type: "uint8", - }, - { - internalType: "uint256", - name: "settlementDelay", - type: "uint256", - }, - { - internalType: "uint256", - name: "settlementWindowDuration", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceWindowDuration", - type: "uint256", - }, - { - internalType: "address", - name: "priceVerificationContract", - type: "address", - }, - { - internalType: "bytes32", - name: "feedId", - type: "bytes32", - }, - { - internalType: "string", - name: "url", - type: "string", - }, - { - internalType: "uint256", - name: "settlementReward", - type: "uint256", - }, - { - internalType: "uint256", - name: "priceDeviationTolerance", - type: "uint256", - }, - { - internalType: "bool", - name: "disabled", - type: "bool", - }, - ], - internalType: "struct SettlementStrategy.Data", - name: "settlementStrategy", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "skewScale", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxFundingVelocity", - type: "uint256", - }, - ], - name: "setFundingParameters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "initialMarginFraction", - type: "uint256", - }, - { - internalType: "uint256", - name: "maintenanceMarginFraction", - type: "uint256", - }, - { - internalType: "uint256", - name: "liquidationRewardRatioD18", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationLimitAccumulationMultiplier", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxSecondsInLiquidationWindow", - type: "uint256", - }, - ], - name: "setLiquidationParameters", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "lockedOiPercent", - type: "uint256", - }, - ], - name: "setLockedOiPercent", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "maxMarketValue", - type: "uint256", - }, - ], - name: "setMaxMarketValue", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "makerFeeRatio", - type: "uint256", - }, - { - internalType: "uint256", - name: "takerFeeRatio", - type: "uint256", - }, - ], - name: "setOrderFees", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "marketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "strategyId", - type: "uint256", - }, - { - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "setSettlementStrategyEnabled", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint256", - name: "minLiquidationRewardUsd", - type: "uint256", - }, - { - indexed: true, - internalType: "uint256", - name: "maxLiquidationRewardUsd", - type: "uint256", - }, - ], - name: "LiquidationRewardGuardsSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - indexed: false, - internalType: "uint256", - name: "collateralAmount", - type: "uint256", - }, - ], - name: "MaxCollateralAmountSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint128[]", - name: "newSynthDeductionPriority", - type: "uint128[]", - }, - ], - name: "SynthDeductionPrioritySet", - type: "event", - }, - { - inputs: [], - name: "getLiquidationRewardGuards", - outputs: [ - { - internalType: "uint256", - name: "minLiquidationRewardUsd", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationRewardUsd", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - ], - name: "getMaxCollateralAmount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getSynthDeductionPriority", - outputs: [ - { - internalType: "uint128[]", - name: "", - type: "uint128[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "minLiquidationRewardUsd", - type: "uint256", - }, - { - internalType: "uint256", - name: "maxLiquidationRewardUsd", - type: "uint256", - }, - ], - name: "setLiquidationRewardGuards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128", - name: "synthMarketId", - type: "uint128", - }, - { - internalType: "uint256", - name: "collateralAmount", - type: "uint256", - }, - ], - name: "setMaxCollateralAmount", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint128[]", - name: "newSynthDeductionPriority", - type: "uint128[]", - }, - ], - name: "setSynthDeductionPriority", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'bytes32', + name: 'which', + type: 'bytes32', + }, + ], + name: 'FeatureUnavailable', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'InvalidAccountId', + type: 'error', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + ], + name: 'InvalidPermission', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'origin', + type: 'address', + }, + ], + name: 'OnlyAccountTokenProxy', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'target', + type: 'address', + }, + ], + name: 'PermissionDenied', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'user', + type: 'address', + }, + ], + name: 'PermissionNotGranted', + type: 'error', + }, + { + inputs: [], + name: 'PositionOutOfBounds', + type: 'error', + }, + { + inputs: [], + name: 'ValueAlreadyInSet', + type: 'error', + }, + { + inputs: [], + name: 'ValueNotInSet', + type: 'error', + }, + { + inputs: [], + name: 'ZeroAddress', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + ], + name: 'AccountCreated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'PermissionGranted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'PermissionRevoked', + type: 'event', + }, + { + inputs: [], + name: 'createAccount', + outputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'requestedAccountId', + type: 'uint128', + }, + ], + name: 'createAccount', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'getAccountLastInteraction', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'getAccountOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'getAccountPermissions', + outputs: [ + { + components: [ + { + internalType: 'address', + name: 'user', + type: 'address', + }, + { + internalType: 'bytes32[]', + name: 'permissions', + type: 'bytes32[]', + }, + ], + internalType: 'struct IAccountModule.AccountPermissions[]', + name: 'accountPerms', + type: 'tuple[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getAccountTokenAddress', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'user', + type: 'address', + }, + ], + name: 'grantPermission', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'user', + type: 'address', + }, + ], + name: 'hasPermission', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'user', + type: 'address', + }, + ], + name: 'isAuthorized', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'notifyAccountTransfer', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + ], + name: 'renouncePermission', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'permission', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'user', + type: 'address', + }, + ], + name: 'revokePermission', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'expected', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'actual', + type: 'bytes32', + }, + ], + name: 'MismatchAssociatedSystemKind', + type: 'error', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'MissingAssociatedSystem', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'addr', + type: 'address', + }, + ], + name: 'Unauthorized', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'kind', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'proxy', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'impl', + type: 'address', + }, + ], + name: 'AssociatedSystemSet', + type: 'event', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'getAssociatedSystem', + outputs: [ + { + internalType: 'address', + name: 'addr', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'kind', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + internalType: 'string', + name: 'name', + type: 'string', + }, + { + internalType: 'string', + name: 'symbol', + type: 'string', + }, + { + internalType: 'string', + name: 'uri', + type: 'string', + }, + { + internalType: 'address', + name: 'impl', + type: 'address', + }, + ], + name: 'initOrUpgradeNft', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + internalType: 'string', + name: 'name', + type: 'string', + }, + { + internalType: 'string', + name: 'symbol', + type: 'string', + }, + { + internalType: 'uint8', + name: 'decimals', + type: 'uint8', + }, + { + internalType: 'address', + name: 'impl', + type: 'address', + }, + ], + name: 'initOrUpgradeToken', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'endpoint', + type: 'address', + }, + ], + name: 'registerUnmanagedSystem', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'implementation', + type: 'address', + }, + ], + name: 'ImplementationIsSterile', + type: 'error', + }, + { + inputs: [], + name: 'NoChange', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'contr', + type: 'address', + }, + ], + name: 'NotAContract', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'addr', + type: 'address', + }, + ], + name: 'NotNominated', + type: 'error', + }, + { + inputs: [], + name: 'UpgradeSimulationFailed', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'self', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'implementation', + type: 'address', + }, + ], + name: 'Upgraded', + type: 'event', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'getImplementation', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newNominatedOwner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'renounceNomination', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newImplementation', + type: 'address', + }, + ], + name: 'simulateUpgradeTo', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newImplementation', + type: 'address', + }, + ], + name: 'upgradeTo', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'InvalidMarketOwner', + type: 'error', + }, + { + inputs: [], + name: 'OverflowInt256ToUint256', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'MarketOwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'address', + name: 'newNominatedOwner', + type: 'address', + }, + ], + name: 'MarketOwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'feedId', + type: 'bytes32', + }, + ], + name: 'MarketPriceDataUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'address', + name: 'marketOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'string', + name: 'marketName', + type: 'string', + }, + { + indexed: false, + internalType: 'string', + name: 'marketSymbol', + type: 'string', + }, + ], + name: 'MarketRegistered', + type: 'event', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'acceptMarketOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'string', + name: 'marketName', + type: 'string', + }, + { + internalType: 'string', + name: 'marketSymbol', + type: 'string', + }, + { + internalType: 'address', + name: 'marketOwner', + type: 'address', + }, + ], + name: 'createMarket', + outputs: [ + { + internalType: 'uint128', + name: '', + type: 'uint128', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'getMarketOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'minimumCredit', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'name', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + internalType: 'address', + name: 'newNominatedOwner', + type: 'address', + }, + ], + name: 'nominateMarketOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'reportedDebt', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'contract ISpotMarketSystem', + name: 'spotMarket', + type: 'address', + }, + ], + name: 'setSpotMarket', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'contract ISynthetixSystem', + name: 'synthetix', + type: 'address', + }, + ], + name: 'setSynthetix', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes4', + name: 'interfaceId', + type: 'bytes4', + }, + ], + name: 'supportsInterface', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + ], + name: 'symbol', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'perpsMarketId', + type: 'uint128', + }, + { + internalType: 'bytes32', + name: 'feedId', + type: 'bytes32', + }, + ], + name: 'updatePriceData', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'AccountLiquidatable', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'AccountNotFound', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'collateralAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'withdrawAmount', + type: 'uint256', + }, + ], + name: 'InsufficientCollateral', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'available', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'required', + type: 'uint256', + }, + ], + name: 'InsufficientCollateralAvailableForWithdraw', + type: 'error', + }, + { + inputs: [ + { + internalType: 'int256', + name: 'amountDelta', + type: 'int256', + }, + ], + name: 'InvalidAmountDelta', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'InvalidMarket', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'maxAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'collateralAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'depositAmount', + type: 'uint256', + }, + ], + name: 'MaxCollateralExceeded', + type: 'error', + }, + { + inputs: [], + name: 'OverflowUint128ToInt128', + type: 'error', + }, + { + inputs: [], + name: 'OverflowUint256ToInt256', + type: 'error', + }, + { + inputs: [], + name: 'OverflowUint256ToUint128', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'PriceFeedNotSet', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + ], + name: 'SynthNotEnabledForCollateral', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'int256', + name: 'amountDelta', + type: 'int256', + }, + { + indexed: false, + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'CollateralModified', + type: 'event', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getAsyncOrderClaim', + outputs: [ + { + components: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'settlementStrategyId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct AsyncOrder.Data', + name: '', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'getAvailableMargin', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getOpenPosition', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + { + internalType: 'int256', + name: '', + type: 'int256', + }, + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + internalType: 'int256', + name: 'amountDelta', + type: 'int256', + }, + ], + name: 'modifyCollateral', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'totalAccountOpenInterest', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'totalCollateralValue', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'currentFundingRate', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'currentFundingVelocity', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'int256', + name: 'orderSize', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'price', + type: 'uint256', + }, + ], + name: 'fillPrice', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getMarketSummary', + outputs: [ + { + components: [ + { + internalType: 'int256', + name: 'skew', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'size', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxOpenInterest', + type: 'uint256', + }, + { + internalType: 'int256', + name: 'currentFundingRate', + type: 'int256', + }, + { + internalType: 'int256', + name: 'currentFundingVelocity', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'indexPrice', + type: 'uint256', + }, + ], + internalType: 'struct IPerpsMarketModule.MarketSummary', + name: 'summary', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'indexPrice', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'maxOpenInterest', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'size', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'skew', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fillPrice', + type: 'uint256', + }, + ], + name: 'AcceptablePriceExceeded', + type: 'error', + }, + { + inputs: [ + { + internalType: 'int256', + name: 'availableMargin', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'minMargin', + type: 'uint256', + }, + ], + name: 'InsufficientMargin', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'leftover', + type: 'uint256', + }, + ], + name: 'InsufficientMarginError', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'settlementStrategyId', + type: 'uint128', + }, + ], + name: 'InvalidSettlementStrategy', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + { + internalType: 'string[]', + name: 'urls', + type: 'string[]', + }, + { + internalType: 'bytes', + name: 'callData', + type: 'bytes', + }, + { + internalType: 'bytes4', + name: 'callbackFunction', + type: 'bytes4', + }, + { + internalType: 'bytes', + name: 'extraData', + type: 'bytes', + }, + ], + name: 'OffchainLookup', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'OrderAlreadyCommitted', + type: 'error', + }, + { + inputs: [], + name: 'OrderNotValid', + type: 'error', + }, + { + inputs: [], + name: 'OverflowInt256ToInt128', + type: 'error', + }, + { + inputs: [], + name: 'OverflowUint256ToUint64', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'deviation', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'tolerance', + type: 'uint256', + }, + ], + name: 'PriceDeviationToleranceExceeded', + type: 'error', + }, + { + inputs: [ + { + internalType: 'enum SettlementStrategy.Type', + name: 'strategyType', + type: 'uint8', + }, + ], + name: 'SettlementStrategyNotFound', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'timestamp', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementExpiration', + type: 'uint256', + }, + ], + name: 'SettlementWindowExpired', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'timestamp', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementExpiration', + type: 'uint256', + }, + ], + name: 'SettlementWindowNotExpired', + type: 'error', + }, + { + inputs: [], + name: 'ZeroSizeOrder', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + ], + name: 'OrderCanceled', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'enum SettlementStrategy.Type', + name: 'orderType', + type: 'uint8', + }, + { + indexed: false, + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'expirationTime', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'OrderCommitted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: true, + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fillPrice', + type: 'uint256', + }, + { + indexed: false, + internalType: 'int256', + name: 'accountPnlRealized', + type: 'int256', + }, + { + indexed: false, + internalType: 'int128', + name: 'newSize', + type: 'int128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'collectedFees', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'settelementReward', + type: 'uint256', + }, + { + indexed: true, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'settler', + type: 'address', + }, + ], + name: 'OrderSettled', + type: 'event', + }, + { + inputs: [], + name: 'PRECISION', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'cancelOrder', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + components: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'settlementStrategyId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct AsyncOrder.OrderCommitmentRequest', + name: 'commitment', + type: 'tuple', + }, + ], + name: 'commitOrder', + outputs: [ + { + components: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'settlementStrategyId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct AsyncOrder.Data', + name: 'retOrder', + type: 'tuple', + }, + { + internalType: 'uint256', + name: 'fees', + type: 'uint256', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'getOrder', + outputs: [ + { + components: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'settlementStrategyId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'settlementTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'acceptablePrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct AsyncOrder.Data', + name: '', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'settle', + outputs: [], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes', + name: 'result', + type: 'bytes', + }, + { + internalType: 'bytes', + name: 'extraData', + type: 'bytes', + }, + ], + name: 'settlePythOrder', + outputs: [], + stateMutability: 'payable', + type: 'function', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bool', + name: 'allowAll', + type: 'bool', + }, + ], + name: 'FeatureFlagAllowAllSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'FeatureFlagAllowlistAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'FeatureFlagAllowlistRemoved', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address[]', + name: 'deniers', + type: 'address[]', + }, + ], + name: 'FeatureFlagDeniersReset', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bool', + name: 'denyAll', + type: 'bool', + }, + ], + name: 'FeatureFlagDenyAllSet', + type: 'event', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'addToFeatureFlagAllowlist', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + ], + name: 'getDeniers', + outputs: [ + { + internalType: 'address[]', + name: '', + type: 'address[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + ], + name: 'getFeatureFlagAllowAll', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + ], + name: 'getFeatureFlagAllowlist', + outputs: [ + { + internalType: 'address[]', + name: '', + type: 'address[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + ], + name: 'getFeatureFlagDenyAll', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'isFeatureAllowed', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'removeFromFeatureFlagAllowlist', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'address[]', + name: 'deniers', + type: 'address[]', + }, + ], + name: 'setDeniers', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'bool', + name: 'allowAll', + type: 'bool', + }, + ], + name: 'setFeatureFlagAllowAll', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'feature', + type: 'bytes32', + }, + { + internalType: 'bool', + name: 'denyAll', + type: 'bool', + }, + ], + name: 'setFeatureFlagDenyAll', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'NotEligibleForLiquidation', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'accountId', + type: 'uint128', + }, + ], + name: 'liquidate', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'liquidateFlagged', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'marketOwner', + type: 'address', + }, + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'OnlyMarketOwner', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + ], + name: 'FundingParametersSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'initialMarginFraction', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maintenanceMarginFraction', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'liquidationRewardRatioD18', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maxLiquidationLimitAccumulationMultiplier', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maxSecondsInLiquidationWindow', + type: 'uint256', + }, + ], + name: 'LiquidationParametersSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'lockedOiPercent', + type: 'uint256', + }, + ], + name: 'LockedOiPercentSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + ], + name: 'MaxMarketValueSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'makerFeeRatio', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'takerFeeRatio', + type: 'uint256', + }, + ], + name: 'OrderFeesSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + components: [ + { + internalType: 'enum SettlementStrategy.Type', + name: 'strategyType', + type: 'uint8', + }, + { + internalType: 'uint256', + name: 'settlementDelay', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementWindowDuration', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceWindowDuration', + type: 'uint256', + }, + { + internalType: 'address', + name: 'priceVerificationContract', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'feedId', + type: 'bytes32', + }, + { + internalType: 'string', + name: 'url', + type: 'string', + }, + { + internalType: 'uint256', + name: 'settlementReward', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceDeviationTolerance', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'disabled', + type: 'bool', + }, + ], + indexed: false, + internalType: 'struct SettlementStrategy.Data', + name: 'strategy', + type: 'tuple', + }, + { + indexed: true, + internalType: 'uint256', + name: 'strategyId', + type: 'uint256', + }, + ], + name: 'SettlementStrategyAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'strategyId', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bool', + name: 'enabled', + type: 'bool', + }, + ], + name: 'SettlementStrategyEnabled', + type: 'event', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + components: [ + { + internalType: 'enum SettlementStrategy.Type', + name: 'strategyType', + type: 'uint8', + }, + { + internalType: 'uint256', + name: 'settlementDelay', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementWindowDuration', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceWindowDuration', + type: 'uint256', + }, + { + internalType: 'address', + name: 'priceVerificationContract', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'feedId', + type: 'bytes32', + }, + { + internalType: 'string', + name: 'url', + type: 'string', + }, + { + internalType: 'uint256', + name: 'settlementReward', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceDeviationTolerance', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'disabled', + type: 'bool', + }, + ], + internalType: 'struct SettlementStrategy.Data', + name: 'strategy', + type: 'tuple', + }, + ], + name: 'addSettlementStrategy', + outputs: [ + { + internalType: 'uint256', + name: 'strategyId', + type: 'uint256', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getFundingParameters', + outputs: [ + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getLiquidationParameters', + outputs: [ + { + internalType: 'uint256', + name: 'initialMarginFraction', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maintenanceMarginFraction', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationRewardRatioD18', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationLimitAccumulationMultiplier', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxSecondsInLiquidationWindow', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getLockedOiPercent', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getMaxMarketValue', + outputs: [ + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + ], + name: 'getOrderFees', + outputs: [ + { + internalType: 'uint256', + name: 'makerFee', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFee', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'strategyId', + type: 'uint256', + }, + ], + name: 'getSettlementStrategy', + outputs: [ + { + components: [ + { + internalType: 'enum SettlementStrategy.Type', + name: 'strategyType', + type: 'uint8', + }, + { + internalType: 'uint256', + name: 'settlementDelay', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'settlementWindowDuration', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceWindowDuration', + type: 'uint256', + }, + { + internalType: 'address', + name: 'priceVerificationContract', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'feedId', + type: 'bytes32', + }, + { + internalType: 'string', + name: 'url', + type: 'string', + }, + { + internalType: 'uint256', + name: 'settlementReward', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'priceDeviationTolerance', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'disabled', + type: 'bool', + }, + ], + internalType: 'struct SettlementStrategy.Data', + name: 'settlementStrategy', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'skewScale', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxFundingVelocity', + type: 'uint256', + }, + ], + name: 'setFundingParameters', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'initialMarginFraction', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maintenanceMarginFraction', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'liquidationRewardRatioD18', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationLimitAccumulationMultiplier', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxSecondsInLiquidationWindow', + type: 'uint256', + }, + ], + name: 'setLiquidationParameters', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'lockedOiPercent', + type: 'uint256', + }, + ], + name: 'setLockedOiPercent', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'maxMarketValue', + type: 'uint256', + }, + ], + name: 'setMaxMarketValue', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'makerFeeRatio', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'takerFeeRatio', + type: 'uint256', + }, + ], + name: 'setOrderFees', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'marketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'strategyId', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'enabled', + type: 'bool', + }, + ], + name: 'setSettlementStrategyEnabled', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint256', + name: 'minLiquidationRewardUsd', + type: 'uint256', + }, + { + indexed: true, + internalType: 'uint256', + name: 'maxLiquidationRewardUsd', + type: 'uint256', + }, + ], + name: 'LiquidationRewardGuardsSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + indexed: false, + internalType: 'uint256', + name: 'collateralAmount', + type: 'uint256', + }, + ], + name: 'MaxCollateralAmountSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint128[]', + name: 'newSynthDeductionPriority', + type: 'uint128[]', + }, + ], + name: 'SynthDeductionPrioritySet', + type: 'event', + }, + { + inputs: [], + name: 'getLiquidationRewardGuards', + outputs: [ + { + internalType: 'uint256', + name: 'minLiquidationRewardUsd', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationRewardUsd', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + ], + name: 'getMaxCollateralAmount', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getSynthDeductionPriority', + outputs: [ + { + internalType: 'uint128[]', + name: '', + type: 'uint128[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'minLiquidationRewardUsd', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'maxLiquidationRewardUsd', + type: 'uint256', + }, + ], + name: 'setLiquidationRewardGuards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128', + name: 'synthMarketId', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'collateralAmount', + type: 'uint256', + }, + ], + name: 'setMaxCollateralAmount', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint128[]', + name: 'newSynthDeductionPriority', + type: 'uint128[]', + }, + ], + name: 'setSynthDeductionPriority', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class PerpsV3MarketProxy__factory { - static readonly abi = _abi; - static createInterface(): PerpsV3MarketProxyInterface { - return new utils.Interface(_abi) as PerpsV3MarketProxyInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): PerpsV3MarketProxy { - return new Contract(address, _abi, signerOrProvider) as PerpsV3MarketProxy; - } + static readonly abi = _abi + static createInterface(): PerpsV3MarketProxyInterface { + return new utils.Interface(_abi) as PerpsV3MarketProxyInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): PerpsV3MarketProxy { + return new Contract(address, _abi, signerOrProvider) as PerpsV3MarketProxy + } } diff --git a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts index 7b5560e72c..d970425da3 100644 --- a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts @@ -2,488 +2,488 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { Pyth, PythInterface } from "../Pyth"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { Pyth, PythInterface } from '../Pyth' const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint16", - name: "chainId", - type: "uint16", - }, - { - indexed: false, - internalType: "uint64", - name: "sequenceNumber", - type: "uint64", - }, - ], - name: "BatchPriceFeedUpdate", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint64", - name: "publishTime", - type: "uint64", - }, - { - indexed: false, - internalType: "int64", - name: "price", - type: "int64", - }, - { - indexed: false, - internalType: "uint64", - name: "conf", - type: "uint64", - }, - ], - name: "PriceFeedUpdate", - type: "event", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "getEmaPrice", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - internalType: "uint256", - name: "age", - type: "uint256", - }, - ], - name: "getEmaPriceNoOlderThan", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "getEmaPriceUnsafe", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "getPrice", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - internalType: "uint256", - name: "age", - type: "uint256", - }, - ], - name: "getPriceNoOlderThan", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - ], - name: "getPriceUnsafe", - outputs: [ - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "updateData", - type: "bytes[]", - }, - ], - name: "getUpdateFee", - outputs: [ - { - internalType: "uint256", - name: "feeAmount", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getValidTimePeriod", - outputs: [ - { - internalType: "uint256", - name: "validTimePeriod", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "updateData", - type: "bytes[]", - }, - { - internalType: "bytes32[]", - name: "priceIds", - type: "bytes32[]", - }, - { - internalType: "uint64", - name: "minPublishTime", - type: "uint64", - }, - { - internalType: "uint64", - name: "maxPublishTime", - type: "uint64", - }, - ], - name: "parsePriceFeedUpdates", - outputs: [ - { - components: [ - { - internalType: "bytes32", - name: "id", - type: "bytes32", - }, - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "price", - type: "tuple", - }, - { - components: [ - { - internalType: "int64", - name: "price", - type: "int64", - }, - { - internalType: "uint64", - name: "conf", - type: "uint64", - }, - { - internalType: "int32", - name: "expo", - type: "int32", - }, - { - internalType: "uint256", - name: "publishTime", - type: "uint256", - }, - ], - internalType: "struct PythStructs.Price", - name: "emaPrice", - type: "tuple", - }, - ], - internalType: "struct PythStructs.PriceFeed[]", - name: "priceFeeds", - type: "tuple[]", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "updateData", - type: "bytes[]", - }, - ], - name: "updatePriceFeeds", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes[]", - name: "updateData", - type: "bytes[]", - }, - { - internalType: "bytes32[]", - name: "priceIds", - type: "bytes32[]", - }, - { - internalType: "uint64[]", - name: "publishTimes", - type: "uint64[]", - }, - ], - name: "updatePriceFeedsIfNecessary", - outputs: [], - stateMutability: "payable", - type: "function", - }, -] as const; + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint16', + name: 'chainId', + type: 'uint16', + }, + { + indexed: false, + internalType: 'uint64', + name: 'sequenceNumber', + type: 'uint64', + }, + ], + name: 'BatchPriceFeedUpdate', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint64', + name: 'publishTime', + type: 'uint64', + }, + { + indexed: false, + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + indexed: false, + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + ], + name: 'PriceFeedUpdate', + type: 'event', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'getEmaPrice', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'age', + type: 'uint256', + }, + ], + name: 'getEmaPriceNoOlderThan', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'getEmaPriceUnsafe', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'getPrice', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'age', + type: 'uint256', + }, + ], + name: 'getPriceNoOlderThan', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + ], + name: 'getPriceUnsafe', + outputs: [ + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes[]', + name: 'updateData', + type: 'bytes[]', + }, + ], + name: 'getUpdateFee', + outputs: [ + { + internalType: 'uint256', + name: 'feeAmount', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getValidTimePeriod', + outputs: [ + { + internalType: 'uint256', + name: 'validTimePeriod', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes[]', + name: 'updateData', + type: 'bytes[]', + }, + { + internalType: 'bytes32[]', + name: 'priceIds', + type: 'bytes32[]', + }, + { + internalType: 'uint64', + name: 'minPublishTime', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'maxPublishTime', + type: 'uint64', + }, + ], + name: 'parsePriceFeedUpdates', + outputs: [ + { + components: [ + { + internalType: 'bytes32', + name: 'id', + type: 'bytes32', + }, + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'price', + type: 'tuple', + }, + { + components: [ + { + internalType: 'int64', + name: 'price', + type: 'int64', + }, + { + internalType: 'uint64', + name: 'conf', + type: 'uint64', + }, + { + internalType: 'int32', + name: 'expo', + type: 'int32', + }, + { + internalType: 'uint256', + name: 'publishTime', + type: 'uint256', + }, + ], + internalType: 'struct PythStructs.Price', + name: 'emaPrice', + type: 'tuple', + }, + ], + internalType: 'struct PythStructs.PriceFeed[]', + name: 'priceFeeds', + type: 'tuple[]', + }, + ], + stateMutability: 'payable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes[]', + name: 'updateData', + type: 'bytes[]', + }, + ], + name: 'updatePriceFeeds', + outputs: [], + stateMutability: 'payable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes[]', + name: 'updateData', + type: 'bytes[]', + }, + { + internalType: 'bytes32[]', + name: 'priceIds', + type: 'bytes32[]', + }, + { + internalType: 'uint64[]', + name: 'publishTimes', + type: 'uint64[]', + }, + ], + name: 'updatePriceFeedsIfNecessary', + outputs: [], + stateMutability: 'payable', + type: 'function', + }, +] as const export class Pyth__factory { - static readonly abi = _abi; - static createInterface(): PythInterface { - return new utils.Interface(_abi) as PythInterface; - } - static connect(address: string, signerOrProvider: Signer | Provider): Pyth { - return new Contract(address, _abi, signerOrProvider) as Pyth; - } + static readonly abi = _abi + static createInterface(): PythInterface { + return new utils.Interface(_abi) as PythInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): Pyth { + return new Contract(address, _abi, signerOrProvider) as Pyth + } } diff --git a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts index a3621db7f5..82fbffa0ac 100644 --- a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts @@ -2,55 +2,49 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - ReverseRecords, - ReverseRecordsInterface, -} from "../ReverseRecords"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { ReverseRecords, ReverseRecordsInterface } from '../ReverseRecords' const _abi = [ - { - inputs: [ - { - internalType: "contract ENS", - name: "_ens", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "address[]", - name: "addresses", - type: "address[]", - }, - ], - name: "getNames", - outputs: [ - { - internalType: "string[]", - name: "r", - type: "string[]", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'contract ENS', + name: '_ens', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + inputs: [ + { + internalType: 'address[]', + name: 'addresses', + type: 'address[]', + }, + ], + name: 'getNames', + outputs: [ + { + internalType: 'string[]', + name: 'r', + type: 'string[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class ReverseRecords__factory { - static readonly abi = _abi; - static createInterface(): ReverseRecordsInterface { - return new utils.Interface(_abi) as ReverseRecordsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): ReverseRecords { - return new Contract(address, _abi, signerOrProvider) as ReverseRecords; - } + static readonly abi = _abi + static createInterface(): ReverseRecordsInterface { + return new utils.Interface(_abi) as ReverseRecordsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): ReverseRecords { + return new Contract(address, _abi, signerOrProvider) as ReverseRecords + } } diff --git a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts index 735698c0ce..b60a8cf285 100644 --- a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts +++ b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts @@ -2,682 +2,679 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { RewardEscrow, RewardEscrowInterface } from "../RewardEscrow"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { RewardEscrow, RewardEscrowInterface } from '../RewardEscrow' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_kwenta", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "rewardEscrow", - type: "address", - }, - ], - name: "StakingRewardsSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "treasuryDAO", - type: "address", - }, - ], - name: "TreasuryDAOSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beneficiary", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Vested", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "beneficiary", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "duration", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "entryID", - type: "uint256", - }, - ], - name: "VestingEntryCreated", - type: "event", - }, - { - inputs: [], - name: "MAX_DURATION", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "accountVestingEntryIDs", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "quantity", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "appendVestingEntry", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "beneficiary", - type: "address", - }, - { - internalType: "uint256", - name: "deposit", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "createEscrowEntry", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "pageSize", - type: "uint256", - }, - ], - name: "getAccountVestingEntryIDs", - outputs: [ - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "getKwentaAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "entryID", - type: "uint256", - }, - ], - name: "getVestingEntry", - outputs: [ - { - internalType: "uint64", - name: "endTime", - type: "uint64", - }, - { - internalType: "uint256", - name: "escrowAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "entryID", - type: "uint256", - }, - ], - name: "getVestingEntryClaimable", - outputs: [ - { - internalType: "uint256", - name: "quantity", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256[]", - name: "entryIDs", - type: "uint256[]", - }, - ], - name: "getVestingQuantity", - outputs: [ - { - internalType: "uint256", - name: "total", - type: "uint256", - }, - { - internalType: "uint256", - name: "totalFee", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - { - internalType: "uint256", - name: "pageSize", - type: "uint256", - }, - ], - name: "getVestingSchedules", - outputs: [ - { - components: [ - { - internalType: "uint64", - name: "endTime", - type: "uint64", - }, - { - internalType: "uint256", - name: "escrowAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "entryID", - type: "uint256", - }, - ], - internalType: "struct VestingEntries.VestingEntryWithID[]", - name: "", - type: "tuple[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "nextEntryId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "numVestingEntries", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_stakingRewards", - type: "address", - }, - ], - name: "setStakingRewards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_treasuryDAO", - type: "address", - }, - ], - name: "setTreasuryDAO", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "stakeEscrow", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "stakingRewards", - outputs: [ - { - internalType: "contract IStakingRewards", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "totalEscrowedAccountBalance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "totalEscrowedBalance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "totalVestedAccountBalance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "treasuryDAO", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - ], - name: "unstakeEscrow", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256[]", - name: "entryIDs", - type: "uint256[]", - }, - ], - name: "vest", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "vestingSchedules", - outputs: [ - { - internalType: "uint64", - name: "endTime", - type: "uint64", - }, - { - internalType: "uint256", - name: "escrowAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_kwenta', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'rewardEscrow', + type: 'address', + }, + ], + name: 'StakingRewardsSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'treasuryDAO', + type: 'address', + }, + ], + name: 'TreasuryDAOSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'beneficiary', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Vested', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'beneficiary', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'entryID', + type: 'uint256', + }, + ], + name: 'VestingEntryCreated', + type: 'event', + }, + { + inputs: [], + name: 'MAX_DURATION', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'accountVestingEntryIDs', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'quantity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + ], + name: 'appendVestingEntry', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'beneficiary', + type: 'address', + }, + { + internalType: 'uint256', + name: 'deposit', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + ], + name: 'createEscrowEntry', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'pageSize', + type: 'uint256', + }, + ], + name: 'getAccountVestingEntryIDs', + outputs: [ + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getKwentaAddress', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'entryID', + type: 'uint256', + }, + ], + name: 'getVestingEntry', + outputs: [ + { + internalType: 'uint64', + name: 'endTime', + type: 'uint64', + }, + { + internalType: 'uint256', + name: 'escrowAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'entryID', + type: 'uint256', + }, + ], + name: 'getVestingEntryClaimable', + outputs: [ + { + internalType: 'uint256', + name: 'quantity', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256[]', + name: 'entryIDs', + type: 'uint256[]', + }, + ], + name: 'getVestingQuantity', + outputs: [ + { + internalType: 'uint256', + name: 'total', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'totalFee', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'pageSize', + type: 'uint256', + }, + ], + name: 'getVestingSchedules', + outputs: [ + { + components: [ + { + internalType: 'uint64', + name: 'endTime', + type: 'uint64', + }, + { + internalType: 'uint256', + name: 'escrowAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'entryID', + type: 'uint256', + }, + ], + internalType: 'struct VestingEntries.VestingEntryWithID[]', + name: '', + type: 'tuple[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'nextEntryId', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'numVestingEntries', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_stakingRewards', + type: 'address', + }, + ], + name: 'setStakingRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_treasuryDAO', + type: 'address', + }, + ], + name: 'setTreasuryDAO', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_amount', + type: 'uint256', + }, + ], + name: 'stakeEscrow', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'stakingRewards', + outputs: [ + { + internalType: 'contract IStakingRewards', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'totalEscrowedAccountBalance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'totalEscrowedBalance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'totalVestedAccountBalance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'treasuryDAO', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_amount', + type: 'uint256', + }, + ], + name: 'unstakeEscrow', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256[]', + name: 'entryIDs', + type: 'uint256[]', + }, + ], + name: 'vest', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'vestingSchedules', + outputs: [ + { + internalType: 'uint64', + name: 'endTime', + type: 'uint64', + }, + { + internalType: 'uint256', + name: 'escrowAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class RewardEscrow__factory { - static readonly abi = _abi; - static createInterface(): RewardEscrowInterface { - return new utils.Interface(_abi) as RewardEscrowInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): RewardEscrow { - return new Contract(address, _abi, signerOrProvider) as RewardEscrow; - } + static readonly abi = _abi + static createInterface(): RewardEscrowInterface { + return new utils.Interface(_abi) as RewardEscrowInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): RewardEscrow { + return new Contract(address, _abi, signerOrProvider) as RewardEscrow + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts index 070e290ea7..78d110c0b8 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts @@ -2,299 +2,292 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' import type { - SmartMarginAccountFactory, - SmartMarginAccountFactoryInterface, -} from "../SmartMarginAccountFactory"; + SmartMarginAccountFactory, + SmartMarginAccountFactoryInterface, +} from '../SmartMarginAccountFactory' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "AccountDoesNotExist", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "AccountFailedToFetchVersion", - type: "error", - }, - { - inputs: [], - name: "CannotUpgrade", - type: "error", - }, - { - inputs: [ - { - internalType: "bytes", - name: "data", - type: "bytes", - }, - ], - name: "FailedToSetAcountOwner", - type: "error", - }, - { - inputs: [], - name: "OnlyAccount", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "implementation", - type: "address", - }, - ], - name: "AccountImplementationUpgraded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "creator", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "version", - type: "bytes32", - }, - ], - name: "NewAccount", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [ - { - internalType: "address", - name: "accounts", - type: "address", - }, - ], - name: "accounts", - outputs: [ - { - internalType: "bool", - name: "exist", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "canUpgrade", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - ], - name: "getAccountOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "getAccountsOwnedBy", - outputs: [ - { - internalType: "address[]", - name: "", - type: "address[]", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "implementation", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "newAccount", - outputs: [ - { - internalType: "address payable", - name: "accountAddress", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "removeUpgradability", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_account", - type: "address", - }, - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - { - internalType: "address", - name: "_oldOwner", - type: "address", - }, - ], - name: "updateAccountOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_implementation", - type: "address", - }, - ], - name: "upgradeAccountImplementation", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + inputs: [], + name: 'AccountDoesNotExist', + type: 'error', + }, + { + inputs: [ + { + internalType: 'bytes', + name: 'data', + type: 'bytes', + }, + ], + name: 'AccountFailedToFetchVersion', + type: 'error', + }, + { + inputs: [], + name: 'CannotUpgrade', + type: 'error', + }, + { + inputs: [ + { + internalType: 'bytes', + name: 'data', + type: 'bytes', + }, + ], + name: 'FailedToSetAcountOwner', + type: 'error', + }, + { + inputs: [], + name: 'OnlyAccount', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'implementation', + type: 'address', + }, + ], + name: 'AccountImplementationUpgraded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'creator', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'version', + type: 'bytes32', + }, + ], + name: 'NewAccount', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnershipTransferred', + type: 'event', + }, + { + inputs: [ + { + internalType: 'address', + name: 'accounts', + type: 'address', + }, + ], + name: 'accounts', + outputs: [ + { + internalType: 'bool', + name: 'exist', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'canUpgrade', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_account', + type: 'address', + }, + ], + name: 'getAccountOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'getAccountsOwnedBy', + outputs: [ + { + internalType: 'address[]', + name: '', + type: 'address[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'implementation', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'newAccount', + outputs: [ + { + internalType: 'address payable', + name: 'accountAddress', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'removeUpgradability', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_account', + type: 'address', + }, + { + internalType: 'address', + name: '_newOwner', + type: 'address', + }, + { + internalType: 'address', + name: '_oldOwner', + type: 'address', + }, + ], + name: 'updateAccountOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_implementation', + type: 'address', + }, + ], + name: 'upgradeAccountImplementation', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class SmartMarginAccountFactory__factory { - static readonly abi = _abi; - static createInterface(): SmartMarginAccountFactoryInterface { - return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SmartMarginAccountFactory { - return new Contract( - address, - _abi, - signerOrProvider - ) as SmartMarginAccountFactory; - } + static readonly abi = _abi + static createInterface(): SmartMarginAccountFactoryInterface { + return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccountFactory { + return new Contract(address, _abi, signerOrProvider) as SmartMarginAccountFactory + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts index 4b12d1022b..08b4876946 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts @@ -2,624 +2,618 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - SmartMarginAccount, - SmartMarginAccountInterface, -} from "../SmartMarginAccount"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SmartMarginAccount, SmartMarginAccountInterface } from '../SmartMarginAccount' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_factory", - type: "address", - }, - { - internalType: "address", - name: "_events", - type: "address", - }, - { - internalType: "address", - name: "_marginAsset", - type: "address", - }, - { - internalType: "address", - name: "_futuresMarketManager", - type: "address", - }, - { - internalType: "address", - name: "_systemStatus", - type: "address", - }, - { - internalType: "address", - name: "_gelato", - type: "address", - }, - { - internalType: "address", - name: "_ops", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "EthWithdrawalFailed", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "available", - type: "uint256", - }, - { - internalType: "uint256", - name: "required", - type: "uint256", - }, - ], - name: "InsufficientFreeMargin", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "commandType", - type: "uint256", - }, - ], - name: "InvalidCommandType", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "delegateAddress", - type: "address", - }, - ], - name: "InvalidDelegateAddress", - type: "error", - }, - { - inputs: [], - name: "InvalidPrice", - type: "error", - }, - { - inputs: [], - name: "LengthMismatch", - type: "error", - }, - { - inputs: [], - name: "OnlyOps", - type: "error", - }, - { - inputs: [], - name: "Unauthorized", - type: "error", - }, - { - inputs: [], - name: "ZeroSizeDelta", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "caller", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "delegate", - type: "address", - }, - ], - name: "DelegatedAccountAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "caller", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "delegate", - type: "address", - }, - ], - name: "DelegatedAccountRemoved", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "caller", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "ETH", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "GELATO", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "OPS", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "VERSION", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_delegate", - type: "address", - }, - ], - name: "addDelegate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_conditionalOrderId", - type: "uint256", - }, - ], - name: "checker", - outputs: [ - { - internalType: "bool", - name: "canExec", - type: "bool", - }, - { - internalType: "bytes", - name: "execPayload", - type: "bytes", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "committedMargin", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "conditionalOrderId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "delegate", - type: "address", - }, - ], - name: "delegates", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "enum IAccount.Command[]", - name: "_commands", - type: "uint8[]", - }, - { - internalType: "bytes[]", - name: "_inputs", - type: "bytes[]", - }, - ], - name: "execute", - outputs: [], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_conditionalOrderId", - type: "uint256", - }, - ], - name: "executeConditionalOrder", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "freeMargin", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_conditionalOrderId", - type: "uint256", - }, - ], - name: "getConditionalOrder", - outputs: [ - { - components: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - internalType: "int256", - name: "marginDelta", - type: "int256", - }, - { - internalType: "int256", - name: "sizeDelta", - type: "int256", - }, - { - internalType: "uint256", - name: "targetPrice", - type: "uint256", - }, - { - internalType: "bytes32", - name: "gelatoTaskId", - type: "bytes32", - }, - { - internalType: "enum IAccount.ConditionalOrderTypes", - name: "conditionalOrderType", - type: "uint8", - }, - { - internalType: "uint256", - name: "desiredFillPrice", - type: "uint256", - }, - { - internalType: "bool", - name: "reduceOnly", - type: "bool", - }, - ], - internalType: "struct IAccount.ConditionalOrder", - name: "", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "getDelayedOrder", - outputs: [ - { - components: [ - { - internalType: "bool", - name: "isOffchain", - type: "bool", - }, - { - internalType: "int128", - name: "sizeDelta", - type: "int128", - }, - { - internalType: "uint128", - name: "desiredFillPrice", - type: "uint128", - }, - { - internalType: "uint128", - name: "targetRoundId", - type: "uint128", - }, - { - internalType: "uint128", - name: "commitDeposit", - type: "uint128", - }, - { - internalType: "uint128", - name: "keeperDeposit", - type: "uint128", - }, - { - internalType: "uint256", - name: "executableAtTime", - type: "uint256", - }, - { - internalType: "uint256", - name: "intentionTime", - type: "uint256", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", - name: "order", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_marketKey", - type: "bytes32", - }, - ], - name: "getPosition", - outputs: [ - { - components: [ - { - internalType: "uint64", - name: "id", - type: "uint64", - }, - { - internalType: "uint64", - name: "lastFundingIndex", - type: "uint64", - }, - { - internalType: "uint128", - name: "margin", - type: "uint128", - }, - { - internalType: "uint128", - name: "lastPrice", - type: "uint128", - }, - { - internalType: "int128", - name: "size", - type: "int128", - }, - ], - internalType: "struct IPerpsV2MarketConsolidated.Position", - name: "position", - type: "tuple", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "isAuth", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "isOwner", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_delegate", - type: "address", - }, - ], - name: "removeDelegate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "setInitialOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_factory', + type: 'address', + }, + { + internalType: 'address', + name: '_events', + type: 'address', + }, + { + internalType: 'address', + name: '_marginAsset', + type: 'address', + }, + { + internalType: 'address', + name: '_futuresMarketManager', + type: 'address', + }, + { + internalType: 'address', + name: '_systemStatus', + type: 'address', + }, + { + internalType: 'address', + name: '_gelato', + type: 'address', + }, + { + internalType: 'address', + name: '_ops', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + inputs: [], + name: 'EthWithdrawalFailed', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'available', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'required', + type: 'uint256', + }, + ], + name: 'InsufficientFreeMargin', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'commandType', + type: 'uint256', + }, + ], + name: 'InvalidCommandType', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'delegateAddress', + type: 'address', + }, + ], + name: 'InvalidDelegateAddress', + type: 'error', + }, + { + inputs: [], + name: 'InvalidPrice', + type: 'error', + }, + { + inputs: [], + name: 'LengthMismatch', + type: 'error', + }, + { + inputs: [], + name: 'OnlyOps', + type: 'error', + }, + { + inputs: [], + name: 'Unauthorized', + type: 'error', + }, + { + inputs: [], + name: 'ZeroSizeDelta', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'caller', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'delegate', + type: 'address', + }, + ], + name: 'DelegatedAccountAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'caller', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'delegate', + type: 'address', + }, + ], + name: 'DelegatedAccountRemoved', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'caller', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnershipTransferred', + type: 'event', + }, + { + inputs: [], + name: 'ETH', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'GELATO', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'OPS', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'VERSION', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_delegate', + type: 'address', + }, + ], + name: 'addDelegate', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_conditionalOrderId', + type: 'uint256', + }, + ], + name: 'checker', + outputs: [ + { + internalType: 'bool', + name: 'canExec', + type: 'bool', + }, + { + internalType: 'bytes', + name: 'execPayload', + type: 'bytes', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'committedMargin', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'conditionalOrderId', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'delegate', + type: 'address', + }, + ], + name: 'delegates', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'enum IAccount.Command[]', + name: '_commands', + type: 'uint8[]', + }, + { + internalType: 'bytes[]', + name: '_inputs', + type: 'bytes[]', + }, + ], + name: 'execute', + outputs: [], + stateMutability: 'payable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_conditionalOrderId', + type: 'uint256', + }, + ], + name: 'executeConditionalOrder', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'freeMargin', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_conditionalOrderId', + type: 'uint256', + }, + ], + name: 'getConditionalOrder', + outputs: [ + { + components: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + internalType: 'int256', + name: 'marginDelta', + type: 'int256', + }, + { + internalType: 'int256', + name: 'sizeDelta', + type: 'int256', + }, + { + internalType: 'uint256', + name: 'targetPrice', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'gelatoTaskId', + type: 'bytes32', + }, + { + internalType: 'enum IAccount.ConditionalOrderTypes', + name: 'conditionalOrderType', + type: 'uint8', + }, + { + internalType: 'uint256', + name: 'desiredFillPrice', + type: 'uint256', + }, + { + internalType: 'bool', + name: 'reduceOnly', + type: 'bool', + }, + ], + internalType: 'struct IAccount.ConditionalOrder', + name: '', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'getDelayedOrder', + outputs: [ + { + components: [ + { + internalType: 'bool', + name: 'isOffchain', + type: 'bool', + }, + { + internalType: 'int128', + name: 'sizeDelta', + type: 'int128', + }, + { + internalType: 'uint128', + name: 'desiredFillPrice', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'targetRoundId', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'commitDeposit', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'keeperDeposit', + type: 'uint128', + }, + { + internalType: 'uint256', + name: 'executableAtTime', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'intentionTime', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', + name: 'order', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_marketKey', + type: 'bytes32', + }, + ], + name: 'getPosition', + outputs: [ + { + components: [ + { + internalType: 'uint64', + name: 'id', + type: 'uint64', + }, + { + internalType: 'uint64', + name: 'lastFundingIndex', + type: 'uint64', + }, + { + internalType: 'uint128', + name: 'margin', + type: 'uint128', + }, + { + internalType: 'uint128', + name: 'lastPrice', + type: 'uint128', + }, + { + internalType: 'int128', + name: 'size', + type: 'int128', + }, + ], + internalType: 'struct IPerpsV2MarketConsolidated.Position', + name: 'position', + type: 'tuple', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'isAuth', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'isOwner', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_delegate', + type: 'address', + }, + ], + name: 'removeDelegate', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'setInitialOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_newOwner', + type: 'address', + }, + ], + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + stateMutability: 'payable', + type: 'receive', + }, +] as const export class SmartMarginAccount__factory { - static readonly abi = _abi; - static createInterface(): SmartMarginAccountInterface { - return new utils.Interface(_abi) as SmartMarginAccountInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SmartMarginAccount { - return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount; - } + static readonly abi = _abi + static createInterface(): SmartMarginAccountInterface { + return new utils.Interface(_abi) as SmartMarginAccountInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccount { + return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount + } } diff --git a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts index f83039634d..e860b88c1d 100644 --- a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts @@ -2,675 +2,669 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - StakingRewards, - StakingRewardsInterface, -} from "../StakingRewards"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { StakingRewards, StakingRewardsInterface } from '../StakingRewards' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_rewardsDistribution", - type: "address", - }, - { - internalType: "address", - name: "_rewardsToken", - type: "address", - }, - { - internalType: "address", - name: "_stakingToken", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bool", - name: "isPaused", - type: "bool", - }, - ], - name: "PauseChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "token", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Recovered", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "RewardAdded", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "RewardPaid", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newDuration", - type: "uint256", - }, - ], - name: "RewardsDurationUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Staked", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "user", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "Withdrawn", - type: "event", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "earned", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "exit", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "getReward", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "getRewardForDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "lastPauseTime", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "lastTimeRewardApplicable", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "lastUpdateTime", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "notifyRewardAmount", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "paused", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "periodFinish", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "tokenAddress", - type: "address", - }, - { - internalType: "uint256", - name: "tokenAmount", - type: "uint256", - }, - ], - name: "recoverERC20", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardPerToken", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardPerTokenStored", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "rewards", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardsDistribution", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardsDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rewardsToken", - outputs: [ - { - internalType: "contract IERC20", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bool", - name: "_paused", - type: "bool", - }, - ], - name: "setPaused", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_rewardsDistribution", - type: "address", - }, - ], - name: "setRewardsDistribution", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_rewardsDuration", - type: "uint256", - }, - ], - name: "setRewardsDuration", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "stake", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "stakingToken", - outputs: [ - { - internalType: "contract IERC20", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "userRewardPerTokenPaid", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "withdraw", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardsDistribution', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardsToken', + type: 'address', + }, + { + internalType: 'address', + name: '_stakingToken', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bool', + name: 'isPaused', + type: 'bool', + }, + ], + name: 'PauseChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'token', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Recovered', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'RewardAdded', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'RewardPaid', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newDuration', + type: 'uint256', + }, + ], + name: 'RewardsDurationUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Staked', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'user', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'Withdrawn', + type: 'event', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'earned', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'exit', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'getReward', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'getRewardForDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'lastPauseTime', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'lastTimeRewardApplicable', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'lastUpdateTime', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'notifyRewardAmount', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'paused', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'periodFinish', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'tokenAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: 'tokenAmount', + type: 'uint256', + }, + ], + name: 'recoverERC20', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardPerToken', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardPerTokenStored', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'rewards', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardsDistribution', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardsDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rewardsToken', + outputs: [ + { + internalType: 'contract IERC20', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bool', + name: '_paused', + type: 'bool', + }, + ], + name: 'setPaused', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_rewardsDistribution', + type: 'address', + }, + ], + name: 'setRewardsDistribution', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_rewardsDuration', + type: 'uint256', + }, + ], + name: 'setRewardsDuration', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'stake', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'stakingToken', + outputs: [ + { + internalType: 'contract IERC20', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'userRewardPerTokenPaid', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'withdraw', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class StakingRewards__factory { - static readonly abi = _abi; - static createInterface(): StakingRewardsInterface { - return new utils.Interface(_abi) as StakingRewardsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): StakingRewards { - return new Contract(address, _abi, signerOrProvider) as StakingRewards; - } + static readonly abi = _abi + static createInterface(): StakingRewardsInterface { + return new utils.Interface(_abi) as StakingRewardsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): StakingRewards { + return new Contract(address, _abi, signerOrProvider) as StakingRewards + } } diff --git a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts index 67e0bbae89..e1953394c4 100644 --- a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts @@ -2,662 +2,656 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - SupplySchedule, - SupplyScheduleInterface, -} from "../SupplySchedule"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SupplySchedule, SupplyScheduleInterface } from '../SupplySchedule' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_treasuryDAO", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newAddress", - type: "address", - }, - ], - name: "KwentaUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newRewardAmount", - type: "uint256", - }, - ], - name: "MinterRewardUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newAddress", - type: "address", - }, - ], - name: "StakingRewardsUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "supplyMinted", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "numberOfWeeksIssued", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "lastMintEvent", - type: "uint256", - }, - ], - name: "SupplyMinted", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newPercentage", - type: "uint256", - }, - ], - name: "TradingRewardsDiversionUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newAddress", - type: "address", - }, - ], - name: "TradingRewardsUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "treasuryDAO", - type: "address", - }, - ], - name: "TreasuryDAOSet", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newPercentage", - type: "uint256", - }, - ], - name: "TreasuryDiversionUpdated", - type: "event", - }, - { - inputs: [], - name: "DECAY_RATE", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "INITIAL_SUPPLY", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "INITIAL_WEEKLY_SUPPLY", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MAX_MINTER_REWARD", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINT_BUFFER", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "MINT_PERIOD_DURATION", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "SUPPLY_DECAY_END", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "SUPPLY_DECAY_START", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "TERMINAL_SUPPLY_RATE_ANNUAL", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "inflationStartDate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "isMintable", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "kwenta", - outputs: [ - { - internalType: "contract IKwenta", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "lastMintEvent", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "mint", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "mintableSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "minterReward", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IKwenta", - name: "_kwenta", - type: "address", - }, - ], - name: "setKwenta", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "setMinterReward", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_stakingRewards", - type: "address", - }, - ], - name: "setStakingRewards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_tradingRewards", - type: "address", - }, - ], - name: "setTradingRewards", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_tradingRewardsDiversion", - type: "uint256", - }, - ], - name: "setTradingRewardsDiversion", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_treasuryDAO", - type: "address", - }, - ], - name: "setTreasuryDAO", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "_treasuryDiversion", - type: "uint256", - }, - ], - name: "setTreasuryDiversion", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "stakingRewards", - outputs: [ - { - internalType: "contract IStakingRewards", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "totalSupply", - type: "uint256", - }, - { - internalType: "uint256", - name: "numOfWeeks", - type: "uint256", - }, - ], - name: "terminalInflationSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [ - { - internalType: "uint256", - name: "counter", - type: "uint256", - }, - ], - name: "tokenDecaySupplyForWeek", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "pure", - type: "function", - }, - { - inputs: [], - name: "tradingRewards", - outputs: [ - { - internalType: "contract IMultipleMerkleDistributor", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "tradingRewardsDiversion", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "treasuryDAO", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "treasuryDiversion", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "weekCounter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "weeksSinceLastIssuance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_treasuryDAO', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newAddress', + type: 'address', + }, + ], + name: 'KwentaUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newRewardAmount', + type: 'uint256', + }, + ], + name: 'MinterRewardUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newAddress', + type: 'address', + }, + ], + name: 'StakingRewardsUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'supplyMinted', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'numberOfWeeksIssued', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'lastMintEvent', + type: 'uint256', + }, + ], + name: 'SupplyMinted', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newPercentage', + type: 'uint256', + }, + ], + name: 'TradingRewardsDiversionUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newAddress', + type: 'address', + }, + ], + name: 'TradingRewardsUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'treasuryDAO', + type: 'address', + }, + ], + name: 'TreasuryDAOSet', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newPercentage', + type: 'uint256', + }, + ], + name: 'TreasuryDiversionUpdated', + type: 'event', + }, + { + inputs: [], + name: 'DECAY_RATE', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'INITIAL_SUPPLY', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'INITIAL_WEEKLY_SUPPLY', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'MAX_MINTER_REWARD', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'MINT_BUFFER', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'MINT_PERIOD_DURATION', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'SUPPLY_DECAY_END', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'SUPPLY_DECAY_START', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'TERMINAL_SUPPLY_RATE_ANNUAL', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'inflationStartDate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'isMintable', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'kwenta', + outputs: [ + { + internalType: 'contract IKwenta', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'lastMintEvent', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'mint', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'mintableSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'minterReward', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'contract IKwenta', + name: '_kwenta', + type: 'address', + }, + ], + name: 'setKwenta', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'setMinterReward', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_stakingRewards', + type: 'address', + }, + ], + name: 'setStakingRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_tradingRewards', + type: 'address', + }, + ], + name: 'setTradingRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_tradingRewardsDiversion', + type: 'uint256', + }, + ], + name: 'setTradingRewardsDiversion', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_treasuryDAO', + type: 'address', + }, + ], + name: 'setTreasuryDAO', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: '_treasuryDiversion', + type: 'uint256', + }, + ], + name: 'setTreasuryDiversion', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'stakingRewards', + outputs: [ + { + internalType: 'contract IStakingRewards', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'totalSupply', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'numOfWeeks', + type: 'uint256', + }, + ], + name: 'terminalInflationSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'pure', + type: 'function', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'counter', + type: 'uint256', + }, + ], + name: 'tokenDecaySupplyForWeek', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'pure', + type: 'function', + }, + { + inputs: [], + name: 'tradingRewards', + outputs: [ + { + internalType: 'contract IMultipleMerkleDistributor', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'tradingRewardsDiversion', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'treasuryDAO', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'treasuryDiversion', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'weekCounter', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'weeksSinceLastIssuance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class SupplySchedule__factory { - static readonly abi = _abi; - static createInterface(): SupplyScheduleInterface { - return new utils.Interface(_abi) as SupplyScheduleInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SupplySchedule { - return new Contract(address, _abi, signerOrProvider) as SupplySchedule; - } + static readonly abi = _abi + static createInterface(): SupplyScheduleInterface { + return new utils.Interface(_abi) as SupplyScheduleInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SupplySchedule { + return new Contract(address, _abi, signerOrProvider) as SupplySchedule + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts index d33d0b0dad..747d89f3da 100644 --- a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts @@ -2,322 +2,319 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { SynthRedeemer, SynthRedeemerInterface } from "../SynthRedeemer"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SynthRedeemer, SynthRedeemerInterface } from '../SynthRedeemer' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "synth", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "rateToRedeem", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "totalSynthSupply", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "supplyInsUSD", - type: "uint256", - }, - ], - name: "SynthDeprecated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "synth", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amountOfSynth", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amountInsUSD", - type: "uint256", - }, - ], - name: "SynthRedeemed", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IERC20", - name: "synthProxy", - type: "address", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "balanceInsUSD", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract IERC20", - name: "synthProxy", - type: "address", - }, - { - internalType: "uint256", - name: "rateToRedeem", - type: "uint256", - }, - ], - name: "deprecate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract IERC20", - name: "synthProxy", - type: "address", - }, - ], - name: "redeem", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract IERC20[]", - name: "synthProxies", - type: "address[]", - }, - ], - name: "redeemAll", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract IERC20", - name: "synthProxy", - type: "address", - }, - { - internalType: "uint256", - name: "amountOfSynth", - type: "uint256", - }, - ], - name: "redeemPartial", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "redemptions", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "contract IERC20", - name: "synthProxy", - type: "address", - }, - ], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "supplyInsUSD", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'synth', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'rateToRedeem', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'totalSynthSupply', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'supplyInsUSD', + type: 'uint256', + }, + ], + name: 'SynthDeprecated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'synth', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountOfSynth', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountInsUSD', + type: 'uint256', + }, + ], + name: 'SynthRedeemed', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IERC20', + name: 'synthProxy', + type: 'address', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: 'balanceInsUSD', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract IERC20', + name: 'synthProxy', + type: 'address', + }, + { + internalType: 'uint256', + name: 'rateToRedeem', + type: 'uint256', + }, + ], + name: 'deprecate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract IERC20', + name: 'synthProxy', + type: 'address', + }, + ], + name: 'redeem', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract IERC20[]', + name: 'synthProxies', + type: 'address[]', + }, + ], + name: 'redeemAll', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract IERC20', + name: 'synthProxy', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amountOfSynth', + type: 'uint256', + }, + ], + name: 'redeemPartial', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'redemptions', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'contract IERC20', + name: 'synthProxy', + type: 'address', + }, + ], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: 'supplyInsUSD', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class SynthRedeemer__factory { - static readonly abi = _abi; - static createInterface(): SynthRedeemerInterface { - return new utils.Interface(_abi) as SynthRedeemerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SynthRedeemer { - return new Contract(address, _abi, signerOrProvider) as SynthRedeemer; - } + static readonly abi = _abi + static createInterface(): SynthRedeemerInterface { + return new utils.Interface(_abi) as SynthRedeemerInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SynthRedeemer { + return new Contract(address, _abi, signerOrProvider) as SynthRedeemer + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts index ed9e6d6e7f..f44c3ead8d 100644 --- a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts @@ -2,336 +2,333 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { SynthSwap, SynthSwapInterface } from "../SynthSwap"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SynthSwap, SynthSwapInterface } from '../SynthSwap' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_sUSD", - type: "address", - }, - { - internalType: "address", - name: "_aggregationRouterV4", - type: "address", - }, - { - internalType: "address", - name: "_addressResolver", - type: "address", - }, - { - internalType: "address", - name: "_volumeRewards", - type: "address", - }, - { - internalType: "address", - name: "_treasury", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - name: "Received", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - name: "SwapInto", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - name: "SwapOutOf", - type: "event", - }, - { - inputs: [], - name: "acceptOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "contract IERC20", - name: "token", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "rescueFunds", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_destSynthCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "swapInto", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_sourceSynthCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_sourceAmount", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "swapOutOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_destSynthCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "_sourceTokenAddress", - type: "address", - }, - { - internalType: "uint256", - name: "_amount", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "uniswapSwapInto", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "payable", - type: "function", - }, - { - inputs: [ - { - internalType: "bytes32", - name: "_sourceSynthCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "_destTokenAddress", - type: "address", - }, - { - internalType: "uint256", - name: "_amountOfSynth", - type: "uint256", - }, - { - internalType: "uint256", - name: "_expectedAmountOfSUSDFromSwap", - type: "uint256", - }, - { - internalType: "bytes", - name: "_data", - type: "bytes", - }, - ], - name: "uniswapSwapOutOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "nonpayable", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_sUSD', + type: 'address', + }, + { + internalType: 'address', + name: '_aggregationRouterV4', + type: 'address', + }, + { + internalType: 'address', + name: '_addressResolver', + type: 'address', + }, + { + internalType: 'address', + name: '_volumeRewards', + type: 'address', + }, + { + internalType: 'address', + name: '_treasury', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + name: 'Received', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + name: 'SwapInto', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + name: 'SwapOutOf', + type: 'event', + }, + { + inputs: [], + name: 'acceptOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'contract IERC20', + name: 'token', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'rescueFunds', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_destSynthCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes', + name: '_data', + type: 'bytes', + }, + ], + name: 'swapInto', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'payable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_sourceSynthCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes', + name: '_data', + type: 'bytes', + }, + ], + name: 'swapOutOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_destSynthCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: '_sourceTokenAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: '_amount', + type: 'uint256', + }, + { + internalType: 'bytes', + name: '_data', + type: 'bytes', + }, + ], + name: 'uniswapSwapInto', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'payable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'bytes32', + name: '_sourceSynthCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: '_destTokenAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: '_amountOfSynth', + type: 'uint256', + }, + { + internalType: 'uint256', + name: '_expectedAmountOfSUSDFromSwap', + type: 'uint256', + }, + { + internalType: 'bytes', + name: '_data', + type: 'bytes', + }, + ], + name: 'uniswapSwapOutOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + stateMutability: 'nonpayable', + type: 'function', + }, + { + stateMutability: 'payable', + type: 'receive', + }, +] as const export class SynthSwap__factory { - static readonly abi = _abi; - static createInterface(): SynthSwapInterface { - return new utils.Interface(_abi) as SynthSwapInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SynthSwap { - return new Contract(address, _abi, signerOrProvider) as SynthSwap; - } + static readonly abi = _abi + static createInterface(): SynthSwapInterface { + return new utils.Interface(_abi) as SynthSwapInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SynthSwap { + return new Contract(address, _abi, signerOrProvider) as SynthSwap + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts index 640e7cf4d0..d4c68ad93d 100644 --- a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts @@ -2,151 +2,148 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { SynthUtil, SynthUtilInterface } from "../SynthUtil"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SynthUtil, SynthUtilInterface } from '../SynthUtil' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - constant: true, - inputs: [], - name: "addressResolverProxy", - outputs: [ - { - internalType: "contract IAddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "synthsBalances", - outputs: [ - { - internalType: "bytes32[]", - name: "", - type: "bytes32[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "synthsRates", - outputs: [ - { - internalType: "bytes32[]", - name: "", - type: "bytes32[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "synthsTotalSupplies", - outputs: [ - { - internalType: "bytes32[]", - name: "", - type: "bytes32[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - { - internalType: "uint256[]", - name: "", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "totalSynthsInKey", - outputs: [ - { - internalType: "uint256", - name: "total", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: 'resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + constant: true, + inputs: [], + name: 'addressResolverProxy', + outputs: [ + { + internalType: 'contract IAddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'synthsBalances', + outputs: [ + { + internalType: 'bytes32[]', + name: '', + type: 'bytes32[]', + }, + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'synthsRates', + outputs: [ + { + internalType: 'bytes32[]', + name: '', + type: 'bytes32[]', + }, + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'synthsTotalSupplies', + outputs: [ + { + internalType: 'bytes32[]', + name: '', + type: 'bytes32[]', + }, + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + { + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'totalSynthsInKey', + outputs: [ + { + internalType: 'uint256', + name: 'total', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class SynthUtil__factory { - static readonly abi = _abi; - static createInterface(): SynthUtilInterface { - return new utils.Interface(_abi) as SynthUtilInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SynthUtil { - return new Contract(address, _abi, signerOrProvider) as SynthUtil; - } + static readonly abi = _abi + static createInterface(): SynthUtilInterface { + return new utils.Interface(_abi) as SynthUtilInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SynthUtil { + return new Contract(address, _abi, signerOrProvider) as SynthUtil + } } diff --git a/packages/sdk/src/contracts/types/factories/Synth__factory.ts b/packages/sdk/src/contracts/types/factories/Synth__factory.ts index 7a9411a1c5..0c1d26cad9 100644 --- a/packages/sdk/src/contracts/types/factories/Synth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synth__factory.ts @@ -2,812 +2,812 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { Synth, SynthInterface } from "../Synth"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { Synth, SynthInterface } from '../Synth' const _abi = [ - { - inputs: [ - { - internalType: "address payable", - name: "_proxy", - type: "address", - }, - { - internalType: "contract TokenState", - name: "_tokenState", - type: "address", - }, - { - internalType: "string", - name: "_tokenName", - type: "string", - }, - { - internalType: "string", - name: "_tokenSymbol", - type: "string", - }, - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_totalSupply", - type: "uint256", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Burned", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Issued", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "proxyAddress", - type: "address", - }, - ], - name: "ProxyUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newTokenState", - type: "address", - }, - ], - name: "TokenStateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "DECIMALS", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "FEE_ADDRESS", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "spender", - type: "address", - }, - ], - name: "allowance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "approve", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "burn", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "currencyKey", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "decimals", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "issue", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "messageSender", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "proxy", - outputs: [ - { - internalType: "contract Proxy", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "setMessageSender", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address payable", - name: "_proxy", - type: "address", - }, - ], - name: "setProxy", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract TokenState", - name: "_tokenState", - type: "address", - }, - ], - name: "setTokenState", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "setTotalSupply", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "tokenState", - outputs: [ - { - internalType: "contract TokenState", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transfer", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transferAndSettle", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transferFromAndSettle", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "transferableSynths", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address payable', + name: '_proxy', + type: 'address', + }, + { + internalType: 'contract TokenState', + name: '_tokenState', + type: 'address', + }, + { + internalType: 'string', + name: '_tokenName', + type: 'string', + }, + { + internalType: 'string', + name: '_tokenSymbol', + type: 'string', + }, + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_totalSupply', + type: 'uint256', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Approval', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Burned', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Issued', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'proxyAddress', + type: 'address', + }, + ], + name: 'ProxyUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newTokenState', + type: 'address', + }, + ], + name: 'TokenStateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'to', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Transfer', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'DECIMALS', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'FEE_ADDRESS', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + ], + name: 'allowance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'approve', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'burn', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'currencyKey', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'decimals', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'issue', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'messageSender', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'name', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'proxy', + outputs: [ + { + internalType: 'contract Proxy', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'setMessageSender', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address payable', + name: '_proxy', + type: 'address', + }, + ], + name: 'setProxy', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract TokenState', + name: '_tokenState', + type: 'address', + }, + ], + name: 'setTokenState', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'setTotalSupply', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'symbol', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'tokenState', + outputs: [ + { + internalType: 'contract TokenState', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transfer', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transferAndSettle', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transferFrom', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transferFromAndSettle', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'transferableSynths', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class Synth__factory { - static readonly abi = _abi; - static createInterface(): SynthInterface { - return new utils.Interface(_abi) as SynthInterface; - } - static connect(address: string, signerOrProvider: Signer | Provider): Synth { - return new Contract(address, _abi, signerOrProvider) as Synth; - } + static readonly abi = _abi + static createInterface(): SynthInterface { + return new utils.Interface(_abi) as SynthInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): Synth { + return new Contract(address, _abi, signerOrProvider) as Synth + } } diff --git a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts index 8992e24beb..9d6766b350 100644 --- a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts @@ -2,1911 +2,1908 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { Synthetix, SynthetixInterface } from "../Synthetix"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { Synthetix, SynthetixInterface } from '../Synthetix' const _abi = [ - { - inputs: [ - { - internalType: "address payable", - name: "_proxy", - type: "address", - }, - { - internalType: "contract TokenState", - name: "_tokenState", - type: "address", - }, - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "uint256", - name: "_totalSupply", - type: "uint256", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "snxRedeemed", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "amountLiquidated", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "liquidator", - type: "address", - }, - ], - name: "AccountLiquidated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "owner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "spender", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Approval", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "fromCurrencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "fromAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "toAddress", - type: "address", - }, - ], - name: "AtomicSynthExchange", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "ExchangeRebate", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "ExchangeReclaim", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - indexed: false, - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "ExchangeTracking", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "proxyAddress", - type: "address", - }, - ], - name: "ProxyUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bytes32", - name: "fromCurrencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "fromAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - indexed: false, - internalType: "address", - name: "toAddress", - type: "address", - }, - ], - name: "SynthExchange", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newTokenState", - type: "address", - }, - ], - name: "TokenStateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "from", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "to", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "Transfer", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "DECIMALS", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "TOKEN_NAME", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "TOKEN_SYMBOL", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "owner", - type: "address", - }, - { - internalType: "address", - name: "spender", - type: "address", - }, - ], - name: "allowance", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "anySynthOrSNXRateIsInvalid", - outputs: [ - { - internalType: "bool", - name: "anyRateInvalid", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "spender", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "approve", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "availableCurrencyKeys", - outputs: [ - { - internalType: "bytes32[]", - name: "", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "availableSynthCount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "uint256", - name: "index", - type: "uint256", - }, - ], - name: "availableSynths", - outputs: [ - { - internalType: "contract ISynth", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "balanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "burnSecondary", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "burnSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "burnForAddress", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "burnSynthsOnBehalf", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "burnSynthsToTarget", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "burnForAddress", - type: "address", - }, - ], - name: "burnSynthsToTargetOnBehalf", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "collateral", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "_issuer", - type: "address", - }, - ], - name: "collateralisationRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "debtBalanceOf", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "decimals", - outputs: [ - { - internalType: "uint8", - name: "", - type: "uint8", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "fromCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "fromAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - internalType: "address", - name: "toAddress", - type: "address", - }, - ], - name: "emitAtomicSynthExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "emitExchangeRebate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "emitExchangeReclaim", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - internalType: "uint256", - name: "fee", - type: "uint256", - }, - ], - name: "emitExchangeTracking", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bytes32", - name: "fromCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "fromAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "toCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "toAmount", - type: "uint256", - }, - { - internalType: "address", - name: "toAddress", - type: "address", - }, - ], - name: "emitSynthExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "exchange", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - { - internalType: "uint256", - name: "minAmount", - type: "uint256", - }, - ], - name: "exchangeAtomically", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "exchangeForAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "exchangeOnBehalf", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "exchangeForAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "rewardAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "exchangeOnBehalfWithTracking", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "rewardAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "exchangeWithTracking", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "rewardAddress", - type: "address", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "exchangeWithTrackingForInitiator", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "sourceAmount", - type: "uint256", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "trackingCode", - type: "bytes32", - }, - ], - name: "exchangeWithVirtual", - outputs: [ - { - internalType: "uint256", - name: "amountReceived", - type: "uint256", - }, - { - internalType: "contract IVirtualSynth", - name: "vSynth", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "getFirstNonZeroEscrowIndex", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "isWaitingPeriod", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "issueMaxSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "issueForAddress", - type: "address", - }, - ], - name: "issueMaxSynthsOnBehalf", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "issueSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "issueForAddress", - type: "address", - }, - { - internalType: "uint256", - name: "amount", - type: "uint256", - }, - ], - name: "issueSynthsOnBehalf", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "liquidateDelinquentAccount", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "uint256", - name: "escrowStartIndex", - type: "uint256", - }, - ], - name: "liquidateDelinquentAccountEscrowIndex", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "liquidateSelf", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "maxIssuableSynths", - outputs: [ - { - internalType: "uint256", - name: "maxIssuable", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "messageSender", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "migrateEscrowBalanceToRewardEscrowV2", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "migrateEscrowContractBalance", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "mint", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "mintSecondary", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - name: "mintSecondaryRewards", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "name", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "proxy", - outputs: [ - { - internalType: "contract Proxy", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "remainingIssuableSynths", - outputs: [ - { - internalType: "uint256", - name: "maxIssuable", - type: "uint256", - }, - { - internalType: "uint256", - name: "alreadyIssued", - type: "uint256", - }, - { - internalType: "uint256", - name: "totalSystemDebt", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "sUSD", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "sender", - type: "address", - }, - ], - name: "setMessageSender", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address payable", - name: "_proxy", - type: "address", - }, - ], - name: "setProxy", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "contract TokenState", - name: "_tokenState", - type: "address", - }, - ], - name: "setTokenState", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "settle", - outputs: [ - { - internalType: "uint256", - name: "reclaimed", - type: "uint256", - }, - { - internalType: "uint256", - name: "refunded", - type: "uint256", - }, - { - internalType: "uint256", - name: "numEntriesSettled", - type: "uint256", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "symbol", - outputs: [ - { - internalType: "string", - name: "", - type: "string", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "synths", - outputs: [ - { - internalType: "contract ISynth", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "synthAddress", - type: "address", - }, - ], - name: "synthsByAddress", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "tokenState", - outputs: [ - { - internalType: "contract TokenState", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "totalIssuedSynths", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "totalIssuedSynthsExcludeOtherCollateral", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "totalSupply", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transfer", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "from", - type: "address", - }, - { - internalType: "address", - name: "to", - type: "address", - }, - { - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "transferFrom", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "account", - type: "address", - }, - ], - name: "transferableSynthetix", - outputs: [ - { - internalType: "uint256", - name: "transferable", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address payable', + name: '_proxy', + type: 'address', + }, + { + internalType: 'contract TokenState', + name: '_tokenState', + type: 'address', + }, + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'uint256', + name: '_totalSupply', + type: 'uint256', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'snxRedeemed', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amountLiquidated', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'liquidator', + type: 'address', + }, + ], + name: 'AccountLiquidated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Approval', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'fromCurrencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fromAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'toAddress', + type: 'address', + }, + ], + name: 'AtomicSynthExchange', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'ExchangeRebate', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'ExchangeReclaim', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'ExchangeTracking', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'proxyAddress', + type: 'address', + }, + ], + name: 'ProxyUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'fromCurrencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'fromAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + indexed: false, + internalType: 'address', + name: 'toAddress', + type: 'address', + }, + ], + name: 'SynthExchange', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newTokenState', + type: 'address', + }, + ], + name: 'TokenStateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'from', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'to', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Transfer', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'DECIMALS', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'TOKEN_NAME', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'TOKEN_SYMBOL', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + ], + name: 'allowance', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'anySynthOrSNXRateIsInvalid', + outputs: [ + { + internalType: 'bool', + name: 'anyRateInvalid', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'approve', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'availableCurrencyKeys', + outputs: [ + { + internalType: 'bytes32[]', + name: '', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'availableSynthCount', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'uint256', + name: 'index', + type: 'uint256', + }, + ], + name: 'availableSynths', + outputs: [ + { + internalType: 'contract ISynth', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'burnSecondary', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'burnSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'burnForAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'burnSynthsOnBehalf', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'burnSynthsToTarget', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'burnForAddress', + type: 'address', + }, + ], + name: 'burnSynthsToTargetOnBehalf', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'collateral', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: '_issuer', + type: 'address', + }, + ], + name: 'collateralisationRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'debtBalanceOf', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'decimals', + outputs: [ + { + internalType: 'uint8', + name: '', + type: 'uint8', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'fromCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'fromAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + internalType: 'address', + name: 'toAddress', + type: 'address', + }, + ], + name: 'emitAtomicSynthExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'emitExchangeRebate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'emitExchangeReclaim', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'fee', + type: 'uint256', + }, + ], + name: 'emitExchangeTracking', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'fromCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'fromAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'toCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'toAmount', + type: 'uint256', + }, + { + internalType: 'address', + name: 'toAddress', + type: 'address', + }, + ], + name: 'emitSynthExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'exchange', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'minAmount', + type: 'uint256', + }, + ], + name: 'exchangeAtomically', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'exchangeForAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'exchangeOnBehalf', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'exchangeForAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'rewardAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'exchangeOnBehalfWithTracking', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'rewardAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'exchangeWithTracking', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'rewardAddress', + type: 'address', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'exchangeWithTrackingForInitiator', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'sourceAmount', + type: 'uint256', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'trackingCode', + type: 'bytes32', + }, + ], + name: 'exchangeWithVirtual', + outputs: [ + { + internalType: 'uint256', + name: 'amountReceived', + type: 'uint256', + }, + { + internalType: 'contract IVirtualSynth', + name: 'vSynth', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'getFirstNonZeroEscrowIndex', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'isWaitingPeriod', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'issueMaxSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'issueForAddress', + type: 'address', + }, + ], + name: 'issueMaxSynthsOnBehalf', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'issueSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'issueForAddress', + type: 'address', + }, + { + internalType: 'uint256', + name: 'amount', + type: 'uint256', + }, + ], + name: 'issueSynthsOnBehalf', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'liquidateDelinquentAccount', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'uint256', + name: 'escrowStartIndex', + type: 'uint256', + }, + ], + name: 'liquidateDelinquentAccountEscrowIndex', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'liquidateSelf', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'maxIssuableSynths', + outputs: [ + { + internalType: 'uint256', + name: 'maxIssuable', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'messageSender', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'migrateEscrowBalanceToRewardEscrowV2', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'migrateEscrowContractBalance', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'mint', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'mintSecondary', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + name: 'mintSecondaryRewards', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'name', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'proxy', + outputs: [ + { + internalType: 'contract Proxy', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'remainingIssuableSynths', + outputs: [ + { + internalType: 'uint256', + name: 'maxIssuable', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'alreadyIssued', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'totalSystemDebt', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'sUSD', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'sender', + type: 'address', + }, + ], + name: 'setMessageSender', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address payable', + name: '_proxy', + type: 'address', + }, + ], + name: 'setProxy', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'contract TokenState', + name: '_tokenState', + type: 'address', + }, + ], + name: 'setTokenState', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'settle', + outputs: [ + { + internalType: 'uint256', + name: 'reclaimed', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'refunded', + type: 'uint256', + }, + { + internalType: 'uint256', + name: 'numEntriesSettled', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'symbol', + outputs: [ + { + internalType: 'string', + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'synths', + outputs: [ + { + internalType: 'contract ISynth', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'synthAddress', + type: 'address', + }, + ], + name: 'synthsByAddress', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'tokenState', + outputs: [ + { + internalType: 'contract TokenState', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'totalIssuedSynths', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'totalIssuedSynthsExcludeOtherCollateral', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'totalSupply', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transfer', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: 'from', + type: 'address', + }, + { + internalType: 'address', + name: 'to', + type: 'address', + }, + { + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'transferFrom', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'account', + type: 'address', + }, + ], + name: 'transferableSynthetix', + outputs: [ + { + internalType: 'uint256', + name: 'transferable', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class Synthetix__factory { - static readonly abi = _abi; - static createInterface(): SynthetixInterface { - return new utils.Interface(_abi) as SynthetixInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): Synthetix { - return new Contract(address, _abi, signerOrProvider) as Synthetix; - } + static readonly abi = _abi + static createInterface(): SynthetixInterface { + return new utils.Interface(_abi) as SynthetixInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): Synthetix { + return new Contract(address, _abi, signerOrProvider) as Synthetix + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts index 723fd00b3c..5252cd6b51 100644 --- a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts @@ -2,2145 +2,2139 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - SystemSettings, - SystemSettingsInterface, -} from "../SystemSettings"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SystemSettings, SystemSettingsInterface } from '../SystemSettings' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - { - internalType: "address", - name: "_resolver", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "flags", - type: "address", - }, - ], - name: "AggregatorWarningFlagsUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "equivalent", - type: "address", - }, - ], - name: "AtomicEquivalentForDexPricingUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "newExchangeFeeRate", - type: "uint256", - }, - ], - name: "AtomicExchangeFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newMaxVolume", - type: "uint256", - }, - ], - name: "AtomicMaxVolumePerBlockUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newWindow", - type: "uint256", - }, - ], - name: "AtomicTwapWindowUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "newVolatilityConsiderationWindow", - type: "uint256", - }, - ], - name: "AtomicVolatilityConsiderationWindowUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "newVolatilityUpdateThreshold", - type: "uint256", - }, - ], - name: "AtomicVolatilityUpdateThresholdUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "name", - type: "bytes32", - }, - { - indexed: false, - internalType: "address", - name: "destination", - type: "address", - }, - ], - name: "CacheUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "collapseFeeRate", - type: "uint256", - }, - ], - name: "CollapseFeeRateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "value", - type: "uint256", - }, - ], - name: "CrossChainSynthTransferEnabledUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", - name: "gasLimitType", - type: "uint8", - }, - { - indexed: false, - internalType: "uint256", - name: "newLimit", - type: "uint256", - }, - ], - name: "CrossDomainMessageGasLimitChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "debtSnapshotStaleTime", - type: "uint256", - }, - ], - name: "DebtSnapshotStaleTimeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "rate", - type: "uint256", - }, - ], - name: "EtherWrapperBurnFeeRateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "maxETH", - type: "uint256", - }, - ], - name: "EtherWrapperMaxETHUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "rate", - type: "uint256", - }, - ], - name: "EtherWrapperMintFeeRateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "dynamicFeeRounds", - type: "uint256", - }, - ], - name: "ExchangeDynamicFeeRoundsUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "dynamicFeeThreshold", - type: "uint256", - }, - ], - name: "ExchangeDynamicFeeThresholdUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "dynamicFeeWeightDecay", - type: "uint256", - }, - ], - name: "ExchangeDynamicFeeWeightDecayUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "newExchangeFeeRate", - type: "uint256", - }, - ], - name: "ExchangeFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "maxDynamicFee", - type: "uint256", - }, - ], - name: "ExchangeMaxDynamicFeeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newFeePeriodDuration", - type: "uint256", - }, - ], - name: "FeePeriodDurationUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newReward", - type: "uint256", - }, - ], - name: "FlagRewardUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "interactionDelay", - type: "uint256", - }, - ], - name: "InteractionDelayUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newRatio", - type: "uint256", - }, - ], - name: "IssuanceRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newReward", - type: "uint256", - }, - ], - name: "LiquidateRewardUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newDelay", - type: "uint256", - }, - ], - name: "LiquidationDelayUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newDuration", - type: "uint256", - }, - ], - name: "LiquidationEscrowDurationUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newPenalty", - type: "uint256", - }, - ], - name: "LiquidationPenaltyUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newRatio", - type: "uint256", - }, - ], - name: "LiquidationRatioUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "minimumStakeTime", - type: "uint256", - }, - ], - name: "MinimumStakeTimeUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "threshold", - type: "uint256", - }, - ], - name: "PriceDeviationThresholdUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "synthKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "PureChainlinkPriceForAtomicSwapsEnabledUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "rateStalePeriod", - type: "uint256", - }, - ], - name: "RateStalePeriodUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newPenalty", - type: "uint256", - }, - ], - name: "SelfLiquidationPenaltyUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newPenalty", - type: "uint256", - }, - ], - name: "SnxLiquidationPenaltyUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "newTargetThreshold", - type: "uint256", - }, - ], - name: "TargetThresholdUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bool", - name: "enabled", - type: "bool", - }, - ], - name: "TradingRewardsEnabled", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "waitingPeriodSecs", - type: "uint256", - }, - ], - name: "WaitingPeriodSecsUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "wrapper", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "rate", - type: "int256", - }, - ], - name: "WrapperBurnFeeRateUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "wrapper", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "maxTokenAmount", - type: "uint256", - }, - ], - name: "WrapperMaxTokenAmountUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "wrapper", - type: "address", - }, - { - indexed: false, - internalType: "int256", - name: "rate", - type: "int256", - }, - ], - name: "WrapperMintFeeRateUpdated", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "aggregatorWarningFlags", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "atomicEquivalentForDexPricing", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "atomicExchangeFeeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "atomicMaxVolumePerBlock", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "atomicTwapWindow", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "atomicVolatilityConsiderationWindow", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "atomicVolatilityUpdateThreshold", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "collateral", - type: "address", - }, - ], - name: "collapseFeeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "crossChainSynthTransferEnabled", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", - name: "gasLimitType", - type: "uint8", - }, - ], - name: "crossDomainMessageGasLimit", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "debtSnapshotStaleTime", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "etherWrapperBurnFeeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "etherWrapperMaxETH", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "etherWrapperMintFeeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "exchangeDynamicFeeRounds", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "exchangeDynamicFeeThreshold", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "exchangeDynamicFeeWeightDecay", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "exchangeFeeRate", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "exchangeMaxDynamicFee", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "feePeriodDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "flagReward", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "collateral", - type: "address", - }, - ], - name: "interactionDelay", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isResolverCached", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "issuanceRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidateReward", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationDelay", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationEscrowDuration", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationPenalty", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "liquidationRatio", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "minimumStakeTime", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "priceDeviationThresholdFactor", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "pureChainlinkPriceForAtomicSwapsEnabled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "rateStalePeriod", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "rebuildCache", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolver", - outputs: [ - { - internalType: "contract AddressResolver", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "resolverAddressesRequired", - outputs: [ - { - internalType: "bytes32[]", - name: "addresses", - type: "bytes32[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "selfLiquidationPenalty", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_flags", - type: "address", - }, - ], - name: "setAggregatorWarningFlags", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "address", - name: "_equivalent", - type: "address", - }, - ], - name: "setAtomicEquivalentForDexPricing", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_exchangeFeeRate", - type: "uint256", - }, - ], - name: "setAtomicExchangeFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_maxVolume", - type: "uint256", - }, - ], - name: "setAtomicMaxVolumePerBlock", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_window", - type: "uint256", - }, - ], - name: "setAtomicTwapWindow", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_window", - type: "uint256", - }, - ], - name: "setAtomicVolatilityConsiderationWindow", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_threshold", - type: "uint256", - }, - ], - name: "setAtomicVolatilityUpdateThreshold", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_collateral", - type: "address", - }, - { - internalType: "uint256", - name: "_collapseFeeRate", - type: "uint256", - }, - ], - name: "setCollapseFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "_value", - type: "uint256", - }, - ], - name: "setCrossChainSynthTransferEnabled", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", - name: "_gasLimitType", - type: "uint8", - }, - { - internalType: "uint256", - name: "_crossDomainMessageGasLimit", - type: "uint256", - }, - ], - name: "setCrossDomainMessageGasLimit", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_seconds", - type: "uint256", - }, - ], - name: "setDebtSnapshotStaleTime", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_rate", - type: "uint256", - }, - ], - name: "setEtherWrapperBurnFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_maxETH", - type: "uint256", - }, - ], - name: "setEtherWrapperMaxETH", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_rate", - type: "uint256", - }, - ], - name: "setEtherWrapperMintFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "rounds", - type: "uint256", - }, - ], - name: "setExchangeDynamicFeeRounds", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "threshold", - type: "uint256", - }, - ], - name: "setExchangeDynamicFeeThreshold", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "weightDecay", - type: "uint256", - }, - ], - name: "setExchangeDynamicFeeWeightDecay", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "synthKeys", - type: "bytes32[]", - }, - { - internalType: "uint256[]", - name: "exchangeFeeRates", - type: "uint256[]", - }, - ], - name: "setExchangeFeeRateForSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "maxFee", - type: "uint256", - }, - ], - name: "setExchangeMaxDynamicFee", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_feePeriodDuration", - type: "uint256", - }, - ], - name: "setFeePeriodDuration", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "setFlagReward", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_collateral", - type: "address", - }, - { - internalType: "uint256", - name: "_interactionDelay", - type: "uint256", - }, - ], - name: "setInteractionDelay", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "ratio", - type: "uint256", - }, - ], - name: "setIssuanceRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reward", - type: "uint256", - }, - ], - name: "setLiquidateReward", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "time", - type: "uint256", - }, - ], - name: "setLiquidationDelay", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "duration", - type: "uint256", - }, - ], - name: "setLiquidationEscrowDuration", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "penalty", - type: "uint256", - }, - ], - name: "setLiquidationPenalty", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_liquidationRatio", - type: "uint256", - }, - ], - name: "setLiquidationRatio", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_seconds", - type: "uint256", - }, - ], - name: "setMinimumStakeTime", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_priceDeviationThresholdFactor", - type: "uint256", - }, - ], - name: "setPriceDeviationThresholdFactor", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "_currencyKey", - type: "bytes32", - }, - { - internalType: "bool", - name: "_enabled", - type: "bool", - }, - ], - name: "setPureChainlinkPriceForAtomicSwapsEnabled", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "period", - type: "uint256", - }, - ], - name: "setRateStalePeriod", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "penalty", - type: "uint256", - }, - ], - name: "setSelfLiquidationPenalty", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "penalty", - type: "uint256", - }, - ], - name: "setSnxLiquidationPenalty", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "percent", - type: "uint256", - }, - ], - name: "setTargetThreshold", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bool", - name: "_tradingRewardsEnabled", - type: "bool", - }, - ], - name: "setTradingRewardsEnabled", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "_waitingPeriodSecs", - type: "uint256", - }, - ], - name: "setWaitingPeriodSecs", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_wrapper", - type: "address", - }, - { - internalType: "int256", - name: "_rate", - type: "int256", - }, - ], - name: "setWrapperBurnFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_wrapper", - type: "address", - }, - { - internalType: "uint256", - name: "_maxTokenAmount", - type: "uint256", - }, - ], - name: "setWrapperMaxTokenAmount", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_wrapper", - type: "address", - }, - { - internalType: "int256", - name: "_rate", - type: "int256", - }, - ], - name: "setWrapperMintFeeRate", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "snxLiquidationPenalty", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "targetThreshold", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "tradingRewardsEnabled", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "waitingPeriodSecs", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "wrapper", - type: "address", - }, - ], - name: "wrapperBurnFeeRate", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "wrapper", - type: "address", - }, - ], - name: "wrapperMaxTokenAmount", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "address", - name: "wrapper", - type: "address", - }, - ], - name: "wrapperMintFeeRate", - outputs: [ - { - internalType: "int256", - name: "", - type: "int256", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + { + internalType: 'address', + name: '_resolver', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'flags', + type: 'address', + }, + ], + name: 'AggregatorWarningFlagsUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'equivalent', + type: 'address', + }, + ], + name: 'AtomicEquivalentForDexPricingUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'newExchangeFeeRate', + type: 'uint256', + }, + ], + name: 'AtomicExchangeFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newMaxVolume', + type: 'uint256', + }, + ], + name: 'AtomicMaxVolumePerBlockUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newWindow', + type: 'uint256', + }, + ], + name: 'AtomicTwapWindowUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'newVolatilityConsiderationWindow', + type: 'uint256', + }, + ], + name: 'AtomicVolatilityConsiderationWindowUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'newVolatilityUpdateThreshold', + type: 'uint256', + }, + ], + name: 'AtomicVolatilityUpdateThresholdUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'name', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'address', + name: 'destination', + type: 'address', + }, + ], + name: 'CacheUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'collapseFeeRate', + type: 'uint256', + }, + ], + name: 'CollapseFeeRateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'CrossChainSynthTransferEnabledUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', + name: 'gasLimitType', + type: 'uint8', + }, + { + indexed: false, + internalType: 'uint256', + name: 'newLimit', + type: 'uint256', + }, + ], + name: 'CrossDomainMessageGasLimitChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'debtSnapshotStaleTime', + type: 'uint256', + }, + ], + name: 'DebtSnapshotStaleTimeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + ], + name: 'EtherWrapperBurnFeeRateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'maxETH', + type: 'uint256', + }, + ], + name: 'EtherWrapperMaxETHUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'rate', + type: 'uint256', + }, + ], + name: 'EtherWrapperMintFeeRateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'dynamicFeeRounds', + type: 'uint256', + }, + ], + name: 'ExchangeDynamicFeeRoundsUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'dynamicFeeThreshold', + type: 'uint256', + }, + ], + name: 'ExchangeDynamicFeeThresholdUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'dynamicFeeWeightDecay', + type: 'uint256', + }, + ], + name: 'ExchangeDynamicFeeWeightDecayUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'newExchangeFeeRate', + type: 'uint256', + }, + ], + name: 'ExchangeFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'maxDynamicFee', + type: 'uint256', + }, + ], + name: 'ExchangeMaxDynamicFeeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newFeePeriodDuration', + type: 'uint256', + }, + ], + name: 'FeePeriodDurationUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newReward', + type: 'uint256', + }, + ], + name: 'FlagRewardUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'interactionDelay', + type: 'uint256', + }, + ], + name: 'InteractionDelayUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newRatio', + type: 'uint256', + }, + ], + name: 'IssuanceRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newReward', + type: 'uint256', + }, + ], + name: 'LiquidateRewardUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newDelay', + type: 'uint256', + }, + ], + name: 'LiquidationDelayUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newDuration', + type: 'uint256', + }, + ], + name: 'LiquidationEscrowDurationUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newPenalty', + type: 'uint256', + }, + ], + name: 'LiquidationPenaltyUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newRatio', + type: 'uint256', + }, + ], + name: 'LiquidationRatioUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'minimumStakeTime', + type: 'uint256', + }, + ], + name: 'MinimumStakeTimeUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'threshold', + type: 'uint256', + }, + ], + name: 'PriceDeviationThresholdUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'synthKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'bool', + name: 'enabled', + type: 'bool', + }, + ], + name: 'PureChainlinkPriceForAtomicSwapsEnabledUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'rateStalePeriod', + type: 'uint256', + }, + ], + name: 'RateStalePeriodUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newPenalty', + type: 'uint256', + }, + ], + name: 'SelfLiquidationPenaltyUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newPenalty', + type: 'uint256', + }, + ], + name: 'SnxLiquidationPenaltyUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'newTargetThreshold', + type: 'uint256', + }, + ], + name: 'TargetThresholdUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bool', + name: 'enabled', + type: 'bool', + }, + ], + name: 'TradingRewardsEnabled', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'waitingPeriodSecs', + type: 'uint256', + }, + ], + name: 'WaitingPeriodSecsUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'rate', + type: 'int256', + }, + ], + name: 'WrapperBurnFeeRateUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'maxTokenAmount', + type: 'uint256', + }, + ], + name: 'WrapperMaxTokenAmountUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + { + indexed: false, + internalType: 'int256', + name: 'rate', + type: 'int256', + }, + ], + name: 'WrapperMintFeeRateUpdated', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'aggregatorWarningFlags', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'atomicEquivalentForDexPricing', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'atomicExchangeFeeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'atomicMaxVolumePerBlock', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'atomicTwapWindow', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'atomicVolatilityConsiderationWindow', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'atomicVolatilityUpdateThreshold', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'collateral', + type: 'address', + }, + ], + name: 'collapseFeeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'crossChainSynthTransferEnabled', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', + name: 'gasLimitType', + type: 'uint8', + }, + ], + name: 'crossDomainMessageGasLimit', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'debtSnapshotStaleTime', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'etherWrapperBurnFeeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'etherWrapperMaxETH', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'etherWrapperMintFeeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'exchangeDynamicFeeRounds', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'exchangeDynamicFeeThreshold', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'exchangeDynamicFeeWeightDecay', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'exchangeFeeRate', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'exchangeMaxDynamicFee', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'feePeriodDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'flagReward', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'collateral', + type: 'address', + }, + ], + name: 'interactionDelay', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isResolverCached', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'issuanceRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidateReward', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationDelay', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationEscrowDuration', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationPenalty', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'liquidationRatio', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'minimumStakeTime', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'priceDeviationThresholdFactor', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'pureChainlinkPriceForAtomicSwapsEnabled', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'rateStalePeriod', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'rebuildCache', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolver', + outputs: [ + { + internalType: 'contract AddressResolver', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'resolverAddressesRequired', + outputs: [ + { + internalType: 'bytes32[]', + name: 'addresses', + type: 'bytes32[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'selfLiquidationPenalty', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_flags', + type: 'address', + }, + ], + name: 'setAggregatorWarningFlags', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'address', + name: '_equivalent', + type: 'address', + }, + ], + name: 'setAtomicEquivalentForDexPricing', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_exchangeFeeRate', + type: 'uint256', + }, + ], + name: 'setAtomicExchangeFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_maxVolume', + type: 'uint256', + }, + ], + name: 'setAtomicMaxVolumePerBlock', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_window', + type: 'uint256', + }, + ], + name: 'setAtomicTwapWindow', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_window', + type: 'uint256', + }, + ], + name: 'setAtomicVolatilityConsiderationWindow', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_threshold', + type: 'uint256', + }, + ], + name: 'setAtomicVolatilityUpdateThreshold', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_collateral', + type: 'address', + }, + { + internalType: 'uint256', + name: '_collapseFeeRate', + type: 'uint256', + }, + ], + name: 'setCollapseFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: '_value', + type: 'uint256', + }, + ], + name: 'setCrossChainSynthTransferEnabled', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', + name: '_gasLimitType', + type: 'uint8', + }, + { + internalType: 'uint256', + name: '_crossDomainMessageGasLimit', + type: 'uint256', + }, + ], + name: 'setCrossDomainMessageGasLimit', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_seconds', + type: 'uint256', + }, + ], + name: 'setDebtSnapshotStaleTime', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_rate', + type: 'uint256', + }, + ], + name: 'setEtherWrapperBurnFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_maxETH', + type: 'uint256', + }, + ], + name: 'setEtherWrapperMaxETH', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_rate', + type: 'uint256', + }, + ], + name: 'setEtherWrapperMintFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'rounds', + type: 'uint256', + }, + ], + name: 'setExchangeDynamicFeeRounds', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'threshold', + type: 'uint256', + }, + ], + name: 'setExchangeDynamicFeeThreshold', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'weightDecay', + type: 'uint256', + }, + ], + name: 'setExchangeDynamicFeeWeightDecay', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'synthKeys', + type: 'bytes32[]', + }, + { + internalType: 'uint256[]', + name: 'exchangeFeeRates', + type: 'uint256[]', + }, + ], + name: 'setExchangeFeeRateForSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'maxFee', + type: 'uint256', + }, + ], + name: 'setExchangeMaxDynamicFee', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_feePeriodDuration', + type: 'uint256', + }, + ], + name: 'setFeePeriodDuration', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'setFlagReward', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_collateral', + type: 'address', + }, + { + internalType: 'uint256', + name: '_interactionDelay', + type: 'uint256', + }, + ], + name: 'setInteractionDelay', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'ratio', + type: 'uint256', + }, + ], + name: 'setIssuanceRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reward', + type: 'uint256', + }, + ], + name: 'setLiquidateReward', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'time', + type: 'uint256', + }, + ], + name: 'setLiquidationDelay', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'duration', + type: 'uint256', + }, + ], + name: 'setLiquidationEscrowDuration', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'penalty', + type: 'uint256', + }, + ], + name: 'setLiquidationPenalty', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_liquidationRatio', + type: 'uint256', + }, + ], + name: 'setLiquidationRatio', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_seconds', + type: 'uint256', + }, + ], + name: 'setMinimumStakeTime', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_priceDeviationThresholdFactor', + type: 'uint256', + }, + ], + name: 'setPriceDeviationThresholdFactor', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: '_currencyKey', + type: 'bytes32', + }, + { + internalType: 'bool', + name: '_enabled', + type: 'bool', + }, + ], + name: 'setPureChainlinkPriceForAtomicSwapsEnabled', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'period', + type: 'uint256', + }, + ], + name: 'setRateStalePeriod', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'penalty', + type: 'uint256', + }, + ], + name: 'setSelfLiquidationPenalty', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'penalty', + type: 'uint256', + }, + ], + name: 'setSnxLiquidationPenalty', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'percent', + type: 'uint256', + }, + ], + name: 'setTargetThreshold', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bool', + name: '_tradingRewardsEnabled', + type: 'bool', + }, + ], + name: 'setTradingRewardsEnabled', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: '_waitingPeriodSecs', + type: 'uint256', + }, + ], + name: 'setWaitingPeriodSecs', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_wrapper', + type: 'address', + }, + { + internalType: 'int256', + name: '_rate', + type: 'int256', + }, + ], + name: 'setWrapperBurnFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_wrapper', + type: 'address', + }, + { + internalType: 'uint256', + name: '_maxTokenAmount', + type: 'uint256', + }, + ], + name: 'setWrapperMaxTokenAmount', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_wrapper', + type: 'address', + }, + { + internalType: 'int256', + name: '_rate', + type: 'int256', + }, + ], + name: 'setWrapperMintFeeRate', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'snxLiquidationPenalty', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'targetThreshold', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'tradingRewardsEnabled', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'waitingPeriodSecs', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + ], + name: 'wrapperBurnFeeRate', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + ], + name: 'wrapperMaxTokenAmount', + outputs: [ + { + internalType: 'uint256', + name: '', + type: 'uint256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'address', + name: 'wrapper', + type: 'address', + }, + ], + name: 'wrapperMintFeeRate', + outputs: [ + { + internalType: 'int256', + name: '', + type: 'int256', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, +] as const export class SystemSettings__factory { - static readonly abi = _abi; - static createInterface(): SystemSettingsInterface { - return new utils.Interface(_abi) as SystemSettingsInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SystemSettings { - return new Contract(address, _abi, signerOrProvider) as SystemSettings; - } + static readonly abi = _abi + static createInterface(): SystemSettingsInterface { + return new utils.Interface(_abi) as SystemSettingsInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SystemSettings { + return new Contract(address, _abi, signerOrProvider) as SystemSettings + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts index 55d7c02f4c..633cffa7c5 100644 --- a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts @@ -2,1294 +2,1291 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { SystemStatus, SystemStatusInterface } from "../SystemStatus"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { SystemStatus, SystemStatusInterface } from '../SystemStatus' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - payable: false, - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "bytes32", - name: "section", - type: "bytes32", - }, - { - indexed: true, - internalType: "address", - name: "account", - type: "address", - }, - { - indexed: false, - internalType: "bool", - name: "canSuspend", - type: "bool", - }, - { - indexed: false, - internalType: "bool", - name: "canResume", - type: "bool", - }, - ], - name: "AccessControlUpdated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "ExchangeResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "ExchangeSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "FuturesMarketResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "FuturesMarketSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "FuturesResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "FuturesSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "IssuanceResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "IssuanceSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "oldOwner", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerChanged", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnerNominated", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SynthExchangeResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SynthExchangeSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SynthResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SynthSuspended", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SystemResumed", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "SystemSuspended", - type: "event", - }, - { - constant: true, - inputs: [], - name: "CONTRACT_NAME", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_EXCHANGE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_FUTURES", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_ISSUANCE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_SYNTH", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_SYNTH_EXCHANGE", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SECTION_SYSTEM", - outputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "SUSPENSION_REASON_UPGRADE", - outputs: [ - { - internalType: "uint248", - name: "", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "acceptOwnership", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "accessControl", - outputs: [ - { - internalType: "bool", - name: "canSuspend", - type: "bool", - }, - { - internalType: "bool", - name: "canResume", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "exchangeSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "futuresMarketSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "futuresSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "marketKeys", - type: "bytes32[]", - }, - ], - name: "getFuturesMarketSuspensions", - outputs: [ - { - internalType: "bool[]", - name: "suspensions", - type: "bool[]", - }, - { - internalType: "uint256[]", - name: "reasons", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "synths", - type: "bytes32[]", - }, - ], - name: "getSynthExchangeSuspensions", - outputs: [ - { - internalType: "bool[]", - name: "exchangeSuspensions", - type: "bool[]", - }, - { - internalType: "uint256[]", - name: "reasons", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32[]", - name: "synths", - type: "bytes32[]", - }, - ], - name: "getSynthSuspensions", - outputs: [ - { - internalType: "bool[]", - name: "suspensions", - type: "bool[]", - }, - { - internalType: "uint256[]", - name: "reasons", - type: "uint256[]", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "isSystemUpgrading", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "issuanceSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "address", - name: "_owner", - type: "address", - }, - ], - name: "nominateNewOwner", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [], - name: "nominatedOwner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "requireExchangeActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "requireExchangeBetweenSynthsAllowed", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "requireFuturesActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "requireFuturesMarketActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "requireIssuanceActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "requireSynthActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "requireSynthExchangeActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "sourceCurrencyKey", - type: "bytes32", - }, - { - internalType: "bytes32", - name: "destinationCurrencyKey", - type: "bytes32", - }, - ], - name: "requireSynthsActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "requireSystemActive", - outputs: [], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [], - name: "resumeExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "resumeFutures", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - ], - name: "resumeFuturesMarket", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "marketKeys", - type: "bytes32[]", - }, - ], - name: "resumeFuturesMarkets", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "resumeIssuance", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "resumeSynth", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "resumeSynthExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "resumeSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - ], - name: "resumeSynthsExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [], - name: "resumeSystem", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendFutures", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "marketKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendFuturesMarket", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "marketKeys", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendFuturesMarkets", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendIssuance", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendSynth", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendSynthExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendSynths", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "currencyKeys", - type: "bytes32[]", - }, - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendSynthsExchange", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "uint256", - name: "reason", - type: "uint256", - }, - ], - name: "suspendSystem", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "synthExchangeSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "currencyKey", - type: "bytes32", - }, - ], - name: "synthSuspended", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [ - { - internalType: "bytes32", - name: "", - type: "bytes32", - }, - ], - name: "synthSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "systemSuspended", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: true, - inputs: [], - name: "systemSuspension", - outputs: [ - { - internalType: "bool", - name: "suspended", - type: "bool", - }, - { - internalType: "uint248", - name: "reason", - type: "uint248", - }, - ], - payable: false, - stateMutability: "view", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32", - name: "section", - type: "bytes32", - }, - { - internalType: "address", - name: "account", - type: "address", - }, - { - internalType: "bool", - name: "canSuspend", - type: "bool", - }, - { - internalType: "bool", - name: "canResume", - type: "bool", - }, - ], - name: "updateAccessControl", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, - { - constant: false, - inputs: [ - { - internalType: "bytes32[]", - name: "sections", - type: "bytes32[]", - }, - { - internalType: "address[]", - name: "accounts", - type: "address[]", - }, - { - internalType: "bool[]", - name: "canSuspends", - type: "bool[]", - }, - { - internalType: "bool[]", - name: "canResumes", - type: "bool[]", - }, - ], - name: "updateAccessControls", - outputs: [], - payable: false, - stateMutability: "nonpayable", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'bytes32', + name: 'section', + type: 'bytes32', + }, + { + indexed: true, + internalType: 'address', + name: 'account', + type: 'address', + }, + { + indexed: false, + internalType: 'bool', + name: 'canSuspend', + type: 'bool', + }, + { + indexed: false, + internalType: 'bool', + name: 'canResume', + type: 'bool', + }, + ], + name: 'AccessControlUpdated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'ExchangeResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'ExchangeSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'FuturesMarketResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'FuturesMarketSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'FuturesResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'FuturesSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'IssuanceResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'IssuanceSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'oldOwner', + type: 'address', + }, + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerChanged', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'OwnerNominated', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SynthExchangeResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SynthExchangeSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SynthResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SynthSuspended', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SystemResumed', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'SystemSuspended', + type: 'event', + }, + { + constant: true, + inputs: [], + name: 'CONTRACT_NAME', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_EXCHANGE', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_FUTURES', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_ISSUANCE', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_SYNTH', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_SYNTH_EXCHANGE', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SECTION_SYSTEM', + outputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'SUSPENSION_REASON_UPGRADE', + outputs: [ + { + internalType: 'uint248', + name: '', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'acceptOwnership', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + name: 'accessControl', + outputs: [ + { + internalType: 'bool', + name: 'canSuspend', + type: 'bool', + }, + { + internalType: 'bool', + name: 'canResume', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'exchangeSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'futuresMarketSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'futuresSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'marketKeys', + type: 'bytes32[]', + }, + ], + name: 'getFuturesMarketSuspensions', + outputs: [ + { + internalType: 'bool[]', + name: 'suspensions', + type: 'bool[]', + }, + { + internalType: 'uint256[]', + name: 'reasons', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'synths', + type: 'bytes32[]', + }, + ], + name: 'getSynthExchangeSuspensions', + outputs: [ + { + internalType: 'bool[]', + name: 'exchangeSuspensions', + type: 'bool[]', + }, + { + internalType: 'uint256[]', + name: 'reasons', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32[]', + name: 'synths', + type: 'bytes32[]', + }, + ], + name: 'getSynthSuspensions', + outputs: [ + { + internalType: 'bool[]', + name: 'suspensions', + type: 'bool[]', + }, + { + internalType: 'uint256[]', + name: 'reasons', + type: 'uint256[]', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'isSystemUpgrading', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'issuanceSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'address', + name: '_owner', + type: 'address', + }, + ], + name: 'nominateNewOwner', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'nominatedOwner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'requireExchangeActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'requireExchangeBetweenSynthsAllowed', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'requireFuturesActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'requireFuturesMarketActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'requireIssuanceActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'requireSynthActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'requireSynthExchangeActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'sourceCurrencyKey', + type: 'bytes32', + }, + { + internalType: 'bytes32', + name: 'destinationCurrencyKey', + type: 'bytes32', + }, + ], + name: 'requireSynthsActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'requireSystemActive', + outputs: [], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'resumeExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'resumeFutures', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + ], + name: 'resumeFuturesMarket', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'marketKeys', + type: 'bytes32[]', + }, + ], + name: 'resumeFuturesMarkets', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'resumeIssuance', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'resumeSynth', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'resumeSynthExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'resumeSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + ], + name: 'resumeSynthsExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [], + name: 'resumeSystem', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendFutures', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'marketKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendFuturesMarket', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'marketKeys', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendFuturesMarkets', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendIssuance', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendSynth', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendSynthExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendSynths', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'currencyKeys', + type: 'bytes32[]', + }, + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendSynthsExchange', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'uint256', + name: 'reason', + type: 'uint256', + }, + ], + name: 'suspendSystem', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'synthExchangeSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: 'currencyKey', + type: 'bytes32', + }, + ], + name: 'synthSuspended', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [ + { + internalType: 'bytes32', + name: '', + type: 'bytes32', + }, + ], + name: 'synthSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'systemSuspended', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: true, + inputs: [], + name: 'systemSuspension', + outputs: [ + { + internalType: 'bool', + name: 'suspended', + type: 'bool', + }, + { + internalType: 'uint248', + name: 'reason', + type: 'uint248', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32', + name: 'section', + type: 'bytes32', + }, + { + internalType: 'address', + name: 'account', + type: 'address', + }, + { + internalType: 'bool', + name: 'canSuspend', + type: 'bool', + }, + { + internalType: 'bool', + name: 'canResume', + type: 'bool', + }, + ], + name: 'updateAccessControl', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, + { + constant: false, + inputs: [ + { + internalType: 'bytes32[]', + name: 'sections', + type: 'bytes32[]', + }, + { + internalType: 'address[]', + name: 'accounts', + type: 'address[]', + }, + { + internalType: 'bool[]', + name: 'canSuspends', + type: 'bool[]', + }, + { + internalType: 'bool[]', + name: 'canResumes', + type: 'bool[]', + }, + ], + name: 'updateAccessControls', + outputs: [], + payable: false, + stateMutability: 'nonpayable', + type: 'function', + }, +] as const export class SystemStatus__factory { - static readonly abi = _abi; - static createInterface(): SystemStatusInterface { - return new utils.Interface(_abi) as SystemStatusInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): SystemStatus { - return new Contract(address, _abi, signerOrProvider) as SystemStatus; - } + static readonly abi = _abi + static createInterface(): SystemStatusInterface { + return new utils.Interface(_abi) as SystemStatusInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): SystemStatus { + return new Contract(address, _abi, signerOrProvider) as SystemStatus + } } diff --git a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts index b845b05363..d288f13018 100644 --- a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts @@ -2,93 +2,87 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - VKwentaRedeemer, - VKwentaRedeemerInterface, -} from "../VKwentaRedeemer"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { VKwentaRedeemer, VKwentaRedeemerInterface } from '../VKwentaRedeemer' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_vToken", - type: "address", - }, - { - internalType: "address", - name: "_token", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "address", - name: "redeemer", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "redeemedAmount", - type: "uint256", - }, - ], - name: "Redeemed", - type: "event", - }, - { - inputs: [], - name: "redeem", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "token", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "vToken", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_vToken', + type: 'address', + }, + { + internalType: 'address', + name: '_token', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: 'address', + name: 'redeemer', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'redeemedAmount', + type: 'uint256', + }, + ], + name: 'Redeemed', + type: 'event', + }, + { + inputs: [], + name: 'redeem', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'token', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'vToken', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class VKwentaRedeemer__factory { - static readonly abi = _abi; - static createInterface(): VKwentaRedeemerInterface { - return new utils.Interface(_abi) as VKwentaRedeemerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): VKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer; - } + static readonly abi = _abi + static createInterface(): VKwentaRedeemerInterface { + return new utils.Interface(_abi) as VKwentaRedeemerInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): VKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer + } } diff --git a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts index 0f70b6c656..e9d633545a 100644 --- a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts @@ -2,161 +2,155 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from "ethers"; -import type { Provider } from "@ethersproject/providers"; -import type { - VeKwentaRedeemer, - VeKwentaRedeemerInterface, -} from "../VeKwentaRedeemer"; +import { Contract, Signer, utils } from 'ethers' +import type { Provider } from '@ethersproject/providers' +import type { VeKwentaRedeemer, VeKwentaRedeemerInterface } from '../VeKwentaRedeemer' const _abi = [ - { - inputs: [ - { - internalType: "address", - name: "_veKwenta", - type: "address", - }, - { - internalType: "address", - name: "_kwenta", - type: "address", - }, - { - internalType: "address", - name: "_rewardEscrow", - type: "address", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [ - { - internalType: "address", - name: "caller", - type: "address", - }, - { - internalType: "uint256", - name: "callerBalance", - type: "uint256", - }, - ], - name: "InvalidCallerBalance", - type: "error", - }, - { - inputs: [ - { - internalType: "uint256", - name: "contractBalance", - type: "uint256", - }, - ], - name: "InvalidContractBalance", - type: "error", - }, - { - inputs: [ - { - internalType: "address", - name: "caller", - type: "address", - }, - ], - name: "TransferFailed", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "redeemer", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "beneficiary", - type: "address", - }, - { - indexed: false, - internalType: "uint256", - name: "redeemedAmount", - type: "uint256", - }, - ], - name: "Redeemed", - type: "event", - }, - { - inputs: [], - name: "kwenta", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "_beneficiary", - type: "address", - }, - ], - name: "redeem", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "rewardEscrow", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "veKwenta", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, -] as const; + { + inputs: [ + { + internalType: 'address', + name: '_veKwenta', + type: 'address', + }, + { + internalType: 'address', + name: '_kwenta', + type: 'address', + }, + { + internalType: 'address', + name: '_rewardEscrow', + type: 'address', + }, + ], + stateMutability: 'nonpayable', + type: 'constructor', + }, + { + inputs: [ + { + internalType: 'address', + name: 'caller', + type: 'address', + }, + { + internalType: 'uint256', + name: 'callerBalance', + type: 'uint256', + }, + ], + name: 'InvalidCallerBalance', + type: 'error', + }, + { + inputs: [ + { + internalType: 'uint256', + name: 'contractBalance', + type: 'uint256', + }, + ], + name: 'InvalidContractBalance', + type: 'error', + }, + { + inputs: [ + { + internalType: 'address', + name: 'caller', + type: 'address', + }, + ], + name: 'TransferFailed', + type: 'error', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'redeemer', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'beneficiary', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'redeemedAmount', + type: 'uint256', + }, + ], + name: 'Redeemed', + type: 'event', + }, + { + inputs: [], + name: 'kwenta', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_beneficiary', + type: 'address', + }, + ], + name: 'redeem', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'rewardEscrow', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'veKwenta', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, +] as const export class VeKwentaRedeemer__factory { - static readonly abi = _abi; - static createInterface(): VeKwentaRedeemerInterface { - return new utils.Interface(_abi) as VeKwentaRedeemerInterface; - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): VeKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer; - } + static readonly abi = _abi + static createInterface(): VeKwentaRedeemerInterface { + return new utils.Interface(_abi) as VeKwentaRedeemerInterface + } + static connect(address: string, signerOrProvider: Signer | Provider): VeKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer + } } diff --git a/packages/sdk/src/contracts/types/factories/index.ts b/packages/sdk/src/contracts/types/factories/index.ts index 5516690741..8d67cb91e8 100644 --- a/packages/sdk/src/contracts/types/factories/index.ts +++ b/packages/sdk/src/contracts/types/factories/index.ts @@ -1,37 +1,37 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { BatchClaimer__factory } from "./BatchClaimer__factory"; -export { DappMaintenance__factory } from "./DappMaintenance__factory"; -export { ERC20__factory } from "./ERC20__factory"; -export { ExchangeRates__factory } from "./ExchangeRates__factory"; -export { Exchanger__factory } from "./Exchanger__factory"; -export { FuturesMarket__factory } from "./FuturesMarket__factory"; -export { FuturesMarketData__factory } from "./FuturesMarketData__factory"; -export { FuturesMarketSettings__factory } from "./FuturesMarketSettings__factory"; -export { KwentaArrakisVault__factory } from "./KwentaArrakisVault__factory"; -export { KwentaStakingRewards__factory } from "./KwentaStakingRewards__factory"; -export { MultipleMerkleDistributor__factory } from "./MultipleMerkleDistributor__factory"; -export { MultipleMerkleDistributorOp__factory } from "./MultipleMerkleDistributorOp__factory"; -export { MultipleMerkleDistributorPerpsV2__factory } from "./MultipleMerkleDistributorPerpsV2__factory"; -export { PerpsV2Market__factory } from "./PerpsV2Market__factory"; -export { PerpsV2MarketData__factory } from "./PerpsV2MarketData__factory"; -export { PerpsV2MarketSettings__factory } from "./PerpsV2MarketSettings__factory"; -export { PerpsV2MarketViews__factory } from "./PerpsV2MarketViews__factory"; -export { PerpsV3MarketProxy__factory } from "./PerpsV3MarketProxy__factory"; -export { Pyth__factory } from "./Pyth__factory"; -export { ReverseRecords__factory } from "./ReverseRecords__factory"; -export { RewardEscrow__factory } from "./RewardEscrow__factory"; -export { SmartMarginAccount__factory } from "./SmartMarginAccount__factory"; -export { SmartMarginAccountFactory__factory } from "./SmartMarginAccountFactory__factory"; -export { StakingRewards__factory } from "./StakingRewards__factory"; -export { SupplySchedule__factory } from "./SupplySchedule__factory"; -export { Synth__factory } from "./Synth__factory"; -export { SynthRedeemer__factory } from "./SynthRedeemer__factory"; -export { SynthSwap__factory } from "./SynthSwap__factory"; -export { SynthUtil__factory } from "./SynthUtil__factory"; -export { Synthetix__factory } from "./Synthetix__factory"; -export { SystemSettings__factory } from "./SystemSettings__factory"; -export { SystemStatus__factory } from "./SystemStatus__factory"; -export { VKwentaRedeemer__factory } from "./VKwentaRedeemer__factory"; -export { VeKwentaRedeemer__factory } from "./VeKwentaRedeemer__factory"; +export { BatchClaimer__factory } from './BatchClaimer__factory' +export { DappMaintenance__factory } from './DappMaintenance__factory' +export { ERC20__factory } from './ERC20__factory' +export { ExchangeRates__factory } from './ExchangeRates__factory' +export { Exchanger__factory } from './Exchanger__factory' +export { FuturesMarket__factory } from './FuturesMarket__factory' +export { FuturesMarketData__factory } from './FuturesMarketData__factory' +export { FuturesMarketSettings__factory } from './FuturesMarketSettings__factory' +export { KwentaArrakisVault__factory } from './KwentaArrakisVault__factory' +export { KwentaStakingRewards__factory } from './KwentaStakingRewards__factory' +export { MultipleMerkleDistributor__factory } from './MultipleMerkleDistributor__factory' +export { MultipleMerkleDistributorOp__factory } from './MultipleMerkleDistributorOp__factory' +export { MultipleMerkleDistributorPerpsV2__factory } from './MultipleMerkleDistributorPerpsV2__factory' +export { PerpsV2Market__factory } from './PerpsV2Market__factory' +export { PerpsV2MarketData__factory } from './PerpsV2MarketData__factory' +export { PerpsV2MarketSettings__factory } from './PerpsV2MarketSettings__factory' +export { PerpsV2MarketViews__factory } from './PerpsV2MarketViews__factory' +export { PerpsV3MarketProxy__factory } from './PerpsV3MarketProxy__factory' +export { Pyth__factory } from './Pyth__factory' +export { ReverseRecords__factory } from './ReverseRecords__factory' +export { RewardEscrow__factory } from './RewardEscrow__factory' +export { SmartMarginAccount__factory } from './SmartMarginAccount__factory' +export { SmartMarginAccountFactory__factory } from './SmartMarginAccountFactory__factory' +export { StakingRewards__factory } from './StakingRewards__factory' +export { SupplySchedule__factory } from './SupplySchedule__factory' +export { Synth__factory } from './Synth__factory' +export { SynthRedeemer__factory } from './SynthRedeemer__factory' +export { SynthSwap__factory } from './SynthSwap__factory' +export { SynthUtil__factory } from './SynthUtil__factory' +export { Synthetix__factory } from './Synthetix__factory' +export { SystemSettings__factory } from './SystemSettings__factory' +export { SystemStatus__factory } from './SystemStatus__factory' +export { VKwentaRedeemer__factory } from './VKwentaRedeemer__factory' +export { VeKwentaRedeemer__factory } from './VeKwentaRedeemer__factory' diff --git a/packages/sdk/src/contracts/types/index.ts b/packages/sdk/src/contracts/types/index.ts index d626faeb08..8367de2cf7 100644 --- a/packages/sdk/src/contracts/types/index.ts +++ b/packages/sdk/src/contracts/types/index.ts @@ -1,72 +1,72 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { BatchClaimer } from "./BatchClaimer"; -export type { DappMaintenance } from "./DappMaintenance"; -export type { ERC20 } from "./ERC20"; -export type { ExchangeRates } from "./ExchangeRates"; -export type { Exchanger } from "./Exchanger"; -export type { FuturesMarket } from "./FuturesMarket"; -export type { FuturesMarketData } from "./FuturesMarketData"; -export type { FuturesMarketSettings } from "./FuturesMarketSettings"; -export type { KwentaArrakisVault } from "./KwentaArrakisVault"; -export type { KwentaStakingRewards } from "./KwentaStakingRewards"; -export type { MultipleMerkleDistributor } from "./MultipleMerkleDistributor"; -export type { MultipleMerkleDistributorOp } from "./MultipleMerkleDistributorOp"; -export type { MultipleMerkleDistributorPerpsV2 } from "./MultipleMerkleDistributorPerpsV2"; -export type { PerpsV2Market } from "./PerpsV2Market"; -export type { PerpsV2MarketData } from "./PerpsV2MarketData"; -export type { PerpsV2MarketSettings } from "./PerpsV2MarketSettings"; -export type { PerpsV2MarketViews } from "./PerpsV2MarketViews"; -export type { PerpsV3MarketProxy } from "./PerpsV3MarketProxy"; -export type { Pyth } from "./Pyth"; -export type { ReverseRecords } from "./ReverseRecords"; -export type { RewardEscrow } from "./RewardEscrow"; -export type { SmartMarginAccount } from "./SmartMarginAccount"; -export type { SmartMarginAccountFactory } from "./SmartMarginAccountFactory"; -export type { StakingRewards } from "./StakingRewards"; -export type { SupplySchedule } from "./SupplySchedule"; -export type { Synth } from "./Synth"; -export type { SynthRedeemer } from "./SynthRedeemer"; -export type { SynthSwap } from "./SynthSwap"; -export type { SynthUtil } from "./SynthUtil"; -export type { Synthetix } from "./Synthetix"; -export type { SystemSettings } from "./SystemSettings"; -export type { SystemStatus } from "./SystemStatus"; -export type { VKwentaRedeemer } from "./VKwentaRedeemer"; -export type { VeKwentaRedeemer } from "./VeKwentaRedeemer"; -export * as factories from "./factories"; -export { BatchClaimer__factory } from "./factories/BatchClaimer__factory"; -export { DappMaintenance__factory } from "./factories/DappMaintenance__factory"; -export { ERC20__factory } from "./factories/ERC20__factory"; -export { Exchanger__factory } from "./factories/Exchanger__factory"; -export { ExchangeRates__factory } from "./factories/ExchangeRates__factory"; -export { FuturesMarket__factory } from "./factories/FuturesMarket__factory"; -export { FuturesMarketData__factory } from "./factories/FuturesMarketData__factory"; -export { FuturesMarketSettings__factory } from "./factories/FuturesMarketSettings__factory"; -export { KwentaArrakisVault__factory } from "./factories/KwentaArrakisVault__factory"; -export { KwentaStakingRewards__factory } from "./factories/KwentaStakingRewards__factory"; -export { MultipleMerkleDistributor__factory } from "./factories/MultipleMerkleDistributor__factory"; -export { MultipleMerkleDistributorOp__factory } from "./factories/MultipleMerkleDistributorOp__factory"; -export { MultipleMerkleDistributorPerpsV2__factory } from "./factories/MultipleMerkleDistributorPerpsV2__factory"; -export { PerpsV2Market__factory } from "./factories/PerpsV2Market__factory"; -export { PerpsV2MarketData__factory } from "./factories/PerpsV2MarketData__factory"; -export { PerpsV2MarketSettings__factory } from "./factories/PerpsV2MarketSettings__factory"; -export { PerpsV2MarketViews__factory } from "./factories/PerpsV2MarketViews__factory"; -export { PerpsV3MarketProxy__factory } from "./factories/PerpsV3MarketProxy__factory"; -export { Pyth__factory } from "./factories/Pyth__factory"; -export { ReverseRecords__factory } from "./factories/ReverseRecords__factory"; -export { RewardEscrow__factory } from "./factories/RewardEscrow__factory"; -export { SmartMarginAccount__factory } from "./factories/SmartMarginAccount__factory"; -export { SmartMarginAccountFactory__factory } from "./factories/SmartMarginAccountFactory__factory"; -export { StakingRewards__factory } from "./factories/StakingRewards__factory"; -export { SupplySchedule__factory } from "./factories/SupplySchedule__factory"; -export { Synth__factory } from "./factories/Synth__factory"; -export { Synthetix__factory } from "./factories/Synthetix__factory"; -export { SynthRedeemer__factory } from "./factories/SynthRedeemer__factory"; -export { SynthSwap__factory } from "./factories/SynthSwap__factory"; -export { SynthUtil__factory } from "./factories/SynthUtil__factory"; -export { SystemSettings__factory } from "./factories/SystemSettings__factory"; -export { SystemStatus__factory } from "./factories/SystemStatus__factory"; -export { VeKwentaRedeemer__factory } from "./factories/VeKwentaRedeemer__factory"; -export { VKwentaRedeemer__factory } from "./factories/VKwentaRedeemer__factory"; +export type { BatchClaimer } from './BatchClaimer' +export type { DappMaintenance } from './DappMaintenance' +export type { ERC20 } from './ERC20' +export type { ExchangeRates } from './ExchangeRates' +export type { Exchanger } from './Exchanger' +export type { FuturesMarket } from './FuturesMarket' +export type { FuturesMarketData } from './FuturesMarketData' +export type { FuturesMarketSettings } from './FuturesMarketSettings' +export type { KwentaArrakisVault } from './KwentaArrakisVault' +export type { KwentaStakingRewards } from './KwentaStakingRewards' +export type { MultipleMerkleDistributor } from './MultipleMerkleDistributor' +export type { MultipleMerkleDistributorOp } from './MultipleMerkleDistributorOp' +export type { MultipleMerkleDistributorPerpsV2 } from './MultipleMerkleDistributorPerpsV2' +export type { PerpsV2Market } from './PerpsV2Market' +export type { PerpsV2MarketData } from './PerpsV2MarketData' +export type { PerpsV2MarketSettings } from './PerpsV2MarketSettings' +export type { PerpsV2MarketViews } from './PerpsV2MarketViews' +export type { PerpsV3MarketProxy } from './PerpsV3MarketProxy' +export type { Pyth } from './Pyth' +export type { ReverseRecords } from './ReverseRecords' +export type { RewardEscrow } from './RewardEscrow' +export type { SmartMarginAccount } from './SmartMarginAccount' +export type { SmartMarginAccountFactory } from './SmartMarginAccountFactory' +export type { StakingRewards } from './StakingRewards' +export type { SupplySchedule } from './SupplySchedule' +export type { Synth } from './Synth' +export type { SynthRedeemer } from './SynthRedeemer' +export type { SynthSwap } from './SynthSwap' +export type { SynthUtil } from './SynthUtil' +export type { Synthetix } from './Synthetix' +export type { SystemSettings } from './SystemSettings' +export type { SystemStatus } from './SystemStatus' +export type { VKwentaRedeemer } from './VKwentaRedeemer' +export type { VeKwentaRedeemer } from './VeKwentaRedeemer' +export * as factories from './factories' +export { BatchClaimer__factory } from './factories/BatchClaimer__factory' +export { DappMaintenance__factory } from './factories/DappMaintenance__factory' +export { ERC20__factory } from './factories/ERC20__factory' +export { Exchanger__factory } from './factories/Exchanger__factory' +export { ExchangeRates__factory } from './factories/ExchangeRates__factory' +export { FuturesMarket__factory } from './factories/FuturesMarket__factory' +export { FuturesMarketData__factory } from './factories/FuturesMarketData__factory' +export { FuturesMarketSettings__factory } from './factories/FuturesMarketSettings__factory' +export { KwentaArrakisVault__factory } from './factories/KwentaArrakisVault__factory' +export { KwentaStakingRewards__factory } from './factories/KwentaStakingRewards__factory' +export { MultipleMerkleDistributor__factory } from './factories/MultipleMerkleDistributor__factory' +export { MultipleMerkleDistributorOp__factory } from './factories/MultipleMerkleDistributorOp__factory' +export { MultipleMerkleDistributorPerpsV2__factory } from './factories/MultipleMerkleDistributorPerpsV2__factory' +export { PerpsV2Market__factory } from './factories/PerpsV2Market__factory' +export { PerpsV2MarketData__factory } from './factories/PerpsV2MarketData__factory' +export { PerpsV2MarketSettings__factory } from './factories/PerpsV2MarketSettings__factory' +export { PerpsV2MarketViews__factory } from './factories/PerpsV2MarketViews__factory' +export { PerpsV3MarketProxy__factory } from './factories/PerpsV3MarketProxy__factory' +export { Pyth__factory } from './factories/Pyth__factory' +export { ReverseRecords__factory } from './factories/ReverseRecords__factory' +export { RewardEscrow__factory } from './factories/RewardEscrow__factory' +export { SmartMarginAccount__factory } from './factories/SmartMarginAccount__factory' +export { SmartMarginAccountFactory__factory } from './factories/SmartMarginAccountFactory__factory' +export { StakingRewards__factory } from './factories/StakingRewards__factory' +export { SupplySchedule__factory } from './factories/SupplySchedule__factory' +export { Synth__factory } from './factories/Synth__factory' +export { Synthetix__factory } from './factories/Synthetix__factory' +export { SynthRedeemer__factory } from './factories/SynthRedeemer__factory' +export { SynthSwap__factory } from './factories/SynthSwap__factory' +export { SynthUtil__factory } from './factories/SynthUtil__factory' +export { SystemSettings__factory } from './factories/SystemSettings__factory' +export { SystemStatus__factory } from './factories/SystemStatus__factory' +export { VeKwentaRedeemer__factory } from './factories/VeKwentaRedeemer__factory' +export { VKwentaRedeemer__factory } from './factories/VKwentaRedeemer__factory' diff --git a/packages/sdk/src/queries/futures.ts b/packages/sdk/src/queries/futures.ts index cf8e4a7226..576584623e 100644 --- a/packages/sdk/src/queries/futures.ts +++ b/packages/sdk/src/queries/futures.ts @@ -31,7 +31,7 @@ export const queryAccountsFromSubgraph = async ( return response?.crossMarginAccounts.map((cm: { id: string }) => cm.id) || [] } -export const queryCrossMarginAccounts = async ( +export const querySmartMarginAccounts = async ( sdk: KwentaSDK, walletAddress: string ): Promise => { @@ -90,58 +90,16 @@ export const queryTrades = async ( ) } -export const queryPositionHistory = (sdk: KwentaSDK, account: string) => { - return getFuturesPositions( - sdk.futures.futuresGqlEndpoint, - { - where: { - abstractAccount: account, - }, - first: 99999, - orderBy: 'openTimestamp', - orderDirection: 'desc', - }, - { - id: true, - lastTxHash: true, - openTimestamp: true, - closeTimestamp: true, - timestamp: true, - market: true, - marketKey: true, - asset: true, - account: true, - abstractAccount: true, - accountType: true, - isOpen: true, - isLiquidated: true, - trades: true, - totalVolume: true, - size: true, - initialMargin: true, - margin: true, - pnl: true, - feesPaid: true, - netFunding: true, - pnlWithFeesPaid: true, - netTransfers: true, - totalDeposits: true, - fundingIndex: true, - entryPrice: true, - avgEntryPrice: true, - lastPrice: true, - exitPrice: true, - } - ) -} - -export const queryCompletePositionHistory = (sdk: KwentaSDK, account: string) => { +export const queryPositionHistory = ( + sdk: KwentaSDK, + account: string, + accountType: 'eoa' | 'account' +) => { + const accountQuery = accountType === 'eoa' ? { account: account } : { abstractAccount: account } return getFuturesPositions( sdk.futures.futuresGqlEndpoint, { - where: { - account: account, - }, + where: accountQuery, first: 99999, orderBy: 'openTimestamp', orderDirection: 'desc', diff --git a/packages/sdk/src/services/futures.ts b/packages/sdk/src/services/futures.ts index 02df39f0b1..d0af88cd30 100644 --- a/packages/sdk/src/services/futures.ts +++ b/packages/sdk/src/services/futures.ts @@ -19,13 +19,12 @@ import { SmartMarginAccount__factory, PerpsV2Market__factory } from '../contract import { IPerpsV2MarketConsolidated } from '../contracts/types/PerpsV2Market' import { IPerpsV2MarketSettings, PerpsV2MarketData } from '../contracts/types/PerpsV2MarketData' import { - queryCrossMarginAccounts, + querySmartMarginAccounts, querySmartMarginTransfers, queryFuturesTrades, queryIsolatedMarginTransfers, queryPositionHistory, queryTrades, - queryCompletePositionHistory, queryFundingRateHistory, } from '../queries/futures' import { NetworkId, NetworkOverrideOptions } from '../types/common' @@ -46,8 +45,8 @@ import { MarketWithIdleMargin, SmartMarginOrderInputs, ConditionalOrderTypeEnum, - FuturesAccountType, SLTPOrderInputs, + FuturesMarginType, } from '../types/futures' import { PricesMap } from '../types/prices' import { calculateTimestampForPeriod } from '../utils/date' @@ -70,6 +69,8 @@ import { marketsForNetwork, MarketKeyByAsset, encodeCloseOffchainOrderParams, + marginTypeToSubgraphType, + formatPerpsV2Market, } from '../utils/futures' import { getFuturesAggregateStats } from '../utils/subgraph' import { getReasonFromCode } from '../utils/synths' @@ -153,83 +154,14 @@ export default class FuturesService { const { suspensions, reasons } = await SystemStatus.getFuturesMarketSuspensions(marketKeys) const futuresMarkets = filteredMarkets.map( - ( - { - market, - key, - asset, - currentFundingRate, - currentFundingVelocity, - feeRates, - marketDebt, - marketSkew, - maxLeverage, - marketSize, - price, - }, - i: number - ): FuturesMarket => ({ - market, - marketKey: parseBytes32String(key) as FuturesMarketKey, - marketName: getMarketName(parseBytes32String(asset) as FuturesMarketAsset), - asset: parseBytes32String(asset) as FuturesMarketAsset, - assetHex: asset, - currentFundingRate: wei(currentFundingRate).div(24), - currentFundingVelocity: wei(currentFundingVelocity).div(24 * 24), - feeRates: { - makerFee: wei(feeRates.makerFee), - takerFee: wei(feeRates.takerFee), - makerFeeDelayedOrder: wei(feeRates.makerFeeDelayedOrder), - takerFeeDelayedOrder: wei(feeRates.takerFeeDelayedOrder), - makerFeeOffchainDelayedOrder: wei(feeRates.makerFeeOffchainDelayedOrder), - takerFeeOffchainDelayedOrder: wei(feeRates.takerFeeOffchainDelayedOrder), - }, - openInterest: { - shortPct: wei(marketSize).eq(0) - ? 0 - : wei(marketSize).sub(marketSkew).div('2').div(marketSize).toNumber(), - longPct: wei(marketSize).eq(0) - ? 0 - : wei(marketSize).add(marketSkew).div('2').div(marketSize).toNumber(), - shortUSD: wei(marketSize).eq(0) - ? wei(0) - : wei(marketSize).sub(marketSkew).div('2').mul(price), - longUSD: wei(marketSize).eq(0) - ? wei(0) - : wei(marketSize).add(marketSkew).div('2').mul(price), - long: wei(marketSize).add(marketSkew).div('2'), - short: wei(marketSize).sub(marketSkew).div('2'), - }, - marketDebt: wei(marketDebt), - marketSkew: wei(marketSkew), - contractMaxLeverage: wei(maxLeverage), - appMaxLeverage: appAdjustedLeverage(wei(maxLeverage)), - marketSize: wei(marketSize), - marketLimitUsd: wei(marketParameters[i].maxMarketValue).mul(wei(price)), - marketLimitNative: wei(marketParameters[i].maxMarketValue), - minInitialMargin: wei(minInitialMargin), - keeperDeposit: wei(minKeeperFee), - isSuspended: suspensions[i], - marketClosureReason: getReasonFromCode(reasons[i]) as MarketClosureReason, - settings: { - maxMarketValue: wei(marketParameters[i].maxMarketValue), - skewScale: wei(marketParameters[i].skewScale), - delayedOrderConfirmWindow: wei( - marketParameters[i].delayedOrderConfirmWindow, - 0 - ).toNumber(), - offchainDelayedOrderMinAge: wei( - marketParameters[i].offchainDelayedOrderMinAge, - 0 - ).toNumber(), - offchainDelayedOrderMaxAge: wei( - marketParameters[i].offchainDelayedOrderMaxAge, - 0 - ).toNumber(), - minDelayTimeDelta: wei(marketParameters[i].minDelayTimeDelta, 0).toNumber(), - maxDelayTimeDelta: wei(marketParameters[i].maxDelayTimeDelta, 0).toNumber(), - }, - }) + (m, i: number): FuturesMarket => + formatPerpsV2Market( + m, + marketParameters[i], + { minKeeperFee: wei(minKeeperFee), minInitialMargin: wei(minInitialMargin) }, + suspensions[i], + getReasonFromCode(reasons[i]) as MarketClosureReason + ) ) return futuresMarkets } @@ -237,7 +169,7 @@ export default class FuturesService { // TODO: types // TODO: Improve the API for fetching positions public async getFuturesPositions( - address: string, // Cross margin or EOA address + address: string, // Smart margin or EOA address futuresMarkets: { asset: FuturesMarketAsset; marketKey: FuturesMarketKey; address: string }[] ) { const marketDataContract = this.sdk.context.multicallContracts.PerpsV2MarketData @@ -420,9 +352,9 @@ export default class FuturesService { return response ? calculateVolumes(response) : {} } - public async getCrossMarginAccounts(walletAddress?: string | null): Promise { + public async getSmartMarginAccounts(walletAddress?: string | null): Promise { const address = walletAddress ?? this.sdk.context.walletAddress - return await queryCrossMarginAccounts(this.sdk, address) + return await querySmartMarginAccounts(this.sdk, address) } public async getIsolatedMarginTransfers( @@ -432,24 +364,24 @@ export default class FuturesService { return queryIsolatedMarginTransfers(this.sdk, address) } - public async getCrossMarginTransfers(walletAddress?: string | null): Promise { + public async getSmartMarginTransfers(walletAddress?: string | null): Promise { const address = walletAddress ?? this.sdk.context.walletAddress return querySmartMarginTransfers(this.sdk, address) } - public async getCrossMarginAccountBalance(crossMarginAddress: string) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async getSmartMarginAccountBalance(smartMarginAddress: string) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.provider ) - const freeMargin = await crossMarginAccountContract.freeMargin() + const freeMargin = await smartMarginAccountContract.freeMargin() return wei(freeMargin) } - public async getCrossMarginBalanceInfo(walletAddress: string, crossMarginAddress: string) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async getSmartMarginBalanceInfo(walletAddress: string, smartMarginAddress: string) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.provider ) const { SUSD } = this.sdk.context.contracts @@ -457,10 +389,10 @@ export default class FuturesService { // TODO: EthCall const [freeMargin, keeperEthBal, walletEthBal, allowance] = await Promise.all([ - crossMarginAccountContract.freeMargin(), - this.sdk.context.provider.getBalance(crossMarginAddress), + smartMarginAccountContract.freeMargin(), + this.sdk.context.provider.getBalance(smartMarginAddress), this.sdk.context.provider.getBalance(walletAddress), - SUSD.allowance(walletAddress, crossMarginAccountContract.address), + SUSD.allowance(walletAddress, smartMarginAccountContract.address), ]) return { @@ -472,22 +404,22 @@ export default class FuturesService { } public async getConditionalOrders(account: string) { - const crossMarginAccountMultiCall = new EthCallContract(account, SmartMarginAccountABI) - const crossMarginAccountContract = SmartMarginAccount__factory.connect( + const smartMarginAccountMultiCall = new EthCallContract(account, SmartMarginAccountABI) + const smartMarginAccountContract = SmartMarginAccount__factory.connect( account, this.sdk.context.provider ) const orders = [] - const orderIdBigNum = await crossMarginAccountContract.conditionalOrderId() + const orderIdBigNum = await smartMarginAccountContract.conditionalOrderId() const orderId = orderIdBigNum.toNumber() // Limit to the latest 500 const start = orderId > ORDERS_FETCH_SIZE ? orderId - ORDERS_FETCH_SIZE : 0 const orderCalls = Array(orderId) .fill(0) - .map((_, i) => crossMarginAccountMultiCall.getConditionalOrder(start + i)) + .map((_, i) => smartMarginAccountMultiCall.getConditionalOrder(start + i)) const contractOrders = (await this.sdk.context.multicallProvider.all( orderCalls )) as ConditionalOrderResult[] @@ -523,7 +455,7 @@ export default class FuturesService { }) } - public async getIsolatedTradePreview( + public async getIsolatedMarginTradePreview( marketAddress: string, marketKey: FuturesMarketKey, orderType: ContractOrderType, @@ -550,8 +482,8 @@ export default class FuturesService { return formatPotentialTrade(details, skewAdjustedPrice, inputs.sizeDelta, inputs.leverageSide) } - public async getCrossMarginTradePreview( - crossMarginAccount: string, + public async getSmartMarginTradePreview( + smartMarginAccount: string, marketKey: FuturesMarketKey, marketAddress: string, tradeParams: { @@ -564,7 +496,7 @@ export default class FuturesService { const marketInternal = this.getInternalFuturesMarket(marketAddress, marketKey) const preview = await marketInternal.getTradePreview( - crossMarginAccount, + smartMarginAccount, tradeParams.sizeDelta.toBN(), tradeParams.marginDelta.toBN(), tradeParams.orderPrice.toBN() @@ -584,18 +516,13 @@ export default class FuturesService { ) } - public async getCrossMarginKeeperBalance(account: string) { + public async getSmartMarginKeeperBalance(account: string) { const bal = await this.sdk.context.provider.getBalance(account) return wei(bal) } - public async getPositionHistory(walletAddress: string) { - const response = await queryPositionHistory(this.sdk, walletAddress) - return response ? mapFuturesPositions(response) : [] - } - - public async getCompletePositionHistory(walletAddress: string) { - const response = await queryCompletePositionHistory(this.sdk, walletAddress) + public async getPositionHistory(address: string, addressType: 'eoa' | 'account' = 'account') { + const response = await queryPositionHistory(this.sdk, address, addressType) return response ? mapFuturesPositions(response) : [] } @@ -604,13 +531,13 @@ export default class FuturesService { public async getTradesForMarket( marketAsset: FuturesMarketAsset, walletAddress: string, - accountType: FuturesAccountType, + accountType: FuturesMarginType, pageLength: number = 16 ) { const response = await queryTrades(this.sdk, { marketAsset, walletAddress, - accountType, + accountType: marginTypeToSubgraphType(accountType), pageLength, }) return response ? mapTrades(response) : [] @@ -618,12 +545,12 @@ export default class FuturesService { public async getAllTrades( walletAddress: string, - accountType: FuturesAccountType, + accountType: FuturesMarginType, pageLength: number = 16 ) { const response = await queryTrades(this.sdk, { walletAddress, - accountType, + accountType: marginTypeToSubgraphType(accountType), pageLength, }) return response ? mapTrades(response) : [] @@ -690,52 +617,52 @@ export default class FuturesService { // Contract mutations - public async approveCrossMarginDeposit( - crossMarginAddress: string, + public async approveSmartMarginDeposit( + smartMarginAddress: string, amount: BigNumber = BigNumber.from(ethers.constants.MaxUint256) ) { if (!this.sdk.context.contracts.SUSD) throw new Error(UNSUPPORTED_NETWORK) return this.sdk.transactions.createContractTxn(this.sdk.context.contracts.SUSD, 'approve', [ - crossMarginAddress, + smartMarginAddress, amount, ]) } - public async depositCrossMarginAccount(crossMarginAddress: string, amount: Wei) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async depositSmartMarginAccount(smartMarginAddress: string, amount: Wei) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ [AccountExecuteFunctions.ACCOUNT_MODIFY_MARGIN], [defaultAbiCoder.encode(['int256'], [amount.toBN()])], ]) } - public async withdrawCrossMarginAccount(crossMarginAddress: string, amount: Wei) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async withdrawSmartMarginAccount(smartMarginAddress: string, amount: Wei) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) - const { commands, inputs } = await this.batchIdleMarketMarginSweeps(crossMarginAddress) + const { commands, inputs } = await this.batchIdleMarketMarginSweeps(smartMarginAddress) commands.push(AccountExecuteFunctions.ACCOUNT_MODIFY_MARGIN) inputs.push(defaultAbiCoder.encode(['int256'], [amount.neg().toBN()])) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ commands, inputs, ]) } public async modifySmartMarginMarketMargin( - crossMarginAddress: string, + smartMarginAddress: string, marketAddress: string, marginDelta: Wei ) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) @@ -743,7 +670,7 @@ export default class FuturesService { const inputs = [] if (marginDelta.gt(0)) { - const freeMargin = await this.getCrossMarginAccountBalance(crossMarginAddress) + const freeMargin = await this.getSmartMarginAccountBalance(smartMarginAddress) if (marginDelta.gt(freeMargin)) { // Margin delta bigger than account balance, // need to pull some from the users wallet or idle margin @@ -751,7 +678,7 @@ export default class FuturesService { commands: sweepCommands, inputs: sweepInputs, idleMargin, - } = await this.batchIdleMarketMarginSweeps(crossMarginAddress) + } = await this.batchIdleMarketMarginSweeps(smartMarginAddress) commands.push(...sweepCommands) inputs.push(...sweepInputs) @@ -771,14 +698,14 @@ export default class FuturesService { commands.push(AccountExecuteFunctions.PERPS_V2_MODIFY_MARGIN) inputs.push(encodeModidyMarketMarginParams(marketAddress, marginDelta)) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ commands, inputs, ]) } public async modifySmartMarginPositionSize( - crossMarginAddress: string, + smartMarginAddress: string, market: { key: FuturesMarketKey address: string @@ -791,7 +718,7 @@ export default class FuturesService { const inputs = [] if (cancelPendingReduceOrders) { - const existingOrders = await this.getConditionalOrders(crossMarginAddress) + const existingOrders = await this.getConditionalOrders(smartMarginAddress) const existingOrdersForMarket = existingOrders.filter( (o) => o.marketKey === market.key && o.reduceOnly ) @@ -801,15 +728,15 @@ export default class FuturesService { inputs.push(defaultAbiCoder.encode(['uint256'], [o.id])) }) } - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) commands.push(AccountExecuteFunctions.PERPS_V2_SUBMIT_OFFCHAIN_DELAYED_ORDER) inputs.push(encodeSubmitOffchainOrderParams(market.address, sizeDelta, desiredFillPrice)) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ commands, inputs, ]) @@ -876,7 +803,7 @@ export default class FuturesService { return market.executeOffchainDelayedOrder(account, priceUpdateData, { value: updateFee }) } - public async createCrossMarginAccount() { + public async createSmartMarginAccount() { if (!this.sdk.context.contracts.SmartMarginAccountFactory) throw new Error(UNSUPPORTED_NETWORK) return this.sdk.transactions.createContractTxn( this.sdk.context.contracts.SmartMarginAccountFactory, @@ -885,21 +812,21 @@ export default class FuturesService { ) } - public async submitCrossMarginOrder( + public async submitSmartMarginOrder( market: { key: FuturesMarketKey address: string }, walletAddress: string, - crossMarginAddress: string, + smartMarginAddress: string, order: SmartMarginOrderInputs, options?: { cancelPendingReduceOrders?: boolean cancelExpiredDelayedOrders?: boolean } ) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) const commands = [] @@ -910,8 +837,8 @@ export default class FuturesService { inputs.push(defaultAbiCoder.encode(['address'], [market.address])) } - const idleMargin = await this.getIdleMargin(walletAddress, crossMarginAddress) - const freeMargin = await this.getCrossMarginAccountBalance(crossMarginAddress) + const idleMargin = await this.getIdleMargin(walletAddress, smartMarginAddress) + const freeMargin = await this.getSmartMarginAccountBalance(smartMarginAddress) // Sweep idle margin from other markets to account if (idleMargin.marketsTotal.gt(0)) { @@ -958,7 +885,7 @@ export default class FuturesService { } } - const existingOrders = await this.getConditionalOrders(crossMarginAddress) + const existingOrders = await this.getConditionalOrders(smartMarginAddress) const existingOrdersForMarket = existingOrders.filter( (o) => o.marketKey === market.key && o.reduceOnly ) @@ -1031,7 +958,7 @@ export default class FuturesService { } return this.sdk.transactions.createContractTxn( - crossMarginAccountContract, + smartMarginAccountContract, 'execute', [commands, inputs], { @@ -1040,23 +967,23 @@ export default class FuturesService { ) } - public async closeCrossMarginPosition( + public async closeSmartMarginPosition( market: { address: string key: FuturesMarketKey }, - crossMarginAddress: string, + smartMarginAddress: string, desiredFillPrice: Wei ) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) const commands = [] const inputs = [] - const existingOrders = await this.getConditionalOrders(crossMarginAddress) + const existingOrders = await this.getConditionalOrders(smartMarginAddress) const existingOrdersForMarket = existingOrders.filter( (o) => o.marketKey === market.key && o.reduceOnly ) @@ -1069,30 +996,30 @@ export default class FuturesService { commands.push(AccountExecuteFunctions.PERPS_V2_SUBMIT_CLOSE_OFFCHAIN_DELAYED_ORDER) inputs.push(encodeCloseOffchainOrderParams(market.address, desiredFillPrice)) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ commands, inputs, ]) } - public async cancelConditionalOrder(crossMarginAddress: string, orderId: number) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async cancelConditionalOrder(smartMarginAddress: string, orderId: number) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ [AccountExecuteFunctions.GELATO_CANCEL_CONDITIONAL_ORDER], [defaultAbiCoder.encode(['uint256'], [orderId])], ]) } - public async withdrawAccountKeeperBalance(crossMarginAddress: string, amount: Wei) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + public async withdrawAccountKeeperBalance(smartMarginAddress: string, amount: Wei) { + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) - return this.sdk.transactions.createContractTxn(crossMarginAccountContract, 'execute', [ + return this.sdk.transactions.createContractTxn(smartMarginAccountContract, 'execute', [ [AccountExecuteFunctions.ACCOUNT_WITHDRAW_ETH], [defaultAbiCoder.encode(['uint256'], [amount.toBN()])], ]) @@ -1100,18 +1027,18 @@ export default class FuturesService { public async updateStopLossAndTakeProfit( marketKey: FuturesMarketKey, - crossMarginAddress: string, + smartMarginAddress: string, params: SLTPOrderInputs ) { - const crossMarginAccountContract = SmartMarginAccount__factory.connect( - crossMarginAddress, + const smartMarginAccountContract = SmartMarginAccount__factory.connect( + smartMarginAddress, this.sdk.context.signer ) const commands = [] const inputs = [] if (params.takeProfit || params.stopLoss) { - const existingOrders = await this.getConditionalOrders(crossMarginAddress) + const existingOrders = await this.getConditionalOrders(smartMarginAddress) const existingOrdersForMarket = existingOrders.filter((o) => o.marketKey === marketKey) const existingStopLosses = existingOrdersForMarket.filter( (o) => @@ -1176,7 +1103,7 @@ export default class FuturesService { } return this.sdk.transactions.createContractTxn( - crossMarginAccountContract, + smartMarginAccountContract, 'execute', [commands, inputs], { @@ -1222,8 +1149,8 @@ export default class FuturesService { return market } - private async batchIdleMarketMarginSweeps(crossMarginAddress: string) { - const idleMargin = await this.getIdleMarginInMarkets(crossMarginAddress) + private async batchIdleMarketMarginSweeps(smartMarginAddress: string) { + const idleMargin = await this.getIdleMarginInMarkets(smartMarginAddress) const commands: number[] = [] const inputs: string[] = [] // Sweep idle margin from other markets to account diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index b9550bd5ac..961e9a3716 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -1,4 +1,4 @@ -import { BigNumber } from '@ethersproject/bignumber' +import { BigNumber, BigNumberish } from '@ethersproject/bignumber' import { formatBytes32String } from '@ethersproject/strings' import Wei, { wei } from '@synthetixio/wei' import { Contract as EthCallContract } from 'ethcall' @@ -31,7 +31,7 @@ import { PositionDetail, PositionSide, MarginTransfer, - FuturesAccountType, + FuturesMarginType, } from '../types/futures' import { PricesMap } from '../types/prices' import { @@ -41,10 +41,14 @@ import { mapFuturesPositions, mapTrades, getPerpsV3SubgraphUrl, + marginTypeToSubgraphType, + PerpsV3SymbolToMarketKey, + MarketAssetByKey, } from '../utils/futures' import { getReasonFromCode } from '../utils/synths' import { getPerpsV3Markets, queryPerpsV3Accounts } from '../queries/perpsV3' import { weiFromWei } from '../utils' +import { ZERO_ADDRESS } from '../constants' export default class PerpsV3Service { private sdk: KwentaSDK @@ -128,8 +132,9 @@ export default class PerpsV3Service { // const { suspensions, reasons } = await SystemStatus.getFuturesMarketSuspensions(marketKeys) - const futuresMarkets = perpsV3Markets.map( + const futuresMarkets = perpsV3Markets.reduce( ( + acc, { perpsMarketId, marketSymbol, @@ -141,52 +146,59 @@ export default class PerpsV3Service { skewScale, }, i: number - ): FuturesMarket => ({ - market: marketOwner, - marketKey: marketSymbol as FuturesMarketKey, - marketName: marketName, // TODO: Map asset - asset: marketSymbol as FuturesMarketAsset, // TODO: Map asset - assetHex: '', // TODO: Probably remove hex - currentFundingRate: wei(0.0001), // TODO: Funding rate - currentFundingVelocity: wei(maxFundingVelocity).div(24 * 24), // TODO: Current not max? - feeRates: { - makerFee: weiFromWei(makerFee), - takerFee: weiFromWei(takerFee), - makerFeeDelayedOrder: weiFromWei(makerFee), - takerFeeDelayedOrder: weiFromWei(takerFee), - makerFeeOffchainDelayedOrder: weiFromWei(makerFee), - takerFeeOffchainDelayedOrder: weiFromWei(takerFee), - }, - openInterest: { - // TODO: Assign open interest - shortPct: 0, - longPct: 0, - shortUSD: wei(0), - longUSD: wei(0), - long: wei(0), - short: wei(0), - }, - marketDebt: wei(0), - marketSkew: wei(0), - contractMaxLeverage: wei(25), // TODO: Assign leverage - appMaxLeverage: appAdjustedLeverage(wei(25)), - marketSize: wei(0), - marketLimitUsd: wei(1000000), // TODO: Assign limits - marketLimitNative: wei(100), - minInitialMargin: wei(50), // TODO: Is this still relevant in v3 - keeperDeposit: wei(4), // TODO: Assign min keeper fee - isSuspended: false, // TODO: Assign suspensions - marketClosureReason: getReasonFromCode(2) as MarketClosureReason, // TODO: Map closure reason - settings: { - maxMarketValue: wei(1000), // TODO: Max market value - skewScale: weiFromWei(skewScale), - delayedOrderConfirmWindow: 20000, // TODO: assign - offchainDelayedOrderMinAge: 20000, // TODO: assign - offchainDelayedOrderMaxAge: 20000, // TODO: assign - minDelayTimeDelta: 100, // TODO: assign - maxDelayTimeDelta: 100, // TODO: assign - }, - }) + ) => { + const marketKey = PerpsV3SymbolToMarketKey[marketSymbol] + if (!marketKey) return acc + + acc.push({ + market: marketOwner, + marketKey: marketKey, + marketName: marketName, + asset: MarketAssetByKey[marketKey], + assetHex: '', // TODO: Probably remove hex + currentFundingRate: wei(0.0001), // TODO: Funding rate + currentFundingVelocity: wei(maxFundingVelocity).div(24 * 24), // TODO: Current not max? + feeRates: { + makerFee: weiFromWei(makerFee), + takerFee: weiFromWei(takerFee), + makerFeeDelayedOrder: weiFromWei(makerFee), + takerFeeDelayedOrder: weiFromWei(takerFee), + makerFeeOffchainDelayedOrder: weiFromWei(makerFee), + takerFeeOffchainDelayedOrder: weiFromWei(takerFee), + }, + openInterest: { + // TODO: Assign open interest + shortPct: 0, + longPct: 0, + shortUSD: wei(0), + longUSD: wei(0), + long: wei(0), + short: wei(0), + }, + marketDebt: wei(0), + marketSkew: wei(0), + contractMaxLeverage: wei(25), // TODO: Assign leverage + appMaxLeverage: appAdjustedLeverage(wei(25)), + marketSize: wei(0), + marketLimitUsd: wei(1000000), // TODO: Assign limits + marketLimitNative: wei(100), + minInitialMargin: wei(50), // TODO: Is this still relevant in v3 + keeperDeposit: wei(4), // TODO: Assign min keeper fee + isSuspended: false, // TODO: Assign suspensions + marketClosureReason: getReasonFromCode(2) as MarketClosureReason, // TODO: Map closure reason + settings: { + maxMarketValue: wei(1000), // TODO: Max market value + skewScale: weiFromWei(skewScale), + delayedOrderConfirmWindow: 20000, // TODO: assign + offchainDelayedOrderMinAge: 20000, // TODO: assign + offchainDelayedOrderMaxAge: 20000, // TODO: assign + minDelayTimeDelta: 100, // TODO: assign + maxDelayTimeDelta: 100, // TODO: assign + }, + }) + return acc + }, + [] ) return futuresMarkets } @@ -385,10 +397,12 @@ export default class PerpsV3Service { return accounts.map((a) => a.id) } - public async getAccountOwner(id: number): Promise { + public async getAccountOwner(id: BigNumberish): Promise { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) - return marketProxy.getAccountOwner(id) + const owner = await marketProxy.getAccountOwner(id) + if (owner === ZERO_ADDRESS) return null + return owner } public async getMarginTransfers(walletAddress?: string | null): Promise { @@ -445,7 +459,7 @@ export default class PerpsV3Service { } public async getPositionHistory(walletAddress: string) { - const response = await queryPositionHistory(this.sdk, walletAddress) + const response = await queryPositionHistory(this.sdk, walletAddress, 'eoa') return response ? mapFuturesPositions(response) : [] } @@ -454,13 +468,13 @@ export default class PerpsV3Service { public async getTradesForMarket( marketAsset: FuturesMarketAsset, walletAddress: string, - accountType: FuturesAccountType, + accountType: FuturesMarginType, pageLength: number = 16 ) { const response = await queryTrades(this.sdk, { marketAsset, walletAddress, - accountType, + accountType: marginTypeToSubgraphType(accountType), pageLength, }) return response ? mapTrades(response) : [] @@ -468,12 +482,12 @@ export default class PerpsV3Service { public async getAllTrades( walletAddress: string, - accountType: FuturesAccountType, + accountType: FuturesMarginType, pageLength: number = 16 ) { const response = await queryTrades(this.sdk, { walletAddress, - accountType, + accountType: marginTypeToSubgraphType(accountType), pageLength, }) return response ? mapTrades(response) : [] @@ -575,7 +589,7 @@ export default class PerpsV3Service { return market.executeOffchainDelayedOrder(account, priceUpdateData, { value: updateFee }) } - public async createPerpsV3Account(requestedId: number) { + public async createPerpsV3Account(requestedId: BigNumberish) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) return this.sdk.transactions.createContractTxn(marketProxy, 'createAccount', [requestedId]) diff --git a/packages/sdk/src/types/futures.ts b/packages/sdk/src/types/futures.ts index e511dd1103..477bae5bc5 100644 --- a/packages/sdk/src/types/futures.ts +++ b/packages/sdk/src/types/futures.ts @@ -116,9 +116,6 @@ export enum FuturesMarketKey { sFLOKIPERP = 'sFLOKIPERP', sINJPERP = 'sINJPERP', sSTETHPERP = 'sSTETHPERP', - - // Perps V3 - ETH = 'ETH', } export enum FuturesMarketAsset { @@ -164,9 +161,6 @@ export enum FuturesMarketAsset { FLOKI = 'FLOKI', INJ = 'INJ', STETH = 'STETH', - - // Perps V3 (Temporary) - ETH = 'ETH', } export interface FuturesMarketConfig { @@ -214,7 +208,11 @@ export enum PositionSide { SHORT = 'short', } -export type FuturesAccountType = 'cross_margin' | 'smart_margin' | 'isolated_margin' | 'perps_v3' +export enum FuturesMarginType { + SMART_MARGIN = 'smart_margin', + CROSS_MARGIN = 'cross_margin', + ISOLATED_MARGIN_LEGACY = 'isolated_margin_legacy', +} export enum ContractOrderType { MARKET = 0, @@ -257,7 +255,7 @@ export type FuturesPositionHistory = { marketKey: FuturesMarketKey account: string abstractAccount: string - accountType: FuturesAccountType + accountType: FuturesMarginType isOpen: boolean isLiquidated: boolean size: T @@ -418,7 +416,7 @@ export type FuturesTrade = { feesPaid: T keeperFeesPaid: T orderType: FuturesOrderTypeDisplay - accountType: FuturesAccountType + accountType: FuturesMarginType } export enum AccountExecuteFunctions { diff --git a/packages/sdk/src/types/stats.ts b/packages/sdk/src/types/stats.ts index 700e73fa7a..31a991e777 100644 --- a/packages/sdk/src/types/stats.ts +++ b/packages/sdk/src/types/stats.ts @@ -28,8 +28,3 @@ export type FuturesCumulativeStats = { totalLiquidations: string averageTradeSize: string } - -export enum FuturesAccountTypes { - ISOLATED_MARGIN = 'isolated_margin', - CROSS_MARGIN = 'cross_margin', -} diff --git a/packages/sdk/src/utils/futures.ts b/packages/sdk/src/utils/futures.ts index 4b97df18ba..419cb40805 100644 --- a/packages/sdk/src/utils/futures.ts +++ b/packages/sdk/src/utils/futures.ts @@ -42,6 +42,8 @@ import { PotentialTradeStatus, MarginTransfer, ConditionalOrderTypeEnum, + FuturesMarginType, + MarketClosureReason, } from '../types/futures' import { formatCurrency, formatDollars } from '../utils/number' import { @@ -51,7 +53,10 @@ import { FuturesTradeResult, FuturesMarginTransferResult, CrossMarginAccountTransferResult, + FuturesAccountType, } from '../utils/subgraph' +import { PerpsV2MarketData } from '../contracts/types' +import { IPerpsV2MarketSettings } from '../contracts/types/PerpsV2MarketData' export const getFuturesEndpoint = (networkId: number) => { return FUTURES_ENDPOINTS[networkId] || FUTURES_ENDPOINTS[10] @@ -253,7 +258,7 @@ export const mapFuturesPositions = ( marketKey: parseBytes32String(marketKey) as FuturesMarketKey, account, abstractAccount, - accountType, + accountType: subgraphAccountTypeToMarginType(accountType), isOpen, isLiquidated, size: sizeWei.abs(), @@ -503,7 +508,7 @@ export const mapTrades = (futuresTrades: FuturesTradeResult[]): FuturesTrade[] = return { asset: parseBytes32String(asset) as FuturesMarketAsset, account, - accountType, + accountType: subgraphAccountTypeToMarginType(accountType), margin: new Wei(margin, 18, true), size: new Wei(size, 18, true), price: new Wei(price, 18, true), @@ -648,7 +653,6 @@ export const appAdjustedLeverage = (marketLeverage: Wei) => { export const MarketAssetByKey: Record = { [FuturesMarketKey.sBTCPERP]: FuturesMarketAsset.sBTC, [FuturesMarketKey.sETHPERP]: FuturesMarketAsset.sETH, - [FuturesMarketKey.ETH]: FuturesMarketAsset.ETH, [FuturesMarketKey.sLINKPERP]: FuturesMarketAsset.LINK, [FuturesMarketKey.sSOLPERP]: FuturesMarketAsset.SOL, [FuturesMarketKey.sAVAXPERP]: FuturesMarketAsset.AVAX, @@ -694,7 +698,6 @@ export const MarketAssetByKey: Record = { export const MarketKeyByAsset: Record = { [FuturesMarketAsset.sBTC]: FuturesMarketKey.sBTCPERP, [FuturesMarketAsset.sETH]: FuturesMarketKey.sETHPERP, - [FuturesMarketAsset.ETH]: FuturesMarketKey.ETH, [FuturesMarketAsset.LINK]: FuturesMarketKey.sLINKPERP, [FuturesMarketAsset.SOL]: FuturesMarketKey.sSOLPERP, [FuturesMarketAsset.AVAX]: FuturesMarketKey.sAVAXPERP, @@ -740,7 +743,6 @@ export const MarketKeyByAsset: Record = { export const AssetDisplayByAsset: Record = { [FuturesMarketAsset.sBTC]: 'Bitcoin', [FuturesMarketAsset.sETH]: 'Ether', - [FuturesMarketAsset.ETH]: 'Ether', [FuturesMarketAsset.LINK]: 'Chainlink', [FuturesMarketAsset.SOL]: 'Solana', [FuturesMarketAsset.AVAX]: 'Avalanche', @@ -783,4 +785,103 @@ export const AssetDisplayByAsset: Record = { [FuturesMarketAsset.STETH]: 'Lido Staked ETH', } as const +export const PerpsV3SymbolToMarketKey: Record = { + ETH: FuturesMarketKey.sETHPERP, +} + +export const PerpsV3SymbolToAsset: Record = { + ETH: FuturesMarketAsset.sETH, +} + +export const MarketKeyToPerpsV3Symbol = { + sETHPERP: 'ETH', +} + +export const AssetToPerpsV3Symbol = { + sETH: 'ETH', +} + export const marketOverrides: Partial>> = {} + +// TODO: Update these types on the subgraph + +export const subgraphAccountTypeToMarginType = (type: FuturesAccountType): FuturesMarginType => { + if (type === 'cross_margin' || type === 'smart_margin') return FuturesMarginType.SMART_MARGIN + return FuturesMarginType.ISOLATED_MARGIN_LEGACY +} + +export const marginTypeToSubgraphType = (type: FuturesMarginType): FuturesAccountType => { + if (type === FuturesMarginType.ISOLATED_MARGIN_LEGACY) return 'isolated_margin' + return 'cross_margin' +} + +export const formatPerpsV2Market = ( + { + market, + key, + asset, + currentFundingRate, + currentFundingVelocity, + feeRates, + marketDebt, + marketSkew, + maxLeverage, + marketSize, + price, + }: PerpsV2MarketData.MarketSummaryStructOutput, + marketParameters: IPerpsV2MarketSettings.ParametersStructOutput, + globalSettings: { + minKeeperFee: Wei + minInitialMargin: Wei + }, + isSuspended: boolean, + suspendedReason: MarketClosureReason +) => ({ + market, + marketKey: parseBytes32String(key) as FuturesMarketKey, + marketName: getMarketName(parseBytes32String(asset) as FuturesMarketAsset), + asset: parseBytes32String(asset) as FuturesMarketAsset, + assetHex: asset, + currentFundingRate: wei(currentFundingRate).div(24), + currentFundingVelocity: wei(currentFundingVelocity).div(24 * 24), + feeRates: { + makerFee: wei(feeRates.makerFee), + takerFee: wei(feeRates.takerFee), + makerFeeDelayedOrder: wei(feeRates.makerFeeDelayedOrder), + takerFeeDelayedOrder: wei(feeRates.takerFeeDelayedOrder), + makerFeeOffchainDelayedOrder: wei(feeRates.makerFeeOffchainDelayedOrder), + takerFeeOffchainDelayedOrder: wei(feeRates.takerFeeOffchainDelayedOrder), + }, + openInterest: { + shortPct: wei(marketSize).eq(0) + ? 0 + : wei(marketSize).sub(marketSkew).div('2').div(marketSize).toNumber(), + longPct: wei(marketSize).eq(0) + ? 0 + : wei(marketSize).add(marketSkew).div('2').div(marketSize).toNumber(), + shortUSD: wei(marketSize).eq(0) ? wei(0) : wei(marketSize).sub(marketSkew).div('2').mul(price), + longUSD: wei(marketSize).eq(0) ? wei(0) : wei(marketSize).add(marketSkew).div('2').mul(price), + long: wei(marketSize).add(marketSkew).div('2'), + short: wei(marketSize).sub(marketSkew).div('2'), + }, + marketDebt: wei(marketDebt), + marketSkew: wei(marketSkew), + contractMaxLeverage: wei(maxLeverage), + appMaxLeverage: appAdjustedLeverage(wei(maxLeverage)), + marketSize: wei(marketSize), + marketLimitUsd: wei(marketParameters.maxMarketValue).mul(wei(price)), + marketLimitNative: wei(marketParameters.maxMarketValue), + minInitialMargin: globalSettings.minInitialMargin, + keeperDeposit: globalSettings.minKeeperFee, + isSuspended: isSuspended, + marketClosureReason: suspendedReason, + settings: { + maxMarketValue: wei(marketParameters.maxMarketValue), + skewScale: wei(marketParameters.skewScale), + delayedOrderConfirmWindow: wei(marketParameters.delayedOrderConfirmWindow, 0).toNumber(), + offchainDelayedOrderMinAge: wei(marketParameters.offchainDelayedOrderMinAge, 0).toNumber(), + offchainDelayedOrderMaxAge: wei(marketParameters.offchainDelayedOrderMaxAge, 0).toNumber(), + minDelayTimeDelta: wei(marketParameters.minDelayTimeDelta, 0).toNumber(), + maxDelayTimeDelta: wei(marketParameters.maxDelayTimeDelta, 0).toNumber(), + }, +}) diff --git a/packages/sdk/src/utils/subgraph.ts b/packages/sdk/src/utils/subgraph.ts index 725d60100a..4c498858c7 100644 --- a/packages/sdk/src/utils/subgraph.ts +++ b/packages/sdk/src/utils/subgraph.ts @@ -2962,7 +2962,7 @@ export const getSmartMarginAccounts = async function Date: Fri, 7 Jul 2023 15:49:44 +0100 Subject: [PATCH 03/43] Update sdk mock to fix tests --- packages/app/src/state/__mocks__/sdk.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/app/src/state/__mocks__/sdk.ts b/packages/app/src/state/__mocks__/sdk.ts index c5a0ea1196..177cf4c74d 100644 --- a/packages/app/src/state/__mocks__/sdk.ts +++ b/packages/app/src/state/__mocks__/sdk.ts @@ -7,9 +7,9 @@ export const mockSetSigner = () => Promise.resolve() export const mockSubmitCrossMarginOrder = jest.fn(() => ({ test: 'THE TX' })) const mockFuturesService = { - getCrossMarginAccounts: () => ['0x7bCe4eF9d95129011528E502357C7772'], + getSmartMarginAccounts: () => ['0x7bCe4eF9d95129011528E502357C7772'], getPreviousDayPrices: () => [], - getCrossMarginTradePreview: () => { + getSmartMarginTradePreview: () => { return { ...MOCK_TRADE_PREVIEW } }, getFuturesPositions: () => [], @@ -18,8 +18,8 @@ const mockFuturesService = { getConditionalOrders: () => [], getIsolatedMarginTransfers: () => [], getDelayedOrders: () => [], - getCrossMarginTransfers: () => [], - getCrossMarginBalanceInfo: () => ({ + getSmartMarginTransfers: () => [], + getSmartMarginBalanceInfo: () => ({ freeMargin: wei('1000'), keeperEthBal: wei('0.1'), walletEthBal: wei('1'), @@ -40,6 +40,7 @@ const mockSdk = { transactions: {}, kwentaToken: {}, system: {}, + perpsV3: { getMarkets: () => [] }, setProvider: mockSetProvider, setSigner: mockSetSigner, } From c2d39667a9682e8345d8667e6105bb0d978a85ad Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Sun, 9 Jul 2023 17:10:41 +0100 Subject: [PATCH 04/43] Perps v3 type updates --- .../FuturesPositionsTable.tsx | 2 +- .../ClosePositionModal/ClosePositionModal.tsx | 2 +- .../futures/CreatePerpsV3AccountModal.tsx | 2 +- .../MobileTrade/UserTabs/PositionsTab.tsx | 2 +- .../Trade/TransferIsolatedMarginModal.tsx | 2 +- .../DelayedOrderConfirmationModal.tsx | 4 +- .../futures/UserInfo/PositionsTable.tsx | 2 +- packages/app/src/state/app/types.ts | 3 +- packages/app/src/state/futures/actions.ts | 8 +- .../{ => futures}/crossMargin/actions.ts | 0 .../{ => futures}/crossMargin/reducer.ts | 20 +- .../{ => futures}/crossMargin/selectors.ts | 0 .../state/{ => futures}/crossMargin/types.ts | 64 ++---- packages/app/src/state/futures/hooks.ts | 4 +- packages/app/src/state/futures/selectors.ts | 11 +- .../app/src/state/futures/shared.ts/types.ts | 59 ++++++ .../src/state/futures/smartMargin.ts/types.ts | 185 ++++++++++++++++++ packages/app/src/state/futures/types.ts | 76 +------ packages/app/src/state/store.ts | 2 +- packages/app/src/utils/futures.ts | 9 - 20 files changed, 293 insertions(+), 164 deletions(-) rename packages/app/src/state/{ => futures}/crossMargin/actions.ts (100%) rename packages/app/src/state/{ => futures}/crossMargin/reducer.ts (97%) rename packages/app/src/state/{ => futures}/crossMargin/selectors.ts (100%) rename packages/app/src/state/{ => futures}/crossMargin/types.ts (81%) create mode 100644 packages/app/src/state/futures/shared.ts/types.ts create mode 100644 packages/app/src/state/futures/smartMargin.ts/types.ts diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx index a9f36ab0c7..6b14d8e376 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx @@ -18,7 +18,7 @@ import ROUTES from 'constants/routes' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' -import { selectCrossMarginPositions } from 'state/crossMargin/selectors' +import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, selectMarkets, diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx index 6617b83c71..5086c6523b 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx @@ -24,7 +24,7 @@ import { Body } from 'components/Text' import { previewErrorI18n } from 'queries/futures/constants' import { setShowPositionModal } from 'state/app/reducer' import { selectTransaction } from 'state/app/selectors' -import { submitCrossMarginReducePositionOrder } from 'state/crossMargin/actions' +import { submitCrossMarginReducePositionOrder } from 'state/futures/crossMargin/actions' import { editClosePositionPrice, editClosePositionSizeDelta, diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 1d48254a62..032bf166c1 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -12,7 +12,7 @@ import { setOpenModal } from 'state/app/reducer' import { selectPerpsV3Account, selectCrossMarginSupportedNetwork, -} from 'state/crossMargin/selectors' +} from 'state/futures/crossMargin/selectors' import { approveCrossMargin, createSmartMarginAccount } from 'state/futures/actions' import { selectSmartMarginAccountQueryStatus, diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx index 3403717106..848743731b 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx @@ -20,7 +20,7 @@ import PositionType from 'sections/futures/PositionType' import ShareModal from 'sections/futures/ShareModal' import EditPositionButton from 'sections/futures/UserInfo/EditPositionButton' import { setShowPositionModal } from 'state/app/reducer' -import { selectCrossMarginPositions } from 'state/crossMargin/selectors' +import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, selectFuturesType, diff --git a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx b/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx index 1396def70b..59f01c3354 100644 --- a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx +++ b/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx @@ -17,7 +17,7 @@ import { FlexDivRowCentered } from 'components/layout/flex' import SegmentedControl from 'components/SegmentedControl' import Spacer from 'components/Spacer' import { selectSusdBalance } from 'state/balances/selectors' -import { depositCrossMarginMargin, withdrawCrossMargin } from 'state/crossMargin/actions' +import { depositCrossMarginMargin, withdrawCrossMargin } from 'state/futures/crossMargin/actions' import { selectAvailableMargin, selectIsolatedTransferError, diff --git a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx index 375902ae22..44d2f4c251 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx @@ -21,8 +21,8 @@ import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { setOpenModal } from 'state/app/reducer' -import { submitCrossMarginOrder } from 'state/crossMargin/actions' -import { selectCrossMarginTradeInputs } from 'state/crossMargin/selectors' +import { submitCrossMarginOrder } from 'state/futures/crossMargin/actions' +import { selectCrossMarginTradeInputs } from 'state/futures/crossMargin/selectors' import { selectIsModifyingIsolatedPosition, selectLeverageSide, diff --git a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx index b3813d6d8a..2060c86ebe 100644 --- a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx @@ -20,7 +20,7 @@ import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import useWindowSize from 'hooks/useWindowSize' import PositionType from 'sections/futures/PositionType' import { setShowPositionModal } from 'state/app/reducer' -import { selectCrossMarginPositions } from 'state/crossMargin/selectors' +import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, selectFuturesType, diff --git a/packages/app/src/state/app/types.ts b/packages/app/src/state/app/types.ts index 48409e1ced..b0918fcf1e 100644 --- a/packages/app/src/state/app/types.ts +++ b/packages/app/src/state/app/types.ts @@ -1,6 +1,5 @@ import { TransactionStatus, FuturesMarketKey, KwentaStatus, GasPrice } from '@kwenta/sdk/types' - -import { FuturesTransactionType } from 'state/futures/types' +import { FuturesTransactionType } from 'state/futures/shared.ts/types' export type ModalType = | 'futures_close_position_confirm' diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index 610e75324b..df2e81c09e 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -49,7 +49,7 @@ import { } from 'state/app/reducer' import { fetchBalances } from 'state/balances/actions' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { fetchV3Markets } from 'state/crossMargin/actions' +import { fetchV3Markets } from 'state/futures/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' import { AppDispatch, AppThunk, RootState } from 'state/store' import { ThunkConfig } from 'state/types' @@ -958,7 +958,7 @@ export const withdrawSmartMargin = createAsyncThunk( notifyError('No smart margin account') return } - await submitSMTransferTransaction(dispatch, sdk, 'withdraw_cross_margin', account, amount) + await submitSMTransferTransaction(dispatch, sdk, 'withdraw_smart_margin', account, amount) } ) @@ -1372,7 +1372,7 @@ export const withdrawAccountKeeperBalance = createAsyncThunk { @@ -1386,7 +1386,7 @@ const submitSMTransferTransaction = async ( try { const tx = - type === 'deposit_cross_margin' + type === 'deposit_smart_margin' ? await sdk.futures.depositSmartMarginAccount(account, amount) : await sdk.futures.withdrawSmartMarginAccount(account, amount) await monitorAndAwaitTransaction(dispatch, tx) diff --git a/packages/app/src/state/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts similarity index 100% rename from packages/app/src/state/crossMargin/actions.ts rename to packages/app/src/state/futures/crossMargin/actions.ts diff --git a/packages/app/src/state/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts similarity index 97% rename from packages/app/src/state/crossMargin/reducer.ts rename to packages/app/src/state/futures/crossMargin/reducer.ts index 8403b05b6a..3726be5e2b 100644 --- a/packages/app/src/state/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -29,13 +29,13 @@ import { fetchSmartMarginAccount, fetchMarginTransfers, fetchFundingRatesHistory, -} from '../futures/actions' +} from '../actions' import { EditPositionInputs, InputCurrencyDenomination, - PerpsV3AccountData, + CrossMarginAccountData, TradeSizeInputs, - PerpsV3State, + CrossMarginState, PreviewAction, } from './types' import { @@ -45,7 +45,7 @@ import { fetchV3Markets, } from './actions' -export const PERPS_V3_INITIAL_STATE: PerpsV3State = { +export const PERPS_V3_INITIAL_STATE: CrossMarginState = { selectedType: DEFAULT_FUTURES_MARGIN_TYPE, confirmationModalOpen: false, markets: { @@ -405,7 +405,11 @@ export const { setPerpsV3Account, } = futuresSlice.actions -const findWalletForAccount = (perpsV3State: PerpsV3State, account: string, network: NetworkId) => { +const findWalletForAccount = ( + perpsV3State: CrossMarginState, + account: string, + network: NetworkId +) => { const entry = Object.entries(perpsV3State.accounts[network]).find(([_, value]) => { return value.account === account }) @@ -413,7 +417,7 @@ const findWalletForAccount = (perpsV3State: PerpsV3State, account: string, netwo } const mergeTradesForAccount = ( - perpsV3: PerpsV3State, + perpsV3: CrossMarginState, network: NetworkId, wallet: string, trades: FuturesTrade[] @@ -431,10 +435,10 @@ const mergeTradesForAccount = ( } const updateCrossMarginAccount = ( - futuresState: PerpsV3State, + futuresState: CrossMarginState, network: NetworkId, wallet: string, - newAccountData: Partial + newAccountData: Partial ) => { const updatedAccount = { ...ZERO_STATE_CM_ACCOUNT, diff --git a/packages/app/src/state/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts similarity index 100% rename from packages/app/src/state/crossMargin/selectors.ts rename to packages/app/src/state/futures/crossMargin/selectors.ts diff --git a/packages/app/src/state/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts similarity index 81% rename from packages/app/src/state/crossMargin/types.ts rename to packages/app/src/state/futures/crossMargin/types.ts index 2bbc8cc440..d677d5050a 100644 --- a/packages/app/src/state/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -20,6 +20,7 @@ import { AppFuturesMarginType } from 'state/futures/types' import { PricesInfo } from 'state/prices/types' import { QueryStatus } from 'state/types' +import { FuturesAccountData } from '../shared.ts/types' export type TradeSizeInputs = { nativeSize: T @@ -93,7 +94,7 @@ export type FuturesQueryStatuses = { historicalFundingRates: QueryStatus } -export type PerpsV3TransactionType = +export type CrossMarginTransactionType = | 'deposit_perps_v3' | 'withdraw_perps_v3' | 'approve_perps_v3' @@ -103,8 +104,8 @@ export type PerpsV3TransactionType = | 'execute_delayed_perps_v3' | 'create_account_perps_v3' -export type PerpsV3Transaction = { - type: PerpsV3TransactionType +export type CrossMarginTransaction = { + type: CrossMarginTransactionType status: TransactionStatus error?: string hash: string | null @@ -127,17 +128,9 @@ export type AccountContext = { export type PreviewAction = 'edit' | 'trade' | 'close' -export type PerpsV3AccountData = { - account: string - position?: FuturesPosition - positions?: FuturesPosition[] - positionHistory?: FuturesPositionHistory[] - trades?: FuturesTrade[] - marginTransfers?: MarginTransfer[] - delayedOrders: DelayedOrderWithDetails[] -} +export type CrossMarginAccountData = FuturesAccountData -export type PerpsV3State = { +export type CrossMarginState = { markets: Record[]> tradeInputs: TradeSizeInputs editPositionInputs: EditPositionInputs @@ -159,7 +152,7 @@ export type PerpsV3State = { accounts: Record< FuturesNetwork, { - [wallet: string]: PerpsV3AccountData + [wallet: string]: CrossMarginAccountData } > fundingRates: FundingRate[] @@ -237,38 +230,11 @@ export type SharePositionParams = { marketPrice?: Wei } -export const futuresPositionKeys = new Set([ - 'remainingMargin', - 'accessibleMargin', - 'order.fee', - 'order.leverage', - 'position.notionalValue', - 'position.accruedFunding', - 'position.initialMargin', - 'position.profitLoss', - 'position.lastPrice', - 'position.size', - 'position.liquidationPrice', - 'position.initialLeverage', - 'position.leverage', - 'position.pnl', - 'position.pnlPct', - 'position.marginRatio', -]) - -export const futuresPositionHistoryKeys = new Set([ - 'size', - 'feesPaid', - 'netFunding', - 'netTransfers', - 'totalDeposits', - 'initialMargin', - 'margin', - 'entryPrice', - 'avgEntryPrice', - 'exitPrice', - 'leverage', - 'pnl', - 'pnlWithFeesPaid', - 'totalVolume', -]) +export type CrossPerpsPortfolio = { + account: string + timestamp: number + assets: { + [asset: string]: number + } + total: number +} diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index 9b8accf0e5..e430c5ec8a 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -22,8 +22,8 @@ import { fetchCrossMarginOpenOrders, fetchCrossMarginPositions, fetchPerpsV3Account, -} from 'state/crossMargin/actions' -import { selectCrossMarginSupportedNetwork } from 'state/crossMargin/selectors' +} from 'state/futures/crossMargin/actions' +import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' import { FuturesMarginType } from '@kwenta/sdk/types' // TODO: Optimise polling and queries diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index a53f0f0bd4..826f5c0247 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -35,7 +35,6 @@ import { getKnownError } from 'utils/formatters/error' import { unserializeCmBalanceInfo, unserializeFuturesVolumes, - unserializeGasEstimate, unserializeTradeInputs, unserializeMarkets, unserializeDelayedOrders, @@ -51,8 +50,6 @@ import { futuresPositionKeys, MarkPriceInfos, PortfolioValues, - SmartPerpsPortfolio, - CrossPerpsPortfolio, } from './types' import { selectAllCrossMarginTrades, @@ -62,7 +59,9 @@ import { selectCrossMarginPositions, selectCrossMarginTradeInputs, selectV3Markets, -} from 'state/crossMargin/selectors' +} from 'state/futures/crossMargin/selectors' +import { CrossPerpsPortfolio } from './crossMargin/types' +import { SmartPerpsPortfolio } from './smartMargin.ts/types' export const selectFuturesType = (state: RootState) => state.futures.selectedType @@ -426,8 +425,8 @@ export const selectIsSubmittingCrossTransfer = createSelector( (state: RootState) => state.app, (submitting, app) => { return ( - (app.transaction?.type === 'deposit_cross_margin' || - app.transaction?.type === 'withdraw_cross_margin') && + (app.transaction?.type === 'deposit_smart_margin' || + app.transaction?.type === 'withdraw_smart_margin') && submitting ) } diff --git a/packages/app/src/state/futures/shared.ts/types.ts b/packages/app/src/state/futures/shared.ts/types.ts new file mode 100644 index 0000000000..fc6f70714b --- /dev/null +++ b/packages/app/src/state/futures/shared.ts/types.ts @@ -0,0 +1,59 @@ +import { + FuturesMarketAsset, + FuturesMarketKey, + FuturesOrderTypeDisplay, + FuturesPosition, + FuturesPositionHistory, + FuturesTrade, + MarginTransfer, + PositionSide, +} from '@kwenta/sdk/types' +import Wei from '@synthetixio/wei' + +export type FuturesAccountData = { + account: string + position?: FuturesPosition + positions?: FuturesPosition[] + positionHistory?: FuturesPositionHistory[] + trades?: FuturesTrade[] + marginTransfers?: MarginTransfer[] + delayedOrders: DelayedOrderWithDetails[] +} + +export type DelayedOrderWithDetails = { + account: string + marketAddress: string + market: string + asset: FuturesMarketAsset + marketKey: FuturesMarketKey + size: T + commitDeposit: T + keeperDeposit: T + submittedAtTimestamp: number + executableAtTimestamp: number + isOffchain: boolean + desiredFillPrice: T + targetRoundId: T | null + orderType: FuturesOrderTypeDisplay + side: PositionSide + isStale?: boolean + isExecutable?: boolean + isCancelling?: boolean +} + +export type FuturesTransactionType = + | 'deposit_smart_margin' + | 'withdraw_smart_margin' + | 'approve_cross_margin' + | 'deposit_isolated' + | 'withdraw_isolated' + | 'modify_isolated' + | 'close_isolated' + | 'close_cross_margin' + | 'cancel_delayed_isolated' + | 'execute_delayed_isolated' + | 'close_cross_margin' + | 'submit_cross_order' + | 'cancel_cross_margin_order' + | 'withdraw_keeper_balance' + | 'create_cross_margin_account' diff --git a/packages/app/src/state/futures/smartMargin.ts/types.ts b/packages/app/src/state/futures/smartMargin.ts/types.ts new file mode 100644 index 0000000000..aa962967f0 --- /dev/null +++ b/packages/app/src/state/futures/smartMargin.ts/types.ts @@ -0,0 +1,185 @@ +import { + NetworkId, + TransactionStatus, + SmartMarginOrderType, + FuturesPositionHistory, + FuturesPotentialTradeDetails, + PositionSide, + ConditionalOrder as SmartMarginOrder, + FuturesMarketKey, + FuturesMarketAsset, + MarginTransfer, + FuturesFilledPosition, + FuturesMarginType, +} from '@kwenta/sdk/types' +import Wei from '@synthetixio/wei' + +import { PricesInfo } from 'state/prices/types' +import { QueryStatus } from 'state/types' +import { FuturesAccountData, FuturesTransactionType } from '../shared.ts/types' + +type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY +export type AppFuturesMarginType = Exclude + +export type TradeSizeInputs = { + nativeSize: T + susdSize: T +} + +export type SLTPInputs = { + stopLossPrice?: T + takeProfitPrice?: T +} + +export type SmartMarginTradeInputs = TradeSizeInputs & { + stopLossPrice?: T + takeProfitPrice?: T +} + +export type EditPositionInputs = { + nativeSizeDelta: T + marginDelta: T +} + +export type ClosePositionInputs = { + nativeSizeDelta: T + price?: { + value?: string | undefined | null + invalidLabel: string | undefined | null + } + orderType: SmartMarginOrderType +} + +export type MarkPrices = Partial> + +export type MarkPriceInfos = Partial>> + +export type FundingRate = { + asset: FuturesMarketKey + fundingTitle: string + fundingRate: T | null +} + +export type FuturesAction = { + account: string + timestamp: number + asset: FuturesMarketAsset + margin: number + size: number + action: 'trade' | 'deposit' | 'withdraw' +} + +export type SmartPerpsPortfolio = { + account: string + timestamp: number + assets: { + [asset: string]: number + } + idle: number + total: number +} + +export type PortfolioValues = { + timestamp: number + total: number +} + +export type FuturesQueryStatuses = { + markets: QueryStatus + smartMarginBalanceInfo: QueryStatus + dailyVolumes: QueryStatus + smartMarginPositions: QueryStatus + smartMarginPositionHistory: QueryStatus + openOrders: QueryStatus + smartMarginTradePreview: QueryStatus + smartMarginAccount: QueryStatus + positionHistory: QueryStatus + trades: QueryStatus + selectedTraderPositionHistory: QueryStatus + marginTransfers: QueryStatus + historicalFundingRates: QueryStatus +} + +export type FuturesTransaction = { + type: FuturesTransactionType + status: TransactionStatus + error?: string + hash: string | null +} + +export type SmartMarginBalanceInfo = { + freeMargin: T + keeperEthBal: T + allowance: T + walletEthBal: T +} + +export type SmartMarginTradeFees = { + delayedOrderFee: T + keeperEthDeposit: T +} + +type FuturesNetwork = number + +export type InputCurrencyDenomination = 'usd' | 'native' + +export type FundingRatePeriods = { + [key: number]: string +} + +export type AccountContext = { + type: AppFuturesMarginType + network: NetworkId + wallet: string + cmAccount?: string +} + +export type PreviewAction = 'edit' | 'trade' | 'close' + +export type SmartMarginAccountData = FuturesAccountData & { + idleTransfers: MarginTransfer[] + balanceInfo: SmartMarginBalanceInfo + conditionalOrders: SmartMarginOrder[] +} + +export type SmartMarginState = { + tradeInputs: SmartMarginTradeInputs + editPositionInputs: EditPositionInputs + sltpModalInputs: SLTPInputs + marginDelta: string + orderType: SmartMarginOrderType + orderFeeCap: string + leverageInput: string + selectedLeverageByAsset: Partial> + leverageSide: PositionSide + selectedMarketKey: FuturesMarketKey + selectedMarketAsset: FuturesMarketAsset + showSmartMarginOnboard: boolean + previews: { + trade: FuturesPotentialTradeDetails | null + close: FuturesPotentialTradeDetails | null + edit: FuturesPotentialTradeDetails | null + } + previewDebounceCount: number + fees: SmartMarginTradeFees + depositApproved: boolean + cancellingOrder: number | undefined + accounts: Record< + FuturesNetwork, + { + [wallet: string]: SmartMarginAccountData + } + > + + orderPrice: { + price?: string | undefined | null + invalidLabel: string | undefined | null + } +} + +export type SharePositionParams = { + asset?: FuturesMarketAsset + position?: FuturesFilledPosition + positionHistory?: FuturesPositionHistory + marketPrice?: Wei +} diff --git a/packages/app/src/state/futures/types.ts b/packages/app/src/state/futures/types.ts index d8312cce6f..b7378eb61b 100644 --- a/packages/app/src/state/futures/types.ts +++ b/packages/app/src/state/futures/types.ts @@ -5,7 +5,6 @@ import { SmartMarginOrderType, FuturesMarket, FuturesOrderTypeDisplay, - FuturesPosition, FuturesPositionHistory, FuturesPotentialTradeDetails, FuturesTrade, @@ -22,6 +21,7 @@ import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' import { QueryStatus } from 'state/types' +import { FuturesAccountData, FuturesTransactionType } from './shared.ts/types' type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY export type AppFuturesMarginType = Exclude @@ -74,25 +74,6 @@ export type FuturesAction = { action: 'trade' | 'deposit' | 'withdraw' } -export type CrossPerpsPortfolio = { - account: string - timestamp: number - assets: { - [asset: string]: number - } - total: number -} - -export type SmartPerpsPortfolio = { - account: string - timestamp: number - assets: { - [asset: string]: number - } - idle: number - total: number -} - export type PortfolioValues = { timestamp: number total: number @@ -114,23 +95,6 @@ export type FuturesQueryStatuses = { historicalFundingRates: QueryStatus } -export type FuturesTransactionType = - | 'deposit_cross_margin' - | 'withdraw_cross_margin' - | 'approve_cross_margin' - | 'deposit_isolated' - | 'withdraw_isolated' - | 'modify_isolated' - | 'close_isolated' - | 'close_cross_margin' - | 'cancel_delayed_isolated' - | 'execute_delayed_isolated' - | 'close_cross_margin' - | 'submit_cross_order' - | 'cancel_cross_margin_order' - | 'withdraw_keeper_balance' - | 'create_cross_margin_account' - export type FuturesTransaction = { type: FuturesTransactionType status: TransactionStatus @@ -138,19 +102,6 @@ export type FuturesTransaction = { hash: string | null } -export type TransactionEstimation = { - error?: string | null - limit: T - cost: T -} - -export type TransactionEstimationPayload = { - type: FuturesTransactionType - limit: string - cost: string - error?: string | null -} - export type SmartMarginBalanceInfo = { freeMargin: T keeperEthBal: T @@ -184,14 +135,6 @@ export type AccountContext = { export type PreviewAction = 'edit' | 'trade' | 'close' -export type FuturesAccountData = { - position?: FuturesPosition - positions?: FuturesPosition[] - positionHistory?: FuturesPositionHistory[] - trades?: FuturesTrade[] - marginTransfers?: MarginTransfer[] -} - export type SmartMarginAccountData = FuturesAccountData & { account: string idleTransfers: MarginTransfer[] @@ -349,20 +292,3 @@ export const futuresPositionKeys = new Set([ 'position.pnlPct', 'position.marginRatio', ]) - -export const futuresPositionHistoryKeys = new Set([ - 'size', - 'feesPaid', - 'netFunding', - 'netTransfers', - 'totalDeposits', - 'initialMargin', - 'margin', - 'entryPrice', - 'avgEntryPrice', - 'exitPrice', - 'leverage', - 'pnl', - 'pnlWithFeesPaid', - 'totalVolume', -]) diff --git a/packages/app/src/state/store.ts b/packages/app/src/state/store.ts index 2307bcafa7..9620341a3e 100644 --- a/packages/app/src/state/store.ts +++ b/packages/app/src/state/store.ts @@ -28,7 +28,7 @@ import sdk from './sdk' import stakingReducer from './staking/reducer' import statsReducer from './stats/reducer' import walletReducer from './wallet/reducer' -import crossMarginReducer from './crossMargin/reducer' +import crossMarginReducer from './futures/crossMargin/reducer' const LOG_REDUX = false diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index 8c98c5614d..e2f38d058d 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -24,7 +24,6 @@ import { SmartMarginBalanceInfo, TradeSizeInputs, DelayedOrderWithDetails, - TransactionEstimation, futuresPositionKeys, FundingRate, MarkPrices, @@ -297,14 +296,6 @@ export const unserializeDelayedOrders = ( orders: DelayedOrderWithDetails[] ): DelayedOrderWithDetails[] => orders.map((o) => unserializeDelayedOrder(o)) -export const unserializeGasEstimate = ( - estimate: TransactionEstimation -): TransactionEstimation => ({ - ...estimate, - limit: wei(estimate.limit), - cost: wei(estimate.cost), -}) - export const serializePrices = (prices: PricesMap) => { return Object.entries(prices).reduce>((acc, [key, price]) => { acc[key as FuturesMarketAsset] = price.toString() From 8324b8f6f5c78250ffd098ba4c73c9911c84c8e0 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Mon, 10 Jul 2023 22:24:45 +0100 Subject: [PATCH 05/43] More futures state refactoring --- .../app/src/__tests__/pages/market.test.tsx | 2 +- packages/app/src/constants/futures.ts | 2 +- packages/app/src/constants/routes.ts | 2 +- .../app/src/hooks/useAverageEntryPrice.ts | 2 +- packages/app/src/pages/market.tsx | 14 +- .../FuturesPositionsTable.tsx | 2 +- .../ClosePositionModal/ClosePositionModal.tsx | 9 +- .../ClosePositionPriceInput.tsx | 4 +- .../ClosePositionSizeInput.tsx | 4 +- .../futures/CreatePerpsV3AccountModal.tsx | 12 +- .../CrossMarginOnboard/CrossMarginOnboard.tsx | 10 +- .../EditPositionMarginInput.tsx | 6 +- .../EditPositionMarginModal.tsx | 18 +- .../EditPositionSizeInput.tsx | 6 +- .../EditPositionSizeModal.tsx | 10 +- .../EditStopLossAndTakeProfitModal.tsx | 10 +- .../FeeInfoBox/ClosePositionFeeInfo.tsx | 4 +- .../FeeInfoBox/EditPositionFeeInfo.tsx | 8 +- .../futures/FeeInfoBox/TradePanelFeeInfo.tsx | 2 +- .../futures/FeeInfoBox/TradeTotalFeesRow.tsx | 6 +- .../app/src/sections/futures/FundingChart.tsx | 4 +- .../src/sections/futures/LeverageInput.tsx | 6 +- .../app/src/sections/futures/MarginInput.tsx | 10 +- .../src/sections/futures/MarketInfoBox.tsx | 3 +- .../UserTabs/ConditionalOrdersTab.tsx | 9 +- .../MobileTrade/UserTabs/OrdersTab.tsx | 8 +- .../MobileTrade/UserTabs/TradesTab.tsx | 4 +- .../MobileTrade/UserTabs/TransfersTab.tsx | 2 +- .../futures/MobileTrade/UserTabs/UserTabs.tsx | 2 +- .../drawers/ConditionalOrderDrawer.tsx | 2 +- .../MobileTrade/drawers/OrderDrawer.tsx | 2 +- .../futures/OrderSizing/OrderSizeSlider.tsx | 10 +- .../futures/OrderSizing/OrderSizing.tsx | 6 +- .../src/sections/futures/PositionChart.tsx | 6 +- .../sections/futures/Trade/ManagePosition.tsx | 22 +- .../futures/Trade/OrderTypeSelector.tsx | 2 +- .../src/sections/futures/Trade/SLTPInputs.tsx | 7 +- .../sections/futures/Trade/TradeBalance.tsx | 5 +- .../src/sections/futures/Trade/TradePanel.tsx | 7 +- .../futures/Trade/TradePanelPriceInput.tsx | 10 +- .../DelayedOrderConfirmationModal.tsx | 3 +- .../TradeConfirmationModal.tsx | 14 +- .../TradeConfirmationModalCrossMargin.tsx | 11 +- .../ManageKeeperBalanceModal.tsx | 8 +- .../TradeSmartMargin/SmartMarginInfoBox.tsx | 4 +- .../TradeSmartMargin/WithdrawSmartMargin.tsx | 8 +- .../app/src/sections/futures/Transfers.tsx | 2 +- .../UserInfo/ConditionalOrdersTable.tsx | 9 +- .../UserInfo/OpenDelayedOrdersTable.tsx | 2 +- .../futures/UserInfo/PositionsTable.tsx | 1 + .../sections/futures/UserInfo/UserInfo.tsx | 8 +- .../Header/MobileUserMenu/MobileUserMenu.tsx | 3 +- packages/app/src/state/app/helpers.ts | 17 +- packages/app/src/state/app/types.ts | 3 +- packages/app/src/state/futures/actions.ts | 1392 +--------------- .../futures/{shared.ts => common}/types.ts | 61 + .../src/state/futures/crossMargin/actions.ts | 138 +- .../src/state/futures/crossMargin/reducer.ts | 161 +- .../state/futures/crossMargin/selectors.ts | 26 +- .../src/state/futures/crossMargin/types.ts | 100 +- packages/app/src/state/futures/hooks.ts | 39 +- packages/app/src/state/futures/reducer.ts | 597 +------ packages/app/src/state/futures/selectors.ts | 708 +-------- .../src/state/futures/smartMargin/actions.ts | 1394 +++++++++++++++++ .../src/state/futures/smartMargin/reducer.ts | 564 +++++++ .../state/futures/smartMargin/selectors.ts | 1148 ++++++++++++++ .../{smartMargin.ts => smartMargin}/types.ts | 45 +- packages/app/src/state/futures/types.ts | 183 +-- packages/app/src/state/store.ts | 4 +- packages/app/src/utils/futures.ts | 11 +- .../app/testing/unit/mocks/data/futures.ts | 13 +- packages/app/tsconfig.json | 2 +- packages/sdk/src/constants/futures.ts | 1 - packages/sdk/src/services/futures.ts | 2 - packages/sdk/src/services/perpsV3.ts | 20 +- 75 files changed, 3663 insertions(+), 3299 deletions(-) rename packages/app/src/state/futures/{shared.ts => common}/types.ts (50%) create mode 100644 packages/app/src/state/futures/smartMargin/actions.ts create mode 100644 packages/app/src/state/futures/smartMargin/reducer.ts create mode 100644 packages/app/src/state/futures/smartMargin/selectors.ts rename packages/app/src/state/futures/{smartMargin.ts => smartMargin}/types.ts (83%) diff --git a/packages/app/src/__tests__/pages/market.test.tsx b/packages/app/src/__tests__/pages/market.test.tsx index e45e820989..b4290d3f51 100644 --- a/packages/app/src/__tests__/pages/market.test.tsx +++ b/packages/app/src/__tests__/pages/market.test.tsx @@ -4,6 +4,7 @@ import { fireEvent, render, waitFor } from '@testing-library/react' import { ReactNode } from 'react' import { fetchMarkets } from 'state/futures/actions' +import { selectTradePreview } from 'state/futures/smartMargin/selectors' import { mockResizeObserver } from '../../../testing/unit/mocks/app' import { PRELOADED_STATE } from '../../../testing/unit/mocks/data/app' @@ -17,7 +18,6 @@ import mockConnector from '../../../testing/unit/mocks/mockConnector' import MockProviders from '../../../testing/unit/mocks/MockProviders' import { mockReactQuery } from '../../../testing/unit/mocks/queries' import Market from '../../pages/market' -import { selectTradePreview } from '../../state/futures/selectors' import sdk from '../../state/sdk' import { setupStore } from '../../state/store' diff --git a/packages/app/src/constants/futures.ts b/packages/app/src/constants/futures.ts index 62d3cd72ef..e3f3f6cf27 100644 --- a/packages/app/src/constants/futures.ts +++ b/packages/app/src/constants/futures.ts @@ -1,6 +1,6 @@ import { FuturesMarginType } from '@kwenta/sdk/types' export const SUPPORTED_PERPS_TYPES = - process.env.NODE_ENV !== 'production' + process.env.NODE_ENV === 'production' ? [FuturesMarginType.SMART_MARGIN] : [FuturesMarginType.SMART_MARGIN, FuturesMarginType.CROSS_MARGIN] diff --git a/packages/app/src/constants/routes.ts b/packages/app/src/constants/routes.ts index 4b741c05fa..5858d3e27b 100644 --- a/packages/app/src/constants/routes.ts +++ b/packages/app/src/constants/routes.ts @@ -1,6 +1,6 @@ import { FuturesMarketAsset } from '@kwenta/sdk/types' -import { AppFuturesMarginType } from 'state/futures/types' +import { AppFuturesMarginType } from 'state/futures/common/types' import { EXTERNAL_LINKS } from './links' diff --git a/packages/app/src/hooks/useAverageEntryPrice.ts b/packages/app/src/hooks/useAverageEntryPrice.ts index 7741825418..bd6666a99c 100644 --- a/packages/app/src/hooks/useAverageEntryPrice.ts +++ b/packages/app/src/hooks/useAverageEntryPrice.ts @@ -1,7 +1,7 @@ import { FuturesPositionHistory, PositionSide } from '@kwenta/sdk/types' import { useMemo } from 'react' -import { selectTradePreview } from 'state/futures/selectors' +import { selectTradePreview } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' // Used to calculate the new average entry price of a modified position diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index 6c5941ee25..560bc81793 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -29,16 +29,16 @@ import AppLayout from 'sections/shared/Layout/AppLayout' import { setOpenModal } from 'state/app/reducer' import { selectShowModal, selectShowPositionModal } from 'state/app/selectors' import { clearTradeInputs } from 'state/futures/actions' +import { AppFuturesMarginType } from 'state/futures/common/types' import { usePollMarketFuturesData } from 'state/futures/hooks' -import { setFuturesAccountType, setMarketAsset } from 'state/futures/reducer' +import { setFuturesAccountType } from 'state/futures/reducer' +import { selectFuturesType, selectMarketAsset } from 'state/futures/selectors' +import { setMarketAsset } from 'state/futures/smartMargin/reducer' import { - selectSmartMarginAccountQueryStatus, - selectSmartMarginAccount, - selectFuturesType, - selectMarketAsset, selectShowSmartMarginOnboard, -} from 'state/futures/selectors' -import { AppFuturesMarginType } from 'state/futures/types' + selectSmartMarginAccount, + selectSmartMarginAccountQueryStatus, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { PageContent } from 'styles/common' diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx index 6b14d8e376..a31827001e 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx @@ -18,13 +18,13 @@ import ROUTES from 'constants/routes' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' +import { AppFuturesMarginType } from 'state/futures/common/types' import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, selectMarkets, selectPositionHistory, } from 'state/futures/selectors' -import { AppFuturesMarginType } from 'state/futures/types' import { useAppSelector } from 'state/hooks' import { getSynthDescription } from 'utils/futures' diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx index 5086c6523b..a061dfdabb 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx @@ -25,22 +25,21 @@ import { previewErrorI18n } from 'queries/futures/constants' import { setShowPositionModal } from 'state/app/reducer' import { selectTransaction } from 'state/app/selectors' import { submitCrossMarginReducePositionOrder } from 'state/futures/crossMargin/actions' +import { selectFuturesType, selectSubmittingFuturesTx } from 'state/futures/selectors' import { editClosePositionPrice, editClosePositionSizeDelta, submitSmartMarginReducePositionOrder, -} from 'state/futures/actions' -import { setClosePositionOrderType } from 'state/futures/reducer' +} from 'state/futures/smartMargin/actions' +import { setClosePositionOrderType } from 'state/futures/smartMargin/reducer' import { selectClosePositionOrderInputs, selectClosePositionPreview, selectEditPositionModalInfo, - selectFuturesType, selectIsFetchingTradePreview, selectKeeperDepositExceedsBal, - selectSubmittingFuturesTx, selectTradePreviewError, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import ClosePositionFeeInfo from '../FeeInfoBox/ClosePositionFeeInfo' diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionPriceInput.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionPriceInput.tsx index d87ebfb1ba..840bb60383 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionPriceInput.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionPriceInput.tsx @@ -3,11 +3,11 @@ import { wei } from '@synthetixio/wei' import { ChangeEvent, useCallback } from 'react' import { selectShowPositionModal } from 'state/app/selectors' -import { editClosePositionPrice } from 'state/futures/actions' +import { editClosePositionPrice } from 'state/futures/smartMargin/actions' import { selectClosePositionOrderInputs, selectEditPositionModalInfo, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import OrderPriceInput from '../OrderPriceInput' diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx index 07b4039c41..9c4cc760f0 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx @@ -9,11 +9,11 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivRow } from 'components/layout/flex' import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' -import { editClosePositionSizeDelta } from 'state/futures/actions' +import { editClosePositionSizeDelta } from 'state/futures/smartMargin/actions' import { selectClosePositionOrderInputs, selectEditPositionModalInfo, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type OrderSizingProps = { diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 032bf166c1..62149960a9 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -10,16 +10,16 @@ import Loader from 'components/Loader' import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' import { - selectPerpsV3Account, + selectCrossMarginAccount, selectCrossMarginSupportedNetwork, } from 'state/futures/crossMargin/selectors' -import { approveCrossMargin, createSmartMarginAccount } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' +import { approveSmartMargin, createSmartMarginAccount } from 'state/futures/smartMargin/actions' import { selectSmartMarginAccountQueryStatus, selectSmartMarginDepositApproved, - selectSubmittingFuturesTx, selectTradePreview, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' @@ -33,7 +33,7 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { const { t } = useTranslation() const dispatch = useAppDispatch() const crossMarginAvailable = useAppSelector(selectCrossMarginSupportedNetwork) - const perpsV3Account = useAppSelector(selectPerpsV3Account) + const perpsV3Account = useAppSelector(selectCrossMarginAccount) const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) const depositApproved = useAppSelector(selectSmartMarginDepositApproved) const txProcessing = useAppSelector(selectSubmittingFuturesTx) @@ -54,7 +54,7 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { }, [dispatch]) const onClickApprove = useCallback(async () => { - dispatch(approveCrossMargin()) + dispatch(approveSmartMargin()) }, [dispatch]) const renderProgress = (step: number, complete?: boolean) => { diff --git a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx b/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx index 196d40238b..283eb32c25 100644 --- a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx +++ b/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx @@ -9,15 +9,15 @@ import ErrorView from 'components/ErrorView' import Loader from 'components/Loader' import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' -import { approveCrossMargin, createSmartMarginAccount } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' +import { approveSmartMargin, createSmartMarginAccount } from 'state/futures/smartMargin/actions' import { + selectSmartMarginAccount, selectSmartMarginAccountQueryStatus, selectSmartMarginDepositApproved, - selectSmartMarginAccount, selectSmartMarginSupportedNetwork, - selectSubmittingFuturesTx, selectTradePreview, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' @@ -52,7 +52,7 @@ export default function CrossMarginOnboard({ isOpen }: Props) { }, [dispatch]) const onClickApprove = useCallback(async () => { - dispatch(approveCrossMargin()) + dispatch(approveSmartMargin()) }, [dispatch]) const renderProgress = (step: number, complete?: boolean) => { diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx index 2bf087784a..24aa1d6b9c 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginInput.tsx @@ -10,8 +10,8 @@ import { getStep } from 'components/Slider/Slider' import StyledSlider from 'components/Slider/StyledSlider' import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' -import { editCrossMarginPositionMargin } from 'state/futures/actions' -import { selectSmartMarginEditPosInputs } from 'state/futures/selectors' +import { editSmartMarginPositionMargin } from 'state/futures/smartMargin/actions' +import { selectSmartMarginEditPosInputs } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type OrderSizingProps = { @@ -31,7 +31,7 @@ const EditPositionMarginInput: React.FC = memo( (value: string) => { if (positionModal?.marketKey) { dispatch( - editCrossMarginPositionMargin( + editSmartMarginPositionMargin( positionModal.marketKey, type === 'deposit' || !value ? value : '-' + value ) diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx index 5cb41e680c..cacf107c1a 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx @@ -17,21 +17,21 @@ import Spacer from 'components/Spacer' import { Body } from 'components/Text' import { setShowPositionModal } from 'state/app/reducer' import { selectShowPositionModal, selectTransaction } from 'state/app/selectors' +import { clearTradeInputs } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' import { - approveCrossMargin, - clearTradeInputs, - editCrossMarginPositionMargin, + approveSmartMargin, + editSmartMarginPositionMargin, submitSmartMarginAdjustMargin, -} from 'state/futures/actions' +} from 'state/futures/smartMargin/actions' import { selectEditMarginAllowanceValid, - selectSmartMarginEditPosInputs, selectEditPositionModalInfo, selectEditPositionPreview, selectIdleMargin, selectIsFetchingTradePreview, - selectSubmittingFuturesTx, -} from 'state/futures/selectors' + selectSmartMarginEditPosInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import EditPositionMarginInput from './EditPositionMarginInput' @@ -118,13 +118,13 @@ export default function EditPositionMarginModal() { const onClose = () => { if (modal?.marketKey) { - dispatch(editCrossMarginPositionMargin(modal.marketKey, '')) + dispatch(editSmartMarginPositionMargin(modal.marketKey, '')) } dispatch(setShowPositionModal(null)) } const handleApproveSmartMargin = useCallback(async () => { - dispatch(approveCrossMargin()) + dispatch(approveSmartMargin()) }, [dispatch]) const depositButtonText = allowanceValid diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx index 97bd082c83..32a7bbadf7 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx @@ -13,11 +13,11 @@ import { getStep } from 'components/Slider/Slider' import StyledSlider from 'components/Slider/StyledSlider' import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' -import { editCrossMarginPositionSize } from 'state/futures/actions' +import { editCrossMarginPositionSize } from 'state/futures/smartMargin/actions' import { - selectSmartMarginEditPosInputs, selectEditPositionModalInfo, -} from 'state/futures/selectors' + selectSmartMarginEditPosInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type OrderSizingProps = { diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx index cb5c547ab2..989994f273 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx @@ -16,18 +16,18 @@ import Spacer from 'components/Spacer' import { Body } from 'components/Text' import { setShowPositionModal } from 'state/app/reducer' import { selectTransaction } from 'state/app/selectors' +import { clearTradeInputs } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' import { - clearTradeInputs, editCrossMarginPositionSize, submitSmartMarginAdjustPositionSize, -} from 'state/futures/actions' +} from 'state/futures/smartMargin/actions' import { - selectSmartMarginEditPosInputs, selectEditPositionModalInfo, selectEditPositionPreview, selectIsFetchingTradePreview, - selectSubmittingFuturesTx, -} from 'state/futures/selectors' + selectSmartMarginEditPosInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import EditPositionFeeInfo from '../FeeInfoBox/EditPositionFeeInfo' diff --git a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx index 3314574134..1e33818324 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx @@ -15,20 +15,20 @@ import Spacer from 'components/Spacer' import { NO_VALUE } from 'constants/placeholder' import { setShowPositionModal } from 'state/app/reducer' import { selectAckedOrdersWarning, selectTransaction } from 'state/app/selectors' +import { clearTradeInputs } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' import { calculateKeeperDeposit, - clearTradeInputs, updateStopLossAndTakeProfit, -} from 'state/futures/actions' -import { setSLTPModalStopLoss, setSLTPModalTakeProfit } from 'state/futures/reducer' +} from 'state/futures/smartMargin/actions' +import { setSLTPModalStopLoss, setSLTPModalTakeProfit } from 'state/futures/smartMargin/reducer' import { selectAllSLTPOrders, selectEditPositionModalInfo, selectKeeperDepositExceedsBal, selectSlTpModalInputs, selectSmartMarginKeeperDeposit, - selectSubmittingFuturesTx, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { KeeperDepositRow } from '../FeeInfoBox/FeesRow' diff --git a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx index bc02b42dfa..2481533300 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx @@ -4,9 +4,9 @@ import { memo } from 'react' import { selectClosePositionOrderInputs, selectClosePositionPreview, - selectSmartMarginKeeperDeposit, selectEditPositionModalInfo, -} from 'state/futures/selectors' + selectSmartMarginKeeperDeposit, +} from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import FeesRow from './FeesRow' diff --git a/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx b/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx index 447a417591..3fbde1746c 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx @@ -2,11 +2,11 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' import { memo } from 'react' import { - selectSmartMarginKeeperDeposit, selectEditPositionModalInfo, selectEditPositionPreview, - selectOrderType, -} from 'state/futures/selectors' + selectSmartMarginKeeperDeposit, + selectSmartMarginOrderType, +} from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import FeesRow from './FeesRow' @@ -15,7 +15,7 @@ const EditPositionFeeInfo = memo(() => { const tradePreview = useAppSelector(selectEditPositionPreview) const { market } = useAppSelector(selectEditPositionModalInfo) const keeperEthDeposit = useAppSelector(selectSmartMarginKeeperDeposit) - const orderType = useAppSelector(selectOrderType) + const orderType = useAppSelector(selectSmartMarginOrderType) return ( = ({ display = true }) => { const theme = useTheme() const marketAsset = useAppSelector(selectMarketAsset) - const historicalFundingRates = useAppSelector(({ futures }) => futures.historicalFundingRates) + const historicalFundingRates = useAppSelector( + ({ smartMargin }) => smartMargin.historicalFundingRates + ) usePollAction('fetchFundingRatesHistory', () => fetchFundingRatesHistory(marketAsset), { dependencies: [marketAsset], diff --git a/packages/app/src/sections/futures/LeverageInput.tsx b/packages/app/src/sections/futures/LeverageInput.tsx index f9c493ff31..7b5f269158 100644 --- a/packages/app/src/sections/futures/LeverageInput.tsx +++ b/packages/app/src/sections/futures/LeverageInput.tsx @@ -14,16 +14,16 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivCol, FlexDivRow } from 'components/layout/flex' import { DEFAULT_FIAT_DECIMALS } from 'constants/defaults' import { editTradeSizeInput } from 'state/futures/actions' -import { setLeverageInput } from 'state/futures/reducer' import { selectLeverageInput, selectMarketIndexPrice, selectMaxLeverage, selectPosition, selectFuturesType, - selectSmartMarginMarginDelta, selectTradeSizeInputsDisabled, } from 'state/futures/selectors' +import { setSmartMarginLeverageInput } from 'state/futures/smartMargin/reducer' +import { selectSmartMarginMarginDelta } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import LeverageSlider from './LeverageSlider' @@ -71,7 +71,7 @@ const LeverageInput: FC = memo(() => { : wei(Number(newLeverage)).mul(remainingMargin).div(marketPrice).toString() const floored = floorNumber(Number(newTradeSize), 4) dispatch(editTradeSizeInput(String(floored), 'native')) - dispatch(setLeverageInput(newLeverage)) + dispatch(setSmartMarginLeverageInput(newLeverage)) }, [marketPrice, dispatch, availableMargin] ) diff --git a/packages/app/src/sections/futures/MarginInput.tsx b/packages/app/src/sections/futures/MarginInput.tsx index 56815c1b9e..e7c87601ab 100644 --- a/packages/app/src/sections/futures/MarginInput.tsx +++ b/packages/app/src/sections/futures/MarginInput.tsx @@ -9,13 +9,9 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivRow } from 'components/layout/flex' import SelectorButtons from 'components/SelectorButtons' import { Body } from 'components/Text' -import { editCrossMarginTradeMarginDelta } from 'state/futures/actions' -import { - selectSelectedInputDenomination, - selectMarginDeltaInputValue, - selectIdleMargin, - selectPosition, -} from 'state/futures/selectors' +import { selectSelectedInputDenomination, selectPosition } from 'state/futures/selectors' +import { editCrossMarginTradeMarginDelta } from 'state/futures/smartMargin/actions' +import { selectIdleMargin, selectMarginDeltaInputValue } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' const PERCENT_OPTIONS = ['10%', '25%', '50%', '100%'] diff --git a/packages/app/src/sections/futures/MarketInfoBox.tsx b/packages/app/src/sections/futures/MarketInfoBox.tsx index 7219773884..a188f006c9 100644 --- a/packages/app/src/sections/futures/MarketInfoBox.tsx +++ b/packages/app/src/sections/futures/MarketInfoBox.tsx @@ -9,9 +9,8 @@ import { selectBuyingPower, selectMarginUsage, selectMarketSuspended, - selectPreviewMarginChange, - selectTradePreview, } from 'state/futures/selectors' +import { selectPreviewMarginChange, selectTradePreview } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' const AvailableMarginRow = memo(() => { diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx index 72168f84f6..a126394309 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx @@ -13,12 +13,9 @@ import { Body } from 'components/Text' import { NO_VALUE } from 'constants/placeholder' import PositionType from 'sections/futures/PositionType' import ConditionalOrdersWarning from 'sections/futures/UserInfo/ConditionalOrdersWarning' -import { cancelConditionalOrder } from 'state/futures/actions' -import { - selectAllConditionalOrders, - selectCancellingConditionalOrder, - selectMarketAsset, -} from 'state/futures/selectors' +import { selectAllConditionalOrders, selectMarketAsset } from 'state/futures/selectors' +import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' +import { selectCancellingConditionalOrder } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' const ConditionalOrdersTab: React.FC = () => { diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx index 29276ba79e..427ea428fd 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx @@ -15,12 +15,8 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' -import { - selectOpenDelayedOrders, - selectMarketAsset, - selectMarkets, - selectIsExecutingOrder, -} from 'state/futures/selectors' +import { selectMarketAsset, selectMarkets, selectIsExecutingOrder } from 'state/futures/selectors' +import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type CountdownTimers = Record< diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx index 2dde6ae350..d2f04ec6d8 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx @@ -12,13 +12,13 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import TimeDisplay from 'sections/futures/Trades/TimeDisplay' import { TradeStatus } from 'sections/futures/types' -import { fetchAllTradesForAccount } from 'state/futures/actions' import { selectAllTradesForAccountType, selectFuturesType, selectMarketAsset, selectQueryStatuses, } from 'state/futures/selectors' +import { fetchAllV2TradesForAccount } from 'state/futures/smartMargin/actions' import { useAppSelector, useFetchAction } from 'state/hooks' import { FetchStatus } from 'state/types' import { selectWallet } from 'state/wallet/selectors' @@ -40,7 +40,7 @@ const TradesTab = () => { const [selectedTrade, setSelectedTrade] = React.useState() - useFetchAction(fetchAllTradesForAccount, { + useFetchAction(fetchAllV2TradesForAccount, { dependencies: [walletAddress, accountType, marketAsset], disabled: !walletAddress, }) diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx index 946a7e50c4..a5c12a279e 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx @@ -11,10 +11,10 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import { selectFuturesType, - selectIdleMarginTransfers, selectMarketMarginTransfers, selectQueryStatuses, } from 'state/futures/selectors' +import { selectIdleMarginTransfers } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { timePresentation } from 'utils/formatters/date' diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx index b67a03dc10..a7f30fd238 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx @@ -5,8 +5,8 @@ import TabButton from 'components/Button/TabButton' import { selectActiveSmartPositionsCount, selectAllConditionalOrders, - selectOpenDelayedOrders, } from 'state/futures/selectors' +import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import ConditionalOrdersTab from './ConditionalOrdersTab' diff --git a/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx b/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx index fb31808bc6..fd23801b6c 100644 --- a/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx +++ b/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' import Button from 'components/Button' -import { cancelConditionalOrder } from 'state/futures/actions' +import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' import { useAppDispatch } from 'state/hooks' import BaseDrawer from './BaseDrawer' diff --git a/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx b/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx index e5335e6d0b..3590a685b3 100644 --- a/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx +++ b/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx @@ -6,7 +6,7 @@ import styled, { css } from 'styled-components' import Button from 'components/Button' import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' -import { DelayedOrderWithDetails } from 'state/futures/types' +import { DelayedOrderWithDetails } from 'state/futures/common/types' import { useAppDispatch } from 'state/hooks' import BaseDrawer from './BaseDrawer' diff --git a/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx b/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx index 4ee850da22..e70ec68648 100644 --- a/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx +++ b/packages/app/src/sections/futures/OrderSizing/OrderSizeSlider.tsx @@ -6,16 +6,18 @@ import styled from 'styled-components' import ErrorView from 'components/ErrorView' import { FlexDivRow } from 'components/layout/flex' import StyledSlider from 'components/Slider/StyledSlider' -import { editCrossMarginTradeSize } from 'state/futures/actions' import { selectAboveMaxLeverage, - selectSmartMarginMarginDelta, selectLeverageSide, selectMaxLeverage, selectMaxUsdSizeInput, selectPosition, - selectSmartMarginTradeInputs, } from 'state/futures/selectors' +import { editSmartMarginTradeSize } from 'state/futures/smartMargin/actions' +import { + selectSmartMarginMarginDelta, + selectSmartMarginTradeInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' export default function OrderSizeSlider() { @@ -40,7 +42,7 @@ export default function OrderSizeSlider() { const usdValue = Number(usdAmount).toFixed(0) setUsdValue(usdValue) if (commit) { - dispatch(editCrossMarginTradeSize(usdValue, 'usd')) + dispatch(editSmartMarginTradeSize(usdValue, 'usd')) } }, [maxUsdInputAmount, dispatch] diff --git a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx index fa09be5e73..452de00cc8 100644 --- a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx +++ b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx @@ -12,14 +12,16 @@ import { editTradeSizeInput } from 'state/futures/actions' import { selectMarketIndexPrice, selectPosition, - selectSmartMarginTradeInputs, - selectSmartMarginOrderPrice, selectSelectedInputDenomination, selectMaxUsdSizeInput, selectLeverageSide, selectAvailableOi, selectTradeSizeInputsDisabled, } from 'state/futures/selectors' +import { + selectSmartMarginOrderPrice, + selectSmartMarginTradeInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { DenominationToggle } from './DenominationToggle' diff --git a/packages/app/src/sections/futures/PositionChart.tsx b/packages/app/src/sections/futures/PositionChart.tsx index 169c8fa07b..4a74e60723 100644 --- a/packages/app/src/sections/futures/PositionChart.tsx +++ b/packages/app/src/sections/futures/PositionChart.tsx @@ -5,12 +5,14 @@ import styled, { css } from 'styled-components' import { FlexDiv } from 'components/layout/flex' import TVChart from 'components/TVChart' import { - selectConditionalOrdersForMarket, selectPosition, selectPositionPreviewData, selectSelectedMarketPositionHistory, - selectTradePreview, } from 'state/futures/selectors' +import { + selectConditionalOrdersForMarket, + selectTradePreview, +} from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' type PositionChartProps = { diff --git a/packages/app/src/sections/futures/Trade/ManagePosition.tsx b/packages/app/src/sections/futures/Trade/ManagePosition.tsx index b86ccfceea..3813adcb0a 100644 --- a/packages/app/src/sections/futures/Trade/ManagePosition.tsx +++ b/packages/app/src/sections/futures/Trade/ManagePosition.tsx @@ -18,21 +18,23 @@ import { selectMarketIndexPrice, selectPlaceOrderTranslationKey, selectMaxLeverage, - selectTradePreviewError, - selectTradePreview, - selectTradePreviewStatus, - selectSmartMarginTradeInputs, - selectCrossMarginLeverage, - selectSmartMarginOrderPrice, - selectOrderType, selectFuturesType, selectLeverageSide, selectPendingDelayedOrder, selectMaxUsdSizeInput, - selectSmartMarginAccount, - selectPosition, selectMarketPriceInfo, + selectPosition, } from 'state/futures/selectors' +import { + selectOrderType, + selectSmartMarginAccount, + selectSmartMarginLeverage, + selectSmartMarginOrderPrice, + selectSmartMarginTradeInputs, + selectTradePreview, + selectTradePreviewError, + selectTradePreviewStatus, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { orderPriceInvalidLabel } from 'utils/futures' @@ -46,7 +48,7 @@ const ManagePosition: React.FC = () => { const selectedAccountType = useAppSelector(selectFuturesType) const previewTrade = useAppSelector(selectTradePreview) const previewError = useAppSelector(selectTradePreviewError) - const leverage = useAppSelector(selectCrossMarginLeverage) + const leverage = useAppSelector(selectSmartMarginLeverage) const orderType = useAppSelector(selectOrderType) const openOrder = useAppSelector(selectPendingDelayedOrder) const leverageSide = useAppSelector(selectLeverageSide) diff --git a/packages/app/src/sections/futures/Trade/OrderTypeSelector.tsx b/packages/app/src/sections/futures/Trade/OrderTypeSelector.tsx index 628ba220e9..9c262cb27b 100644 --- a/packages/app/src/sections/futures/Trade/OrderTypeSelector.tsx +++ b/packages/app/src/sections/futures/Trade/OrderTypeSelector.tsx @@ -3,7 +3,7 @@ import { SmartMarginOrderType } from '@kwenta/sdk/types' import { OrderNameByType } from '@kwenta/sdk/utils' import SegmentedControl from 'components/SegmentedControl' -import { editTradeOrderPrice } from 'state/futures/actions' +import { editTradeOrderPrice } from 'state/futures/smartMargin/actions' import { useAppDispatch } from 'state/hooks' type Props = { diff --git a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx index 804f9043a4..7e3a4e35c7 100644 --- a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx +++ b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx @@ -12,13 +12,16 @@ import { StyledCaretDownIcon } from 'components/Select' import SelectorButtons from 'components/SelectorButtons' import Spacer from 'components/Spacer' import { selectAckedOrdersWarning } from 'state/app/selectors' -import { setSmartMarginTradeStopLoss, setSmartMarginTradeTakeProfit } from 'state/futures/reducer' import { selectLeverageInput, selectLeverageSide, selectMarketIndexPrice, - selectSlTpTradeInputs, } from 'state/futures/selectors' +import { + setSmartMarginTradeStopLoss, + setSmartMarginTradeTakeProfit, +} from 'state/futures/smartMargin/reducer' +import { selectSlTpTradeInputs } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import OrderAcknowledgement from './OrderAcknowledgement' diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalance.tsx index 77d70d2d93..38da3dd56a 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalance.tsx @@ -16,13 +16,12 @@ import useWindowSize from 'hooks/useWindowSize' import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' import { selectSusdBalance } from 'state/balances/selectors' +import { selectAvailableMargin, selectFuturesType } from 'state/futures/selectors' import { - selectAvailableMargin, - selectFuturesType, selectIdleMargin, selectLockedMarginInMarkets, selectWithdrawableSmartMargin, -} from 'state/futures/selectors' +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PencilButton from '../../../components/Button/PencilButton' diff --git a/packages/app/src/sections/futures/Trade/TradePanel.tsx b/packages/app/src/sections/futures/Trade/TradePanel.tsx index 136aaa264b..5a59ac0f25 100644 --- a/packages/app/src/sections/futures/Trade/TradePanel.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanel.tsx @@ -5,9 +5,10 @@ import styled, { css } from 'styled-components' import Error from 'components/ErrorView' import Spacer from 'components/Spacer' import { selectAckedOrdersWarning } from 'state/app/selectors' -import { changeLeverageSide } from 'state/futures/actions' -import { setOrderType } from 'state/futures/reducer' -import { selectFuturesType, selectLeverageSide, selectOrderType } from 'state/futures/selectors' +import { selectFuturesType, selectLeverageSide } from 'state/futures/selectors' +import { changeLeverageSide } from 'state/futures/smartMargin/actions' +import { setOrderType } from 'state/futures/smartMargin/reducer' +import { selectOrderType } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { selectPricesConnectionError } from 'state/prices/selectors' diff --git a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx index 12daafcfa4..556d0cc847 100644 --- a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx @@ -1,12 +1,8 @@ import { ChangeEvent, useCallback } from 'react' -import { editTradeOrderPrice } from 'state/futures/actions' -import { - selectSmartMarginOrderPrice, - selectLeverageSide, - selectMarketIndexPrice, - selectOrderType, -} from 'state/futures/selectors' +import { selectLeverageSide, selectMarketIndexPrice } from 'state/futures/selectors' +import { editTradeOrderPrice } from 'state/futures/smartMargin/actions' +import { selectOrderType, selectSmartMarginOrderPrice } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import OrderPriceInput from '../OrderPriceInput' diff --git a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx index 44d2f4c251..5b3feafb62 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx @@ -30,10 +30,9 @@ import { selectMarketInfo, selectModifyPositionError, selectNextPriceDisclaimer, - selectOrderType, selectPosition, - selectTradePreview, } from 'state/futures/selectors' +import { selectOrderType, selectTradePreview } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { getKnownError } from 'utils/formatters/error' diff --git a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx index f45cd8cc4c..1623f45015 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx @@ -21,19 +21,21 @@ import { ButtonLoader } from 'components/Loader' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { NO_VALUE } from 'constants/placeholder' -import { refetchTradePreview, submitSmartMarginOrder } from 'state/futures/actions' import { selectLeverageSide, selectMarketAsset, - selectSmartMarginOrderPrice, - selectOrderType, selectPosition, - selectTradePreview, selectLeverageInput, - selectSlTpTradeInputs, +} from 'state/futures/selectors' +import { refetchTradePreview, submitSmartMarginOrder } from 'state/futures/smartMargin/actions' +import { selectKeeperDepositExceedsBal, selectNewTradeHasSlTp, -} from 'state/futures/selectors' + selectOrderType, + selectSlTpTradeInputs, + selectSmartMarginOrderPrice, + selectTradePreview, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector, usePollAction } from 'state/hooks' import ConfirmSlippage from './ConfirmSlippage' diff --git a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin.tsx b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin.tsx index e9288faf26..2f86f6f028 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin.tsx @@ -2,15 +2,14 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' import { useCallback } from 'react' import { setOpenModal } from 'state/app/reducer' -import { approveCrossMargin } from 'state/futures/actions' +import { selectMarketInfo, selectSubmittingFuturesTx } from 'state/futures/selectors' +import { approveSmartMargin } from 'state/futures/smartMargin/actions' import { - selectSmartMarginKeeperDeposit, selectIsConditionalOrder, - selectMarketInfo, selectNewTradeHasSlTp, selectSmartMarginAllowanceValid, - selectSubmittingFuturesTx, -} from 'state/futures/selectors' + selectSmartMarginKeeperDeposit, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import TradeConfirmationModal from './TradeConfirmationModal' @@ -32,7 +31,7 @@ export default function TradeConfirmationModalCrossMargin() { }, [dispatch]) const handleApproveSmartMargin = useCallback(async () => { - dispatch(approveCrossMargin()) + dispatch(approveSmartMargin()) }, [dispatch]) return ( diff --git a/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx index c3ea7c2095..61a3207e86 100644 --- a/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx @@ -14,12 +14,12 @@ import SegmentedControl from 'components/SegmentedControl' import Spacer from 'components/Spacer' import Connector from 'containers/Connector' import { setOpenModal } from 'state/app/reducer' -import { withdrawAccountKeeperBalance } from 'state/futures/actions' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' +import { withdrawAccountKeeperBalance } from 'state/futures/smartMargin/actions' import { - selectSmartMarginBalanceInfo, selectConditionalOrdersForMarket, - selectSubmittingFuturesTx, -} from 'state/futures/selectors' + selectSmartMarginBalanceInfo, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import logError from 'utils/logError' diff --git a/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx index acf41c2f76..4562556717 100644 --- a/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx @@ -6,9 +6,9 @@ import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' import { selectSusdBalance } from 'state/balances/selectors' import { - selectSmartMarginBalanceInfo, selectAvailableMarginInMarkets, -} from 'state/futures/selectors' + selectSmartMarginBalanceInfo, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PencilButton from '../../../components/Button/PencilButton' diff --git a/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx b/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx index bafa2504b8..0e35641039 100644 --- a/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/WithdrawSmartMargin.tsx @@ -11,11 +11,9 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivRowCentered } from 'components/layout/flex' import Loader from 'components/Loader' import { selectTransaction } from 'state/app/selectors' -import { withdrawSmartMargin } from 'state/futures/actions' -import { - selectIsSubmittingCrossTransfer, - selectWithdrawableSmartMargin, -} from 'state/futures/selectors' +import { selectIsSubmittingCrossTransfer } from 'state/futures/selectors' +import { withdrawSmartMargin } from 'state/futures/smartMargin/actions' +import { selectWithdrawableSmartMargin } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' type Props = { diff --git a/packages/app/src/sections/futures/Transfers.tsx b/packages/app/src/sections/futures/Transfers.tsx index 407bb8a1da..027ba304cb 100644 --- a/packages/app/src/sections/futures/Transfers.tsx +++ b/packages/app/src/sections/futures/Transfers.tsx @@ -12,10 +12,10 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import { selectFuturesType, - selectIdleMarginTransfers, selectMarketMarginTransfers, selectQueryStatuses, } from 'state/futures/selectors' +import { selectIdleMarginTransfers } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { ExternalLink } from 'styles/common' diff --git a/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx b/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx index 7ba052ab4e..cd7c8fdb9e 100644 --- a/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx @@ -14,12 +14,9 @@ import { CustomFontLabel } from 'components/Text/CustomFontLabel' import { NO_VALUE } from 'constants/placeholder' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' -import { cancelConditionalOrder } from 'state/futures/actions' -import { - selectCancellingConditionalOrder, - selectMarketAsset, - selectAllConditionalOrders, -} from 'state/futures/selectors' +import { selectMarketAsset, selectAllConditionalOrders } from 'state/futures/selectors' +import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' +import { selectCancellingConditionalOrder } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PositionType from '../PositionType' diff --git a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx index 98bdcf6762..93abb93d06 100644 --- a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx @@ -18,10 +18,10 @@ import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' import { selectIsCancellingOrder, selectIsExecutingOrder, - selectOpenDelayedOrders, selectMarketAsset, selectMarkets, } from 'state/futures/selectors' +import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PositionType from '../PositionType' diff --git a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx index 2060c86ebe..9230ff80c8 100644 --- a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx @@ -36,6 +36,7 @@ import media from 'styles/media' import PositionsTab from '../MobileTrade/UserTabs/PositionsTab' import ShareModal from '../ShareModal' + import EditPositionButton from './EditPositionButton' import TableMarketDetails from './TableMarketDetails' diff --git a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx index 2af69f8fee..be76e6a00a 100644 --- a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx +++ b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx @@ -13,16 +13,16 @@ import Spacer from 'components/Spacer' import { TabPanel } from 'components/Tab' import ROUTES from 'constants/routes' import useWindowSize from 'hooks/useWindowSize' -import { fetchAllTradesForAccount } from 'state/futures/actions' import { selectActiveSmartPositionsCount, selectActiveCrossMarginPositionsCount, selectFuturesType, selectMarketAsset, - selectOpenDelayedOrders, selectPosition, selectAllConditionalOrders, } from 'state/futures/selectors' +import { fetchAllV2TradesForAccount } from 'state/futures/smartMargin/actions' +import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppSelector, useFetchAction, useAppDispatch } from 'state/hooks' import { selectWallet } from 'state/wallet/selectors' @@ -61,7 +61,7 @@ const UserInfo: React.FC = memo(() => { const conditionalOrders = useAppSelector(selectAllConditionalOrders) const accountType = useAppSelector(selectFuturesType) - useFetchAction(fetchAllTradesForAccount, { + useFetchAction(fetchAllV2TradesForAccount, { dependencies: [walletAddress, accountType, position?.position?.size.toString()], disabled: !walletAddress, }) @@ -85,7 +85,7 @@ const UserInfo: React.FC = memo(() => { }, []) const refetchTrades = useCallback(() => { - dispatch(fetchAllTradesForAccount()) + dispatch(fetchAllV2TradesForAccount()) }, [dispatch]) useEffect(() => { diff --git a/packages/app/src/sections/shared/Layout/AppLayout/Header/MobileUserMenu/MobileUserMenu.tsx b/packages/app/src/sections/shared/Layout/AppLayout/Header/MobileUserMenu/MobileUserMenu.tsx index 59fc225242..94c1db8d60 100644 --- a/packages/app/src/sections/shared/Layout/AppLayout/Header/MobileUserMenu/MobileUserMenu.tsx +++ b/packages/app/src/sections/shared/Layout/AppLayout/Header/MobileUserMenu/MobileUserMenu.tsx @@ -10,7 +10,8 @@ import MenuIcon from 'assets/svg/app/menu.svg' import Button from 'components/Button' import { DEFAULT_FUTURES_MARGIN_TYPE } from 'constants/defaults' import ROUTES from 'constants/routes' -import { setLeverageSide, setTradePanelDrawerOpen } from 'state/futures/reducer' +import { setTradePanelDrawerOpen } from 'state/futures/reducer' +import { setLeverageSide } from 'state/futures/smartMargin/reducer' import { useAppDispatch } from 'state/hooks' import { FixedFooterMixin } from 'styles/common' diff --git a/packages/app/src/state/app/helpers.ts b/packages/app/src/state/app/helpers.ts index 6f156ee971..695da6ae89 100644 --- a/packages/app/src/state/app/helpers.ts +++ b/packages/app/src/state/app/helpers.ts @@ -1,5 +1,9 @@ -import { GasPrice } from '@kwenta/sdk/types' -import { BigNumber } from 'ethers' +import { GasPrice, TransactionStatus } from '@kwenta/sdk/types' +import { BigNumber, ethers } from 'ethers' + +import { AppDispatch } from 'state/store' + +import { updateTransactionHash, updateTransactionStatus } from './reducer' export const serializeGasPrice = (gasPrice: GasPrice): GasPrice => ({ baseFeePerGas: gasPrice.baseFeePerGas?.toString() ?? '0', @@ -14,3 +18,12 @@ export const unserializeGasPrice = (gasPrice: GasPrice): GasPrice => ({ maxFeePerGas: BigNumber.from(gasPrice.maxFeePerGas), gasPrice: BigNumber.from(gasPrice.gasPrice), }) + +export const monitorAndAwaitTransaction = async ( + dispatch: AppDispatch, + tx: ethers.providers.TransactionResponse +) => { + dispatch(updateTransactionHash(tx.hash)) + await tx.wait() + dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) +} diff --git a/packages/app/src/state/app/types.ts b/packages/app/src/state/app/types.ts index b0918fcf1e..de607aec96 100644 --- a/packages/app/src/state/app/types.ts +++ b/packages/app/src/state/app/types.ts @@ -1,5 +1,6 @@ import { TransactionStatus, FuturesMarketKey, KwentaStatus, GasPrice } from '@kwenta/sdk/types' -import { FuturesTransactionType } from 'state/futures/shared.ts/types' + +import { FuturesTransactionType } from 'state/futures/common/types' export type ModalType = | 'futures_close_position_confirm' diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index df2e81c09e..08d420d2b2 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -1,220 +1,57 @@ -import KwentaSDK from '@kwenta/sdk' import { - DEFAULT_PRICE_IMPACT_DELTA_PERCENT, - ORDER_KEEPER_ETH_DEPOSIT, - SL_TP_MAX_SIZE, - ZERO_ADDRESS, - ZERO_WEI, -} from '@kwenta/sdk/constants' -import { - FuturesMarket, - ConditionalOrder, FuturesPosition, FuturesPositionHistory, - FuturesPotentialTradeDetails, - FuturesTrade, - FuturesVolumes, - MarginTransfer, - PositionSide, - PotentialTradeStatus, - SmartMarginOrderInputs, - ConditionalOrderTypeEnum, - SLTPOrderInputs, - FuturesMarketKey, FuturesMarketAsset, NetworkId, TransactionStatus, FuturesMarginType, } from '@kwenta/sdk/types' -import { - calculateDesiredFillPrice, - getTradeStatusMessage, - serializePotentialTrade, - marketOverrides, - floorNumber, -} from '@kwenta/sdk/utils' import { createAsyncThunk } from '@reduxjs/toolkit' -import Wei, { wei } from '@synthetixio/wei' -import { ethers } from 'ethers' -import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' -import { - handleTransactionError, - setOpenModal, - setShowPositionModal, - setTransaction, - updateTransactionHash, - updateTransactionStatus, -} from 'state/app/reducer' -import { fetchBalances } from 'state/balances/actions' +import { monitorAndAwaitTransaction } from 'state/app/helpers' +import { handleTransactionError, setTransaction, updateTransactionHash } from 'state/app/reducer' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { fetchV3Markets } from 'state/futures/crossMargin/actions' +import { fetchMarketsV3, fetchPositionHistoryV3 } from 'state/futures/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' -import { AppDispatch, AppThunk, RootState } from 'state/store' +import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' -import { selectNetwork, selectWallet } from 'state/wallet/selectors' -import { computeDelayedOrderFee } from 'utils/costCalculations' -import { - formatDelayedOrders, - orderPriceInvalidLabel, - serializeCmBalanceInfo, - serializeDelayedOrders, - serializeConditionalOrders, - serializeFuturesVolumes, - serializeMarkets, - serializePositionHistory, - serializeTrades, -} from 'utils/futures' -import logError from 'utils/logError' +import { selectNetwork } from 'state/wallet/selectors' +import { serializePositionHistory } from 'utils/futures' import { refetchWithComparator } from 'utils/queries' +import { AppFuturesMarginType } from './common/types' +import { selectFuturesAccount, selectMarketInfo, selectPosition } from './selectors' +import { + editSmartMarginTradeSize, + fetchDailyVolumesV2, + fetchMarginTransfersV2, + fetchMarketsV2, + fetchPositionHistoryV2, + fetchSmartMarginOpenOrders, +} from './smartMargin/actions' import { - handlePreviewError, - setSmartMarginAccount, + setSmartMarginLeverageInput, setSmartMarginFees, setSmartMarginMarginDelta, - setSmartMarginOrderCancelling, - setSmartMarginOrderPrice, - setSmartMarginOrderPriceInvalidLabel, + clearSmartMarginTradePreviews, setSmartMarginTradeInputs, - setSmartMarginTradePreview, - setLeverageInput, - setLeverageSide, setSmartMarginEditPositionInputs, - incrementCrossPreviewCount, - setClosePositionSizeDelta, - setClosePositionPrice, - clearAllTradePreviews, - setKeeperDeposit, -} from './reducer' -import { - selectSmartMarginAccount, - selectSmartMarginMarginDelta, - selectSmartMarginOrderPrice, - selectFuturesAccount, - selectSmartMarginSupportedNetwork, - selectFuturesType, - selectIsConditionalOrder, - selectKeeperEthBalance, - selectLeverageSide, - selectMarketAsset, - selectMarketInfo, - selectMarketKey, - selectMarkets, - selectOrderType, - selectOrderFeeCap, - selectPosition, - selectSmartMarginTradeInputs, - selectIdleMargin, - selectSlTpTradeInputs, - selectSmartMarginEditPosInputs, - selectSmartMarginPreviewCount, - selectTradePreview, - selectClosePositionOrderInputs, - selectFuturesPositions, - selectEditPositionModalInfo, - selectOpenDelayedOrders, - selectSlTpModalInputs, - selectSmartMarginKeeperDeposit, - selectSkewAdjustedPrice, - selectEditPositionPreview, - selectClosePositionPreview, - selectMarketIndexPrice, -} from './selectors' -import { - AccountContext, - AppFuturesMarginType, - CancelDelayedOrderInputs, - SmartMarginBalanceInfo, - DebouncedPreviewParams, - DelayedOrderWithDetails, - ExecuteDelayedOrderInputs, - PreviewAction, - TradePreviewParams, -} from './types' - -export const fetchMarkets = createAsyncThunk< - { markets: FuturesMarket[]; networkId: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchMarkets', async (_, { getState, extra: { sdk } }) => { - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const networkId = selectNetwork(getState()) - - if (!supportedNetwork) return - try { - const markets = await sdk.futures.getMarkets() - // apply overrides - const overrideMarkets = markets.map((m) => { - return marketOverrides[m.marketKey] - ? { - ...m, - ...marketOverrides[m.marketKey], - } - : m - }) - - const serializedMarkets = serializeMarkets(overrideMarkets) - return { markets: serializedMarkets, networkId } - } catch (err) { - logError(err) - notifyError('Failed to fetch markets', err) - throw err - } -}) +} from './smartMargin/reducer' +import { selectSmartMarginSupportedNetwork } from './smartMargin/selectors' +import { CancelDelayedOrderInputs, ExecuteDelayedOrderInputs } from './types' -export const fetchSmartMarginBalanceInfo = createAsyncThunk< - { balanceInfo: SmartMarginBalanceInfo; account: string; network: NetworkId } | undefined, - void, - ThunkConfig ->( - 'futures/fetchSmartMarginBalanceInfo', - async (_, { getState, extra: { sdk }, rejectWithValue }) => { - const account = selectSmartMarginAccount(getState()) - const network = selectNetwork(getState()) - const wallet = selectWallet(getState()) - const crossMarginSupported = selectSmartMarginSupportedNetwork(getState()) - if (!account || !wallet || !crossMarginSupported) return - try { - const balanceInfo = await sdk.futures.getSmartMarginBalanceInfo(wallet, account) - return { balanceInfo: serializeCmBalanceInfo(balanceInfo), account, network } - } catch (err) { - logError(err) - notifyError('Failed to fetch cross-margin balance info', err) - rejectWithValue(err.message) - return undefined +export const fetchMarkets = createAsyncThunk( + 'futures/fetchMarkets', + async (_, { dispatch, getState }) => { + if (getState().futures.selectedType === FuturesMarginType.SMART_MARGIN) { + dispatch(fetchMarketsV2()) + } else { + dispatch(fetchMarketsV3()) } } ) -export const fetchSmartMarginPositions = createAsyncThunk< - { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchSmartMarginPositions', async (_, { getState, extra: { sdk } }) => { - const account = selectSmartMarginAccount(getState()) - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const markets = selectMarkets(getState()) - - if (!account || !supportedNetwork) return - try { - const positions = await sdk.futures.getFuturesPositions( - account, - markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.market })) - ) - const serializedPositions = positions.map( - (p) => serializeWeiObject(p) as FuturesPosition - ) - return { positions: serializedPositions, account, network } - } catch (err) { - logError(err) - notifyError('Failed to fetch smart-margin positions', err) - throw err - } -}) - export const refetchPosition = createAsyncThunk< { position: FuturesPosition @@ -252,118 +89,11 @@ export const refetchPosition = createAsyncThunk< return null }) -export const fetchSmartMarginAccount = createAsyncThunk< - { account: string; wallet: string; network: NetworkId } | undefined, - void, - ThunkConfig ->('futures/fetchSmartMarginAccount', async (_, { getState, extra: { sdk }, rejectWithValue }) => { - const wallet = selectWallet(getState()) - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - if (!wallet || !supportedNetwork) return undefined - const accounts = getState().futures.smartMargin.accounts - - // Already have an accoutn fetched and persisted for this address - if (accounts[network]?.[wallet]?.account) return - - try { - const accounts = await sdk.futures.getSmartMarginAccounts(wallet) - const account = accounts[0] - if (account) return { account, wallet, network } - return undefined - } catch (err) { - notifyError('Failed to fetch smart margin account', err) - rejectWithValue(err.message) - } -}) - -export const fetchDailyVolumes = createAsyncThunk, void, ThunkConfig>( +export const fetchDailyVolumes = createAsyncThunk( 'futures/fetchDailyVolumes', - async (_, { extra: { sdk } }) => { - const volumes = await sdk.futures.getDailyVolumes() - return serializeFuturesVolumes(volumes) - } -) - -export const fetchMarginTransfers = createAsyncThunk< - | { - marginTransfers: MarginTransfer[] - idleTransfers: MarginTransfer[] - context: AccountContext - } - | undefined, - void, - ThunkConfig ->('futures/fetchMarginTransfers', async (_, { getState, extra: { sdk } }) => { - const { wallet, futures } = getState() - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const cmAccount = selectSmartMarginAccount(getState()) - if (!wallet.walletAddress || !supportedNetwork) return - try { - const transfers = await sdk.futures.getIsolatedMarginTransfers(cmAccount) - const idleTransfers = await sdk.futures.getSmartMarginTransfers(cmAccount) - - return { - marginTransfers: transfers, - idleTransfers: idleTransfers, - context: { - wallet: wallet.walletAddress, - network: network, - type: futures.selectedType, - cmAccount, - }, - } - } catch (err) { - logError(err) - notifyError('Failed to fetch margin transfers', err) - throw err - } -}) - -export const fetchCombinedMarginTransfers = createAsyncThunk< - | { - smartMarginTransfers: MarginTransfer[] - idleTransfers: MarginTransfer[] - context: AccountContext - } - | undefined, - void, - ThunkConfig ->('futures/fetchCombinedMarginTransfers', async (_, { getState, extra: { sdk } }) => { - const { wallet, futures } = getState() - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const cmAccount = selectSmartMarginAccount(getState()) - if (!wallet.walletAddress || !supportedNetwork) return - try { - const smartMarginTransfers = cmAccount - ? await sdk.futures.getIsolatedMarginTransfers(cmAccount) - : [] - const idleTransfers = cmAccount ? await sdk.futures.getSmartMarginTransfers(cmAccount) : [] - - return { - smartMarginTransfers, - idleTransfers, - context: { - wallet: wallet.walletAddress, - network: network, - type: futures.selectedType, - cmAccount, - }, - } - } catch (err) { - logError(err) - notifyError('Failed to fetch combined margin transfers', err) - throw err - } -}) - -export const fetchSmartMarginAccountData = createAsyncThunk( - 'futures/fetchSmartMarginAccountData', async (_, { dispatch }) => { - dispatch(fetchSmartMarginPositions()) - dispatch(fetchSmartMarginBalanceInfo()) + // TODO: Fetch v3 daily volumes + dispatch(fetchDailyVolumesV2()) } ) @@ -371,435 +101,47 @@ export const fetchSharedFuturesData = createAsyncThunk( 'futures/fetchSharedFuturesData', async (_, { dispatch }) => { await dispatch(fetchMarkets()) - await dispatch(fetchV3Markets()) dispatch(fetchDailyVolumes()) } ) -export const fetchSmartMarginOpenOrders = createAsyncThunk< - | { - conditionalOrders: ConditionalOrder[] - delayedOrders: DelayedOrderWithDetails[] - account: string - network: NetworkId - } - | undefined, - void, - ThunkConfig ->('futures/fetchSmartMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { - const account = selectSmartMarginAccount(getState()) - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const markets = selectMarkets(getState()) - const existingOrders = selectOpenDelayedOrders(getState()) - - const marketAddresses = markets.map((market) => market.market) - - if (!account || !supportedNetwork) return - try { - const orders = await sdk.futures.getConditionalOrders(account) - const delayedOrders = await sdk.futures.getDelayedOrders(account, marketAddresses) - const nonzeroOrders = formatDelayedOrders(delayedOrders, markets) - - const orderDropped = existingOrders.length > nonzeroOrders.length - if (orderDropped) { - dispatch(fetchSmartMarginPositions()) - } - - return { - account, - network, - delayedOrders: serializeDelayedOrders(nonzeroOrders), - conditionalOrders: serializeConditionalOrders(orders), - } - } catch (err) { - notifyError('Failed to fetch open orders', err) - logError(err) - throw err - } -}) - -export const fetchCrossMarginTradePreview = createAsyncThunk< - { preview: FuturesPotentialTradeDetails | null; type: PreviewAction }, - DebouncedPreviewParams, - ThunkConfig ->( - 'futures/fetchCrossMarginTradePreview', - async (params, { dispatch, getState, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) - const freeMargin = selectIdleMargin(getState()) - const positions = selectFuturesPositions(getState()) - const position = positions.find((p) => p.marketKey === params.market.key) - - const marketMargin = position?.remainingMargin ?? wei(0) - - if ( - // Require both size and margin for a trade - (params.action === 'trade' && (params.sizeDelta.eq(0) || params.marginDelta.eq(0))) || - // Require one or the other when editing a position - (params.sizeDelta.eq(0) && params.marginDelta.eq(0)) - ) { - return { preview: null, type: params.action } - } - - // If this is a trade with no existsing position size then we need to subtract - // remaining idle market margin to get an accurate preview - const marginDelta = - (!position?.position || position?.position?.size.abs().eq(0)) && - marketMargin.gt(0) && - params.action === 'trade' - ? params.marginDelta.sub(marketMargin) - : params.marginDelta - - try { - const leverageSide = selectLeverageSide(getState()) - const preview = await sdk.futures.getSmartMarginTradePreview( - account || ZERO_ADDRESS, - params.market.key, - params.market.address, - { ...params, leverageSide, marginDelta } - ) - - // Check the preview hasn't been cleared before query resolves - const count = selectSmartMarginPreviewCount(getState()) - if (count !== params.debounceCount) { - const existing = selectTradePreview(getState()) - const returnPreview = existing ? serializePotentialTrade(existing) : null - return { preview: returnPreview, type: params.action } - } - - if (params.marginDelta.gt(freeMargin) && preview.status === 0) { - // Show insufficient margin message - preview.status = PotentialTradeStatus.INSUFFICIENT_FREE_MARGIN - preview.statusMessage = getTradeStatusMessage(PotentialTradeStatus.INSUFFICIENT_FREE_MARGIN) - preview.showStatus = true - } - - const serializedPreview = serializePotentialTrade({ - ...preview, - marketKey: params.market.key, - }) - return { preview: serializedPreview, type: params.action } - } catch (err) { - logError(err) - notifyError('Failed to generate trade preview', err) - dispatch( - handlePreviewError({ - error: err.message, - previewType: params.action, - }) - ) - return { preview: null, type: params.action } - } +export const fetchMarginTransfers = createAsyncThunk( + 'futures/fetchMarginTransfers', + async (_, { dispatch }) => { + // TODO: Conditionally fetch cross / smart + dispatch(fetchMarginTransfersV2()) } ) export const clearTradeInputs = createAsyncThunk( 'futures/clearTradeInputs', async (_, { dispatch }) => { + // TODO: Separate to cross / smart dispatch(setSmartMarginMarginDelta('')) dispatch(setSmartMarginFees(ZERO_CM_FEES)) - dispatch(setLeverageInput('')) - dispatch(clearAllTradePreviews()) + dispatch(setSmartMarginLeverageInput('')) + dispatch(clearSmartMarginTradePreviews()) dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) dispatch(setSmartMarginEditPositionInputs({ nativeSizeDelta: '', marginDelta: '' })) } ) -export const editCrossMarginTradeMarginDelta = - (marginDelta: string): AppThunk => - (dispatch, getState) => { - const orderPrice = selectMarketIndexPrice(getState()) - const marketInfo = selectMarketInfo(getState()) - const { susdSize, nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) - - if (!marketInfo) throw new Error('No market selected') - - if (!marginDelta || Number(marginDelta) === 0) { - dispatch(setSmartMarginMarginDelta(marginDelta)) - dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) - return - } - - const marginDelatWei = wei(marginDelta) - const leverage = wei(susdSize).div(marginDelatWei.abs()) - - dispatch(setSmartMarginMarginDelta(marginDelta)) - if (!leverage.eq(0)) { - dispatch(setLeverageInput(leverage.toString(2))) - } - - dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, - orderPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: nativeSizeDelta, - action: 'trade', - }) - ) - } - -export const editCrossMarginTradeSize = - (size: string, currencyType: 'usd' | 'native'): AppThunk => - (dispatch, getState) => { - const indexPrice = selectMarketIndexPrice(getState()) - const marginDelta = selectSmartMarginMarginDelta(getState()) - const orderPrice = selectSmartMarginOrderPrice(getState()) - const isConditionalOrder = selectIsConditionalOrder(getState()) - const tradeSide = selectLeverageSide(getState()) - const marketInfo = selectMarketInfo(getState()) - const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice - - if (!marketInfo) throw new Error('No market selected') - - if (size === '' || price.eq(0)) { - dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) - dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) - dispatch(setLeverageInput('')) - return - } - - const nativeSize = - currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) - const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size - const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' - const sizeDeltaWei = - tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() - dispatch( - setSmartMarginTradeInputs({ - susdSize: usdSize, - nativeSize: nativeSize, - }) - ) - dispatch(setLeverageInput(leverage.toString(2))) - dispatch( - stageCrossMarginTradePreview({ - market: { - key: marketInfo.marketKey, - address: marketInfo.market, - }, - orderPrice: price, - marginDelta: wei(marginDelta), - sizeDelta: sizeDeltaWei, - action: 'trade', - }) - ) - } - -export const editCrossMarginPositionSize = - (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => - (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) - dispatch( - setSmartMarginEditPositionInputs({ - marginDelta: '', - nativeSizeDelta: nativeSizeDelta, - }) - ) - try { - const market = getMarketDetailsByKey(getState, marketKey) - dispatch( - stageCrossMarginTradePreview({ - orderPrice: marketPrice, - market, - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) - } - } - -export const editClosePositionSizeDelta = - (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => - (dispatch, getState) => { - dispatch(setClosePositionSizeDelta(nativeSizeDelta)) - - if (nativeSizeDelta === '' || !nativeSizeDelta) { - dispatch(setSmartMarginTradePreview({ preview: null, type: 'close' })) - return - } - const { price } = selectClosePositionOrderInputs(getState()) - const { marketPrice } = selectEditPositionModalInfo(getState()) - const accountType = selectFuturesType(getState()) - - try { - const market = getMarketDetailsByKey(getState, marketKey) - const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) - const odrderPrice = - accountType === FuturesMarginType.CROSS_MARGIN ? marketPrice : smartMarginPrice - const previewParams: TradePreviewParams = { - market, - sizeDelta: wei(nativeSizeDelta), - orderPrice: odrderPrice, - marginDelta: ZERO_WEI, - action: 'close', - } - dispatch(stageCrossMarginTradePreview(previewParams)) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) - } - } - -export const editClosePositionPrice = - (marketKey: FuturesMarketKey, price: string): AppThunk => - (dispatch, getState) => { - const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) - const marketPrice = selectMarketIndexPrice(getState()) - const { position } = selectEditPositionModalInfo(getState()) - const closeTradeSide = - position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT - const invalidLabel = orderPriceInvalidLabel( - price || '0', - closeTradeSide, - marketPrice, - orderType - ) - - dispatch(setClosePositionPrice({ value: price, invalidLabel })) - - try { - const marketInfo = getMarketDetailsByKey(getState, marketKey) - dispatch( - stageCrossMarginTradePreview({ - market: marketInfo, - orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), - marginDelta: ZERO_WEI, - sizeDelta: wei(nativeSizeDelta || 0), - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) - } - } - -export const editCrossMarginPositionMargin = - (marketKey: FuturesMarketKey, marginDelta: string): AppThunk => - (dispatch, getState) => { - const { marketPrice } = selectEditPositionModalInfo(getState()) - dispatch( - setSmartMarginEditPositionInputs({ - marginDelta: marginDelta, - nativeSizeDelta: '', - }) - ) - try { - const market = getMarketDetailsByKey(getState, marketKey) - - dispatch( - stageCrossMarginTradePreview({ - market, - orderPrice: marketPrice, - marginDelta: wei(marginDelta || 0), - sizeDelta: ZERO_WEI, - action: 'edit', - }) - ) - } catch (err) { - dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) - } - } - -export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { - const orderPrice = selectSmartMarginOrderPrice(getState()) - const indexPrice = selectMarketIndexPrice(getState()) - const marketInfo = selectMarketInfo(getState()) - const marginDelta = selectSmartMarginMarginDelta(getState()) - const isConditionalOrder = selectIsConditionalOrder(getState()) - const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice - const { nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) - - if (!marketInfo) throw new Error('No market selected') - - dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, - orderPrice: price, - marginDelta, - sizeDelta: nativeSizeDelta, - action: 'trade', - }) - ) -} - -const stageCrossMarginTradePreview = createAsyncThunk( - 'futures/stageCrossMarginTradePreview', - async (inputs, { dispatch, getState }) => { - dispatch(calculateSmartMarginFees(inputs)) - dispatch(incrementCrossPreviewCount()) - const debounceCount = selectSmartMarginPreviewCount(getState()) - debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) - } -) - export const editTradeSizeInput = (size: string, currencyType: 'usd' | 'native'): AppThunk => (dispatch) => { - dispatch(editCrossMarginTradeSize(size, currencyType)) + dispatch(editSmartMarginTradeSize(size, currencyType)) } -export const changeLeverageSide = - (side: PositionSide): AppThunk => - (dispatch, getState) => { - const { nativeSizeString } = selectSmartMarginTradeInputs(getState()) - dispatch(setLeverageSide(side)) - dispatch(editTradeSizeInput(nativeSizeString, 'native')) +export const fetchFuturesPositionHistory = createAsyncThunk( + 'futures/fetchFuturesPositionHistory', + async (_, { getState, dispatch }) => { + const accountType = selectFuturesAccount(getState()) + accountType === FuturesMarginType.CROSS_MARGIN + ? dispatch(fetchPositionHistoryV3) + : dispatch(fetchPositionHistoryV2) } - -export const debouncedPrepareCrossMarginTradePreview = debounce( - (dispatch, inputs: DebouncedPreviewParams) => { - dispatch(fetchCrossMarginTradePreview(inputs)) - }, - 500 ) -export const editTradeOrderPrice = - (price: string): AppThunk => - (dispatch, getState) => { - const rate = selectSkewAdjustedPrice(getState()) - const orderType = selectOrderType(getState()) - const side = selectLeverageSide(getState()) - const inputs = selectSmartMarginTradeInputs(getState()) - dispatch(setSmartMarginOrderPrice(price)) - const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) - dispatch(setSmartMarginOrderPriceInvalidLabel(invalidLabel)) - if (!invalidLabel && price && inputs.susdSize) { - // Recalc the trade - dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) - } - } - -export const fetchFuturesPositionHistory = createAsyncThunk< - | { - accountType: AppFuturesMarginType - history: FuturesPositionHistory[] - account: string - wallet: string - networkId: NetworkId - } - | undefined, - void, - ThunkConfig ->('futures/fetchFuturesPositionHistory', async (_, { getState, extra: { sdk } }) => { - try { - const account = selectFuturesAccount(getState()) - const accountType = selectFuturesType(getState()) - const networkId = selectNetwork(getState()) - const wallet = selectWallet(getState()) - const futuresSupported = selectSmartMarginSupportedNetwork(getState()) - if (!wallet || !account || !futuresSupported) return - const history = await sdk.futures.getPositionHistory(account) - return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } - } catch (err) { - notifyError('Failed to fetch position history', err) - throw err - } -}) - export const fetchPositionHistoryForTrader = createAsyncThunk< { history: FuturesPositionHistory[]; address: string; networkId: NetworkId } | undefined, string, @@ -817,174 +159,8 @@ export const fetchPositionHistoryForTrader = createAsyncThunk< } }) -export const fetchTradesForSelectedMarket = createAsyncThunk< - | { - trades: FuturesTrade[] - account: string - wallet: string - networkId: NetworkId - accountType: AppFuturesMarginType - } - | undefined, - void, - ThunkConfig ->('futures/fetchTradesForSelectedMarket', async (_, { getState, extra: { sdk } }) => { - try { - const wallet = selectWallet(getState()) - const networkId = selectNetwork(getState()) - const marketAsset = selectMarketAsset(getState()) - const accountType = selectFuturesType(getState()) - const account = selectFuturesAccount(getState()) - const futuresSupported = selectSmartMarginSupportedNetwork(getState()) - - if (!futuresSupported || !wallet || !account) return - const trades = await sdk.futures.getTradesForMarket(marketAsset, wallet, accountType) - return { trades: serializeTrades(trades), networkId, account, accountType, wallet } - } catch (err) { - notifyError('Failed to fetch futures trades for selected market', err) - throw err - } -}) - -export const fetchAllTradesForAccount = createAsyncThunk< - | { - trades: FuturesTrade[] - account: string - wallet: string - networkId: NetworkId - accountType: AppFuturesMarginType - } - | undefined, - void, - ThunkConfig ->('futures/fetchAllTradesForAccount', async (_, { getState, extra: { sdk } }) => { - try { - const wallet = selectWallet(getState()) - const networkId = selectNetwork(getState()) - const accountType = selectFuturesType(getState()) - const account = selectFuturesAccount(getState()) - const futuresSupported = selectSmartMarginSupportedNetwork(getState()) - if (!futuresSupported || !wallet || !account) return - const trades = await sdk.futures.getAllTrades(wallet, accountType, 200) - return { trades: serializeTrades(trades), networkId, account, accountType, wallet } - } catch (err) { - notifyError('Failed to fetch futures trades', err) - throw err - } -}) - -export const calculateSmartMarginFees = - (params: TradePreviewParams): AppThunk => - (dispatch, getState) => { - const markets = selectMarkets(getState()) - const market = markets.find((m) => m.marketKey === params.market.key) - if (!market) throw new Error('Missing market info to compute fee') - const keeperBalance = selectKeeperEthBalance(getState()) - const { delayedOrderFee } = computeDelayedOrderFee( - market, - params.sizeDelta.mul(params.orderPrice?.abs()) - ) - - const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) - ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) - : wei(0) - - const fees = { - delayedOrderFee: delayedOrderFee.toString(), - keeperEthDeposit: requiredDeposit.toString(), - } - dispatch(setSmartMarginFees(fees)) - } - -export const calculateKeeperDeposit = (): AppThunk => (dispatch, getState) => { - const keeperBalance = selectKeeperEthBalance(getState()) - const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) - ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) - : wei(0) - - dispatch(setKeeperDeposit(requiredDeposit.toString())) -} - // Contract Mutations -export const createSmartMarginAccount = createAsyncThunk< - { account: string; wallet: string; network: NetworkId } | undefined, - void, - ThunkConfig ->( - 'futures/createSmartMarginAccount', - async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { - const wallet = selectWallet(getState()) - const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - if (!wallet || !supportedNetwork) return undefined - const accounts = getState().futures.smartMargin.accounts - - // Already have an accoutn fetched and persisted for this address - if (accounts[network]?.[wallet]?.account) { - notifyError('There is already an account associated with this wallet') - rejectWithValue('Account already created') - } - - try { - const accounts = await sdk.futures.getSmartMarginAccounts() - // Check for existing account on the contract as only one account per user - if (accounts[0]) { - dispatch(setSmartMarginAccount({ account: accounts[0], wallet: wallet, network })) - return - } - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'create_cross_margin_account', - hash: null, - }) - ) - const tx = await sdk.futures.createSmartMarginAccount() - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchSmartMarginAccount()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - } - } -) - -export const withdrawSmartMargin = createAsyncThunk( - 'futures/withdrawSmartMargin', - async (amount, { getState, dispatch, extra: { sdk } }) => { - const account = selectSmartMarginAccount(getState()) - if (!account) { - notifyError('No smart margin account') - return - } - await submitSMTransferTransaction(dispatch, sdk, 'withdraw_smart_margin', account, amount) - } -) - -export const approveCrossMargin = createAsyncThunk( - 'futures/approveCrossMargin', - async (_, { getState, dispatch, extra: { sdk } }) => { - const account = selectSmartMarginAccount(getState()) - if (!account) throw new Error('No smart margin account') - try { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'approve_cross_margin', - hash: null, - }) - ) - const tx = await sdk.futures.approveSmartMarginDeposit(account) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchSmartMarginBalanceInfo()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - export const cancelDelayedOrder = createAsyncThunk( 'futures/cancelDelayedOrder', async ({ marketAddress, isOffchain }, { getState, dispatch, extra: { sdk } }) => { @@ -1034,461 +210,8 @@ export const executeDelayedOrder = createAsyncThunk( - 'futures/submitSmartMarginOrder', - async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { - const marketInfo = selectMarketInfo(getState()) - const account = selectSmartMarginAccount(getState()) - const tradeInputs = selectSmartMarginTradeInputs(getState()) - const marginDelta = selectSmartMarginMarginDelta(getState()) - const feeCap = selectOrderFeeCap(getState()) - const orderType = selectOrderType(getState()) - const orderPrice = selectSmartMarginOrderPrice(getState()) - const preview = selectTradePreview(getState()) - const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) - const wallet = selectWallet(getState()) - const position = selectPosition(getState()) - const openDelayedOrders = selectOpenDelayedOrders(getState()) - const { stopLossPrice, takeProfitPrice } = selectSlTpTradeInputs(getState()) - - try { - if (!marketInfo) throw new Error('Market info not found') - if (!account) throw new Error('No smart margin account found') - if (!wallet) throw new Error('No wallet connected') - if (!preview) throw new Error('Missing trade preview') - if (!overridePriceProtection && preview.exceedsPriceProtection) { - throw new Error('Price impact exceeds price protection') - } - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'submit_cross_order', - hash: null, - }) - ) - - const orderInputs: SmartMarginOrderInputs = { - sizeDelta: tradeInputs.nativeSizeDelta, - marginDelta: marginDelta, - desiredFillPrice: preview.desiredFillPrice, - } - - // To separate Stop Loss and Take Profit from other limit / stop orders - // we set the size to max big num value. - - const maxSizeDelta = tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE - - if (Number(stopLossPrice) > 0) { - const desiredSLFillPrice = calculateDesiredFillPrice( - maxSizeDelta, - wei(stopLossPrice || 0), - wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.STOP_LOSS) - ) - orderInputs.stopLoss = { - price: wei(stopLossPrice), - desiredFillPrice: desiredSLFillPrice, - sizeDelta: tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE, - } - } - - if (Number(takeProfitPrice) > 0) { - const desiredTPFillPrice = calculateDesiredFillPrice( - maxSizeDelta, - wei(takeProfitPrice || 0), - wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.TAKE_PROFIT) - ) - orderInputs.takeProfit = { - price: wei(takeProfitPrice), - desiredFillPrice: desiredTPFillPrice, - sizeDelta: tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE, - } - } - - if (orderType !== 'market') { - orderInputs['conditionalOrderInputs'] = { - orderType: - orderType === 'limit' ? ConditionalOrderTypeEnum.LIMIT : ConditionalOrderTypeEnum.STOP, - feeCap, - price: wei(orderPrice || '0'), - reduceOnly: false, - } - } - - if (orderType !== 'market' || Number(takeProfitPrice) > 0 || Number(stopLossPrice) > 0) { - orderInputs.keeperEthDeposit = keeperEthDeposit - } - - let existingSize = position?.position?.size ?? wei(0) - existingSize = - position?.position?.side === PositionSide.SHORT ? existingSize.neg() : existingSize - const isClosing = existingSize.add(tradeInputs.nativeSizeDelta).eq(0) - - const staleOrder = openDelayedOrders.find( - (o) => o.isStale && o.marketKey === marketInfo.marketKey - ) - - const tx = await sdk.futures.submitSmartMarginOrder( - { address: marketInfo.market, key: marketInfo.marketKey }, - wallet, - account, - orderInputs, - { cancelPendingReduceOrders: isClosing, cancelExpiredDelayedOrders: !!staleOrder } - ) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchSmartMarginOpenOrders()) - dispatch(setOpenModal(null)) - dispatch(fetchBalances()) - dispatch(clearTradeInputs()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const submitSmartMarginAdjustMargin = createAsyncThunk( - 'futures/submitSmartMarginAdjustMargin', - async (_, { getState, dispatch, extra: { sdk } }) => { - const { market } = selectEditPositionModalInfo(getState()) - const account = selectSmartMarginAccount(getState()) - const { marginDelta } = selectSmartMarginEditPosInputs(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!account) throw new Error('No smart margin account found') - if (!marginDelta || marginDelta === '') throw new Error('No margin amount set') - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'submit_cross_order', - hash: null, - }) - ) - - const tx = await sdk.futures.modifySmartMarginMarketMargin( - account, - market.market, - wei(marginDelta) - ) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setOpenModal(null)) - dispatch(refetchPosition(FuturesMarginType.SMART_MARGIN)) - dispatch(fetchBalances()) - dispatch(clearTradeInputs()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const submitSmartMarginAdjustPositionSize = createAsyncThunk( - 'futures/submitSmartMarginAdjustPositionSize', - async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { - const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectSmartMarginAccount(getState()) - const preview = selectEditPositionPreview(getState()) - const { nativeSizeDelta } = selectSmartMarginEditPosInputs(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!account) throw new Error('No smart margin account found') - if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No margin amount set') - if (!preview) throw new Error('Missing trade preview') - if (!overridePriceProtection && preview.exceedsPriceProtection) { - throw new Error('Price impact exceeds price protection') - } - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'submit_cross_order', - hash: null, - }) - ) - - let existingSize = position?.position?.size ?? wei(0) - existingSize = - position?.position?.side === PositionSide.SHORT ? existingSize.neg() : existingSize - const isClosing = existingSize.add(nativeSizeDelta).eq(0) - - const tx = await sdk.futures.modifySmartMarginPositionSize( - account, - { - key: market.marketKey, - address: market.market, - }, - wei(nativeSizeDelta), - preview.desiredFillPrice, - isClosing - ) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setShowPositionModal(null)) - dispatch(fetchBalances()) - dispatch(clearTradeInputs()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const submitSmartMarginReducePositionOrder = createAsyncThunk( - 'futures/submitSmartMarginReducePositionOrder', - async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { - const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectSmartMarginAccount(getState()) - const { nativeSizeDelta, orderType, price } = selectClosePositionOrderInputs(getState()) - const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) - const feeCap = selectOrderFeeCap(getState()) - const wallet = selectWallet(getState()) - const preview = selectClosePositionPreview(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!wallet) throw new Error('No wallet connected') - if (!account) throw new Error('No smart margin account found') - if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No margin amount set') - if (!preview) throw new Error('Missing trade preview') - if (!overridePriceProtection && preview.exceedsPriceProtection) { - throw new Error('Price impact exceeds price protection') - } - - const isClosing = wei(nativeSizeDelta) - .abs() - .eq(position?.position?.size.abs() || 0) - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'submit_cross_order', - hash: null, - }) - ) - - const orderInputs: SmartMarginOrderInputs = { - sizeDelta: wei(nativeSizeDelta), - marginDelta: wei(0), - desiredFillPrice: preview.desiredFillPrice, - } - - if (orderType !== 'market') { - orderInputs['conditionalOrderInputs'] = { - orderType: - orderType === 'limit' ? ConditionalOrderTypeEnum.LIMIT : ConditionalOrderTypeEnum.STOP, - feeCap, - price: wei(price?.value || '0'), - reduceOnly: true, - } - orderInputs.keeperEthDeposit = keeperEthDeposit - } - - const tx = - isClosing && orderType === 'market' - ? await sdk.futures.closeSmartMarginPosition( - { address: market.market, key: market.marketKey }, - account, - preview.desiredFillPrice - ) - : await sdk.futures.submitSmartMarginOrder( - { address: market.market, key: market.marketKey }, - wallet, - account, - orderInputs, - { cancelPendingReduceOrders: isClosing } - ) - - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setOpenModal(null)) - dispatch(setShowPositionModal(null)) - dispatch(fetchBalances()) - dispatch(clearTradeInputs()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const cancelConditionalOrder = createAsyncThunk( - 'futures/cancelConditionalOrder', - async (contractOrderId, { getState, dispatch, extra: { sdk } }) => { - const crossMarginAccount = selectSmartMarginAccount(getState()) - try { - if (!crossMarginAccount) throw new Error('No smart margin account') - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'cancel_cross_margin_order', - hash: null, - }) - ) - - // Handle contract id or subgraph id - - dispatch(setSmartMarginOrderCancelling(contractOrderId)) - const tx = await sdk.futures.cancelConditionalOrder(crossMarginAccount, contractOrderId) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setSmartMarginOrderCancelling(undefined)) - dispatch(setOpenModal(null)) - dispatch(fetchSmartMarginOpenOrders()) - } catch (err) { - dispatch(setSmartMarginOrderCancelling(undefined)) - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - -export const withdrawAccountKeeperBalance = createAsyncThunk( - 'futures/withdrawAccountKeeperBalance', - async (amount, { getState, dispatch, extra: { sdk } }) => { - const crossMarginAccount = selectSmartMarginAccount(getState()) - try { - if (!crossMarginAccount) throw new Error('No smart margin account') - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'withdraw_keeper_balance', - hash: null, - }) - ) - - const tx = await sdk.futures.withdrawAccountKeeperBalance(crossMarginAccount, amount) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setOpenModal(null)) - dispatch(fetchSmartMarginBalanceInfo()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - // Utils -const submitSMTransferTransaction = async ( - dispatch: AppDispatch, - sdk: KwentaSDK, - type: 'withdraw_smart_margin' | 'deposit_smart_margin', - account: string, - amount: Wei -) => { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: type, - hash: null, - }) - ) - - try { - const tx = - type === 'deposit_smart_margin' - ? await sdk.futures.depositSmartMarginAccount(account, amount) - : await sdk.futures.withdrawSmartMarginAccount(account, amount) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(fetchSmartMarginBalanceInfo()) - dispatch(setOpenModal(null)) - dispatch(refetchPosition(FuturesMarginType.SMART_MARGIN)) - dispatch(fetchBalances()) - dispatch(fetchMarginTransfers()) - return tx - } catch (err) { - logError(err) - dispatch(handleTransactionError(err.message)) - throw err - } -} - -export const updateStopLossAndTakeProfit = createAsyncThunk( - 'futures/updateStopLossAndTakeProfit', - async (_, { getState, dispatch, extra: { sdk } }) => { - const { market, position } = selectEditPositionModalInfo(getState()) - const account = selectSmartMarginAccount(getState()) - const wallet = selectWallet(getState()) - const { stopLossPrice, takeProfitPrice } = selectSlTpModalInputs(getState()) - const keeperDeposit = selectSmartMarginKeeperDeposit(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!account) throw new Error('No smart margin account found') - if (!wallet) throw new Error('No wallet connected') - - const maxSizeDelta = - position?.position?.side === PositionSide.LONG ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE - - const desiredSLFillPrice = calculateDesiredFillPrice( - maxSizeDelta, - wei(stopLossPrice || 0), - wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.STOP_LOSS) - ) - - const desiredTPFillPrice = calculateDesiredFillPrice( - maxSizeDelta, - wei(takeProfitPrice || 0), - wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.TAKE_PROFIT) - ) - - const params: SLTPOrderInputs = { - keeperEthDeposit: keeperDeposit, - } - - // To separate Stop Loss and Take Profit from other limit / stop orders - // we set the size to max big num value. - - if (Number(stopLossPrice) > 0) { - params.stopLoss = { - price: wei(stopLossPrice), - desiredFillPrice: desiredSLFillPrice, - sizeDelta: maxSizeDelta, - } - } else if (!stopLossPrice) { - params.stopLoss = { - price: wei(0), - desiredFillPrice: wei(0), - sizeDelta: wei(0), - isCancelled: true, - } - } - - if (Number(takeProfitPrice) > 0) { - params.takeProfit = { - price: wei(takeProfitPrice), - desiredFillPrice: desiredTPFillPrice, - sizeDelta: maxSizeDelta, - } - } else if (!takeProfitPrice) { - params.takeProfit = { - price: wei(0), - desiredFillPrice: wei(0), - sizeDelta: wei(0), - isCancelled: true, - } - } - - if (params.stopLoss || params.takeProfit) { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'submit_cross_order', - hash: null, - }) - ) - - const tx = await sdk.futures.updateStopLossAndTakeProfit(market.marketKey, account, params) - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setShowPositionModal(null)) - } - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } - } -) - export const fetchFundingRatesHistory = createAsyncThunk< { marketAsset: FuturesMarketAsset; rates: any }, FuturesMarketAsset, @@ -1497,24 +220,3 @@ export const fetchFundingRatesHistory = createAsyncThunk< const rates = await sdk.futures.getMarketFundingRatesHistory(marketAsset) return { marketAsset, rates } }) - -const monitorAndAwaitTransaction = async ( - dispatch: AppDispatch, - tx: ethers.providers.TransactionResponse -) => { - dispatch(updateTransactionHash(tx.hash)) - await tx.wait() - dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) -} - -const getMarketDetailsByKey = (getState: () => RootState, key: FuturesMarketKey) => { - const markets = selectMarkets(getState()) - const market = markets.find((m) => { - return m.marketKey === key - }) - if (!market) throw new Error(`No market info found for ${key}`) - return { - address: market.market, - key: market.marketKey, - } -} diff --git a/packages/app/src/state/futures/shared.ts/types.ts b/packages/app/src/state/futures/common/types.ts similarity index 50% rename from packages/app/src/state/futures/shared.ts/types.ts rename to packages/app/src/state/futures/common/types.ts index fc6f70714b..83eeaf04e0 100644 --- a/packages/app/src/state/futures/shared.ts/types.ts +++ b/packages/app/src/state/futures/common/types.ts @@ -1,4 +1,5 @@ import { + FuturesMarginType, FuturesMarketAsset, FuturesMarketKey, FuturesOrderTypeDisplay, @@ -6,10 +7,16 @@ import { FuturesPositionHistory, FuturesTrade, MarginTransfer, + NetworkId, PositionSide, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' +import { QueryStatus } from 'state/types' + +type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY +export type AppFuturesMarginType = Exclude + export type FuturesAccountData = { account: string position?: FuturesPosition @@ -41,6 +48,60 @@ export type DelayedOrderWithDetails = { isCancelling?: boolean } +export type HistoricalFundingRates = Partial< + Record +> + +export type FuturesQueryStatuses = { + markets: QueryStatus + smartMarginBalanceInfo: QueryStatus + dailyVolumes: QueryStatus + positions: QueryStatus + positionHistory: QueryStatus + openOrders: QueryStatus + smartMarginTradePreview: QueryStatus + crossMarginTradePreview: QueryStatus + account: QueryStatus + trades: QueryStatus + selectedTraderPositionHistory: QueryStatus + marginTransfers: QueryStatus + historicalFundingRates: QueryStatus +} + +export type TradeSizeInputs = { + nativeSize: T + susdSize: T +} + +export type EditPositionInputs = { + nativeSizeDelta: T + marginDelta: T +} + +export type PreviewAction = 'edit' | 'trade' | 'close' + +export type TradePreviewParams = { + market: { + key: FuturesMarketKey + address: string + } + orderPrice: Wei + sizeDelta: Wei + marginDelta: Wei + action: PreviewAction +} + +export type DebouncedPreviewParams = TradePreviewParams & { + debounceCount: number +} + +export type AccountContext = { + type: AppFuturesMarginType + network: NetworkId + wallet: string + cmAccount?: string +} + export type FuturesTransactionType = | 'deposit_smart_margin' | 'withdraw_smart_margin' diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index fd617f84ee..6bac6bbca5 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -7,18 +7,14 @@ import { TransactionStatus, } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' +import Wei from '@synthetixio/wei' +import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' -import { - selectSmartMarginAccount, - selectFuturesAccount, - selectFuturesType, - selectMarketInfo, - selectOpenDelayedOrders, - selectEditPositionModalInfo, - selectClosePositionPreview, - selectClosePositionOrderInputs, -} from 'state/futures/selectors' +import { monitorAndAwaitTransaction } from 'state/app/helpers' +import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' +import { fetchBalances } from 'state/balances/actions' +import { selectMarketInfo } from 'state/futures/selectors' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { @@ -30,27 +26,25 @@ import { } from 'utils/futures' import logError from 'utils/logError' -import { selectCrossMarginSupportedNetwork, selectV3Markets } from './selectors' +import { + AppFuturesMarginType, + DebouncedPreviewParams, + DelayedOrderWithDetails, +} from '../common/types' + import { setPerpsV3Account } from './reducer' import { - handleTransactionError, - setOpenModal, - setShowPositionModal, - setTransaction, - updateTransactionHash, - updateTransactionStatus, -} from 'state/app/reducer' -import { AppDispatch } from 'state/store' -import { ethers } from 'ethers' -import { AppFuturesMarginType, DelayedOrderWithDetails } from 'state/futures/types' -import Wei, { wei } from '@synthetixio/wei' -import { fetchBalances } from 'state/balances/actions' + selectCrossMarginAccount, + selectCrossMarginSupportedNetwork, + selectOpenDelayedOrdersV3, + selectV3Markets, +} from './selectors' -export const fetchV3Markets = createAsyncThunk< +export const fetchMarketsV3 = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchV3Markets', async (_, { getState, extra: { sdk } }) => { +>('futures/fetchMarketsV3', async (_, { getState, extra: { sdk } }) => { const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const networkId = selectNetwork(getState()) if (!supportedNetwork) return @@ -75,7 +69,7 @@ export const fetchPerpsV3Account = createAsyncThunk< const network = selectNetwork(getState()) if (!wallet || !supportedNetwork) return undefined - const accounts = getState().futures.smartMargin.accounts + const accounts = getState().crossMargin.accounts // Already have an account fetched and persisted for this address if (accounts[network]?.[wallet]?.account) return @@ -104,11 +98,10 @@ export const fetchCrossMarginPositions = createAsyncThunk< { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchCrossMarginPositions', async (_, { getState, extra: { sdk } }) => { +>('futures/fetchCrossMarginPositions', async (_, { getState }) => { const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) - const account = selectSmartMarginAccount(getState()) - const markets = selectV3Markets(getState()) + const account = selectCrossMarginAccount(getState()) if (!supportedNetwork || !account) return try { @@ -121,9 +114,8 @@ export const fetchCrossMarginPositions = createAsyncThunk< } }) -export const fetchPerpsV3PositionHistory = createAsyncThunk< +export const fetchPositionHistoryV3 = createAsyncThunk< | { - accountType: AppFuturesMarginType history: FuturesPositionHistory[] account: string wallet: string @@ -132,16 +124,15 @@ export const fetchPerpsV3PositionHistory = createAsyncThunk< | undefined, void, ThunkConfig ->('futures/fetchPerpsV3PositionHistory', async (_, { getState, extra: { sdk } }) => { +>('futures/fetchPositionHistoryV3', async (_, { getState, extra: { sdk } }) => { try { - const account = selectFuturesAccount(getState()) - const accountType = selectFuturesType(getState()) + const account = selectCrossMarginAccount(getState()) const networkId = selectNetwork(getState()) const wallet = selectWallet(getState()) const futuresSupported = selectCrossMarginSupportedNetwork(getState()) if (!wallet || !account || !futuresSupported) return const history = await sdk.futures.getPositionHistory(account) - return { accountType, account, wallet, networkId, history: serializePositionHistory(history) } + return { account, wallet, networkId, history: serializePositionHistory(history) } } catch (err) { notifyError('Failed to fetch perps v3 position history', err) throw err @@ -157,7 +148,7 @@ export const refetchPosition = createAsyncThunk< } | null, void, ThunkConfig ->('futures/refetchPosition', async (type, { getState, extra: { sdk } }) => { +>('futures/refetchPosition', async () => { // TODO: Refetch positions return null }) @@ -171,7 +162,7 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) const markets = selectV3Markets(getState()) - const existingOrders = selectOpenDelayedOrders(getState()) + const existingOrders = selectOpenDelayedOrdersV3(getState()) if (!wallet || !supportedNetwork || !markets.length) return const marketAddresses = markets.map((market) => market.market) @@ -190,16 +181,31 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< } }) -export const fetchMarginTransfers = createAsyncThunk( +export const fetchCrossMarginTradePreview = createAsyncThunk< + void, + DebouncedPreviewParams, + ThunkConfig +>('futures/fetchCrossMarginTradePreview', async () => { + // TODO: Fetch cross margin trade preview +}) + +export const debouncedPrepareCrossMarginTradePreview = debounce( + (dispatch, inputs: DebouncedPreviewParams) => { + dispatch(fetchCrossMarginTradePreview(inputs)) + }, + 500 +) + +export const fetchMarginTransfersV3 = createAsyncThunk( 'futures/fetchMarginTransfers', - async (_, { getState, extra: { sdk } }) => { + async () => { // TODO: Fetch perps v3 balance transfers } ) export const clearTradeInputs = createAsyncThunk( 'futures/clearTradeInputs', - async (_, { dispatch }) => { + async () => { // TODO: Clear trade inputs for cross margin } ) @@ -273,7 +279,7 @@ export const depositCrossMarginMargin = createAsyncThunk dispatch(setOpenModal(null)) dispatch(refetchPosition()) dispatch(fetchBalances()) - dispatch(fetchMarginTransfers()) + dispatch(fetchMarginTransfersV3()) } catch (err) { dispatch(handleTransactionError(err.message)) throw err @@ -299,7 +305,7 @@ export const withdrawCrossMargin = createAsyncThunk( dispatch(refetchPosition()) dispatch(setOpenModal(null)) dispatch(fetchBalances()) - dispatch(fetchMarginTransfers()) + dispatch(fetchMarginTransfersV3()) } catch (err) { dispatch(handleTransactionError(err.message)) throw err @@ -309,56 +315,14 @@ export const withdrawCrossMargin = createAsyncThunk( export const submitCrossMarginOrder = createAsyncThunk( 'futures/submitCrossMarginOrder', - async (_, { getState, dispatch, extra: { sdk } }) => { + async () => { // TODO: Handle perps v3 order submission } ) export const submitCrossMarginReducePositionOrder = createAsyncThunk( 'futures/submitCrossMarginReducePositionOrder', - async (_, { getState, dispatch, extra: { sdk } }) => { - const { market } = selectEditPositionModalInfo(getState()) - const closePreview = selectClosePositionPreview(getState()) - const { nativeSizeDelta } = selectClosePositionOrderInputs(getState()) - const wallet = selectWallet(getState()) - - try { - if (!market) throw new Error('Market info not found') - if (!wallet) throw new Error('No wallet connected') - if (!closePreview) throw new Error('Failed to generate trade preview') - if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No size amount set') - - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'modify_isolated', - hash: null, - }) - ) - - const tx = await sdk.futures.submitIsolatedMarginOrder( - market.market, - wei(nativeSizeDelta), - closePreview.desiredFillPrice - ) - - await monitorAndAwaitTransaction(dispatch, tx) - dispatch(setShowPositionModal(null)) - dispatch(fetchBalances()) - } catch (err) { - dispatch(handleTransactionError(err.message)) - throw err - } + async () => { + // TODO: hookup submit v3 order } ) - -// TODO: Move this to shared action under app - -const monitorAndAwaitTransaction = async ( - dispatch: AppDispatch, - tx: ethers.providers.TransactionResponse -) => { - dispatch(updateTransactionHash(tx.hash)) - await tx.wait() - dispatch(updateTransactionStatus(TransactionStatus.Confirmed)) -} diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index 3726be5e2b..e95c202fcb 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -2,15 +2,11 @@ import { Period } from '@kwenta/sdk/constants' import { NetworkId, FuturesMarketAsset, - FuturesMarketKey, FuturesPotentialTradeDetails, PositionSide, - FuturesTrade, } from '@kwenta/sdk/types' -import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { createSlice, PayloadAction } from '@reduxjs/toolkit' -import { DEFAULT_FUTURES_MARGIN_TYPE } from 'constants/defaults' import { ORDER_PREVIEW_ERRORS } from 'queries/futures/constants' import { DEFAULT_MAP_BY_NETWORK, @@ -22,31 +18,24 @@ import { } from 'state/constants' import { FetchStatus } from 'state/types' +import { refetchPosition, fetchFundingRatesHistory } from '../actions' +import { PreviewAction, TradeSizeInputs } from '../common/types' + import { - fetchDailyVolumes, - refetchPosition, - fetchCrossMarginTradePreview, - fetchSmartMarginAccount, - fetchMarginTransfers, - fetchFundingRatesHistory, -} from '../actions' + fetchCrossMarginOpenOrders, + fetchCrossMarginPositions, + fetchPositionHistoryV3, + fetchMarketsV3, + fetchPerpsV3Account, +} from './actions' import { EditPositionInputs, InputCurrencyDenomination, CrossMarginAccountData, - TradeSizeInputs, CrossMarginState, - PreviewAction, } from './types' -import { - fetchCrossMarginOpenOrders, - fetchCrossMarginPositions, - fetchPerpsV3PositionHistory, - fetchV3Markets, -} from './actions' -export const PERPS_V3_INITIAL_STATE: CrossMarginState = { - selectedType: DEFAULT_FUTURES_MARGIN_TYPE, +export const COSS_MARGIN_INITIAL_STATE: CrossMarginState = { confirmationModalOpen: false, markets: { 420: [], @@ -55,7 +44,6 @@ export const PERPS_V3_INITIAL_STATE: CrossMarginState = { dailyMarketVolumes: {}, accounts: DEFAULT_MAP_BY_NETWORK, selectedMarketAsset: FuturesMarketAsset.sETH, - selectedMarketKey: FuturesMarketKey.sETHPERP, leverageSide: PositionSide.LONG, orderType: 'market', previews: { @@ -91,30 +79,29 @@ export const PERPS_V3_INITIAL_STATE: CrossMarginState = { queryStatuses: { markets: DEFAULT_QUERY_STATUS, dailyVolumes: DEFAULT_QUERY_STATUS, - perpsV3Positions: DEFAULT_QUERY_STATUS, - perpsV3PositionHistory: DEFAULT_QUERY_STATUS, - perpsV3Account: DEFAULT_QUERY_STATUS, + positions: DEFAULT_QUERY_STATUS, + account: DEFAULT_QUERY_STATUS, openOrders: DEFAULT_QUERY_STATUS, - perpsV3TradePreview: DEFAULT_QUERY_STATUS, + crossMarginTradePreview: DEFAULT_QUERY_STATUS, positionHistory: DEFAULT_QUERY_STATUS, selectedTraderPositionHistory: DEFAULT_QUERY_STATUS, trades: DEFAULT_QUERY_STATUS, marginTransfers: DEFAULT_QUERY_STATUS, historicalFundingRates: DEFAULT_QUERY_STATUS, + // TODO: Separate cross / smart query status + smartMarginTradePreview: DEFAULT_QUERY_STATUS, + smartMarginBalanceInfo: DEFAULT_QUERY_STATUS, }, - tradePanelDrawerOpen: false, historicalFundingRates: {}, } -const futuresSlice = createSlice({ - name: 'futures', - initialState: PERPS_V3_INITIAL_STATE, +const crossMarginSlice = createSlice({ + name: 'crossMargin', + initialState: COSS_MARGIN_INITIAL_STATE, reducers: { setMarketAsset: (state, action) => { state.selectedMarketAsset = action.payload - state.selectedMarketKey = MarketKeyByAsset[action.payload as FuturesMarketAsset] state.tradeInputs = ZERO_STATE_TRADE_INPUTS - state.selectedMarketAsset = action.payload }, setClosePositionSizeDelta: (state, action: PayloadAction) => { state.closePositionOrderInputs.nativeSizeDelta = action.payload @@ -152,7 +139,7 @@ const futuresSlice = createSlice({ const message = Object.values(ORDER_PREVIEW_ERRORS).includes(payload.error) ? payload.error : 'Failed to get trade preview' - futuresState.queryStatuses.perpsV3TradePreview = { + futuresState.queryStatuses.crossMarginTradePreview = { status: FetchStatus.Error, error: message, } @@ -191,7 +178,7 @@ const futuresSlice = createSlice({ trade: null, close: null, } - state.queryStatuses.perpsV3TradePreview = DEFAULT_QUERY_STATUS + state.queryStatuses.crossMarginTradePreview = DEFAULT_QUERY_STATUS }, setSelectedTrader: (state, action: PayloadAction) => { state.leaderboard.selectedTrader = action.payload @@ -202,9 +189,6 @@ const futuresSlice = createSlice({ setSelectedPortfolioTimeframe: (state, action: PayloadAction) => { state.dashboard.selectedPortfolioTimeframe = action.payload }, - setTradePanelDrawerOpen: (state, action: PayloadAction) => { - state.tradePanelDrawerOpen = action.payload - }, setShowTradeHistory: (state, action: PayloadAction) => { state.preferences.showHistory = action.payload }, @@ -214,62 +198,28 @@ const futuresSlice = createSlice({ }, extraReducers: (builder) => { // Markets - builder.addCase(fetchV3Markets.pending, (futuresState) => { + builder.addCase(fetchMarketsV3.pending, (futuresState) => { futuresState.queryStatuses.markets = LOADING_STATUS }) - builder.addCase(fetchV3Markets.fulfilled, (futuresState, { payload }) => { + builder.addCase(fetchMarketsV3.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.markets = SUCCESS_STATUS if (payload) { futuresState.markets[payload.networkId] = payload.markets } }) - builder.addCase(fetchV3Markets.rejected, (futuresState) => { + builder.addCase(fetchMarketsV3.rejected, (futuresState) => { futuresState.queryStatuses.markets = { status: FetchStatus.Error, error: 'Failed to fetch markets', } }) - // Daily volumes - builder.addCase(fetchDailyVolumes.pending, (futuresState) => { - futuresState.queryStatuses.dailyVolumes = LOADING_STATUS - }) - builder.addCase(fetchDailyVolumes.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.dailyVolumes = SUCCESS_STATUS - futuresState.dailyMarketVolumes = action.payload - }) - builder.addCase(fetchDailyVolumes.rejected, (futuresState) => { - futuresState.queryStatuses.dailyVolumes = { - status: FetchStatus.Error, - error: 'Failed to fetch volume data', - } - }) - - // margin transfers - builder.addCase(fetchMarginTransfers.pending, (futuresState) => { - futuresState.queryStatuses.marginTransfers = LOADING_STATUS - }) - builder.addCase(fetchMarginTransfers.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS - if (payload) { - const { context, marginTransfers } = payload - const newAccountData = { marginTransfers } - updateCrossMarginAccount(futuresState, context.network, context.wallet, newAccountData) - } - }) - builder.addCase(fetchMarginTransfers.rejected, (futuresState) => { - futuresState.queryStatuses.marginTransfers = { - status: FetchStatus.Error, - error: 'Failed to fetch margin transfers', - } - }) - // Cross margin positions builder.addCase(fetchCrossMarginPositions.pending, (futuresState) => { - futuresState.queryStatuses.perpsV3Positions = LOADING_STATUS + futuresState.queryStatuses.positions = LOADING_STATUS }) builder.addCase(fetchCrossMarginPositions.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.perpsV3Positions = SUCCESS_STATUS + futuresState.queryStatuses.positions = SUCCESS_STATUS if (!action.payload) return const { account, positions, network } = action.payload const wallet = findWalletForAccount(futuresState, account, network) @@ -278,7 +228,7 @@ const futuresSlice = createSlice({ } }) builder.addCase(fetchCrossMarginPositions.rejected, (futuresState) => { - futuresState.queryStatuses.perpsV3Positions = { + futuresState.queryStatuses.positions = { status: FetchStatus.Error, error: 'Failed to fetch positions', } @@ -320,20 +270,20 @@ const futuresSlice = createSlice({ } }) - // Fetch Cross Margin Trade Preview - builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { - futuresState.queryStatuses.perpsV3TradePreview = LOADING_STATUS - }) - builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { - futuresState.previews[payload.type] = payload.preview - futuresState.queryStatuses.perpsV3TradePreview = SUCCESS_STATUS - }) + // TODO: Fetch Cross Margin Trade Preview + // builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { + // futuresState.queryStatuses.crossMarginTradePreview = LOADING_STATUS + // }) + // builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { + // futuresState.previews[payload.type] = payload.preview + // futuresState.queryStatuses.crossMarginTradePreview = SUCCESS_STATUS + // }) // Fetch cross margin account - builder.addCase(fetchSmartMarginAccount.pending, (futuresState) => { - futuresState.queryStatuses.perpsV3Account = LOADING_STATUS + builder.addCase(fetchPerpsV3Account.pending, (futuresState) => { + futuresState.queryStatuses.account = LOADING_STATUS }) - builder.addCase(fetchSmartMarginAccount.fulfilled, (futuresState, action) => { + builder.addCase(fetchPerpsV3Account.fulfilled, (futuresState, action) => { if (action.payload) { const { network, account, wallet } = action.payload futuresState.accounts[network] = { @@ -344,20 +294,20 @@ const futuresSlice = createSlice({ }, } } - futuresState.queryStatuses.perpsV3Account = SUCCESS_STATUS + futuresState.queryStatuses.account = SUCCESS_STATUS }) - builder.addCase(fetchSmartMarginAccount.rejected, (futuresState) => { - futuresState.queryStatuses.perpsV3Account = { + builder.addCase(fetchPerpsV3Account.rejected, (futuresState) => { + futuresState.queryStatuses.account = { status: FetchStatus.Error, error: 'Failed to fetch account', } }) // Fetch position history - builder.addCase(fetchPerpsV3PositionHistory.pending, (futuresState) => { + builder.addCase(fetchPositionHistoryV3.pending, (futuresState) => { futuresState.queryStatuses.positionHistory = LOADING_STATUS }) - builder.addCase(fetchPerpsV3PositionHistory.fulfilled, (futuresState, { payload }) => { + builder.addCase(fetchPositionHistoryV3.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.positionHistory = SUCCESS_STATUS if (payload) { const { history: positionHistory, networkId, wallet } = payload @@ -366,7 +316,7 @@ const futuresSlice = createSlice({ }) } }) - builder.addCase(fetchPerpsV3PositionHistory.rejected, (futuresState) => { + builder.addCase(fetchPositionHistoryV3.rejected, (futuresState) => { futuresState.queryStatuses.positionHistory = { error: 'Failed to fetch position history', status: FetchStatus.Error, @@ -386,7 +336,7 @@ const futuresSlice = createSlice({ }, }) -export default futuresSlice.reducer +export default crossMarginSlice.reducer export const { handlePreviewError, @@ -399,11 +349,10 @@ export const { setSelectedInputDenomination, setSelectedInputFundingRateHour, setSelectedPortfolioTimeframe, - setTradePanelDrawerOpen, setShowTradeHistory, setSelectedChart, setPerpsV3Account, -} = futuresSlice.actions +} = crossMarginSlice.actions const findWalletForAccount = ( perpsV3State: CrossMarginState, @@ -416,24 +365,6 @@ const findWalletForAccount = ( return entry ? entry[0] : undefined } -const mergeTradesForAccount = ( - perpsV3: CrossMarginState, - network: NetworkId, - wallet: string, - trades: FuturesTrade[] -) => { - const existingTrades = perpsV3.accounts[network]?.[wallet]?.trades ?? [] - trades.forEach((t) => { - if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { - existingTrades.push(t) - } - }) - existingTrades.sort((a, b) => b.timestamp - a.timestamp) - updateCrossMarginAccount(perpsV3, network, wallet, { - trades: trades, - }) -} - const updateCrossMarginAccount = ( futuresState: CrossMarginState, network: NetworkId, diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 11c05f4384..5d40aa6039 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -1,7 +1,9 @@ import { PositionSide } from '@kwenta/sdk/types' +import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' -import { selectPrices } from 'state/prices/selectors' +import { wei } from '@synthetixio/wei' +import { selectPrices } from 'state/prices/selectors' import { RootState } from 'state/store' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { @@ -11,8 +13,13 @@ import { unserializeTrades, updatePositionUpnl, } from 'utils/futures' + import { MarkPrices } from './types' -import { wei } from '@synthetixio/wei' + +export const selectV3MarketKey = createSelector( + (state: RootState) => state.crossMargin.selectedMarketAsset, + (marketAsset) => MarketKeyByAsset[marketAsset] +) export const selectV3Markets = createSelector( selectNetwork, @@ -21,10 +28,18 @@ export const selectV3Markets = createSelector( crossMargin.markets[network] ? unserializeMarkets(crossMargin.markets[network]) : [] ) +export const selectV3MarketInfo = createSelector( + selectV3Markets, + selectV3MarketKey, + (markets, selectedMarket) => { + return markets.find((market) => market.marketKey === selectedMarket) + } +) + export const selectCrossMarginSupportedNetwork = (state: RootState) => state.wallet.networkId === 10 || state.wallet.networkId === 420 -export const selectPerpsV3Account = createSelector( +export const selectCrossMarginAccount = createSelector( selectWallet, selectNetwork, (state: RootState) => state.crossMargin, @@ -117,3 +132,8 @@ export const selectCrossMarginPositions = createSelector( return account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] } ) + +export const selectOpenDelayedOrdersV3 = createSelector(selectCrossMarginAccount, (_) => { + // TODO: Hook up pending v3 orders + return [] +}) diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index d677d5050a..65c892e8ae 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -1,41 +1,20 @@ import { Period } from '@kwenta/sdk/constants' import { - NetworkId, TransactionStatus, - FuturesOrderTypeDisplay, - FuturesPosition, FuturesPositionHistory, FuturesPotentialTradeDetails, - FuturesTrade, FuturesVolumes, PositionSide, FuturesMarketKey, FuturesMarketAsset, - MarginTransfer, FuturesFilledPosition, FuturesMarket, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' -import { AppFuturesMarginType } from 'state/futures/types' import { PricesInfo } from 'state/prices/types' -import { QueryStatus } from 'state/types' -import { FuturesAccountData } from '../shared.ts/types' -export type TradeSizeInputs = { - nativeSize: T - susdSize: T -} - -export type SLTPInputs = { - stopLossPrice?: T - takeProfitPrice?: T -} - -export type TradeInputs = TradeSizeInputs & { - stopLossPrice?: T - takeProfitPrice?: T -} +import { FuturesAccountData, FuturesQueryStatuses, TradeSizeInputs } from '../common/types' export type EditPositionInputs = { nativeSizeDelta: T @@ -56,15 +35,6 @@ export type FundingRate = { fundingRate: T | null } -export type FuturesAction = { - account: string - timestamp: number - asset: FuturesMarketAsset - margin: number - size: number - action: 'trade' | 'deposit' | 'withdraw' -} - export type PerpsV3Portfolio = { account: string timestamp: number @@ -79,21 +49,6 @@ export type PortfolioValues = { total: number } -export type FuturesQueryStatuses = { - markets: QueryStatus - dailyVolumes: QueryStatus - perpsV3Positions: QueryStatus - perpsV3PositionHistory: QueryStatus - openOrders: QueryStatus - perpsV3TradePreview: QueryStatus - perpsV3Account: QueryStatus - positionHistory: QueryStatus - trades: QueryStatus - selectedTraderPositionHistory: QueryStatus - marginTransfers: QueryStatus - historicalFundingRates: QueryStatus -} - export type CrossMarginTransactionType = | 'deposit_perps_v3' | 'withdraw_perps_v3' @@ -119,15 +74,6 @@ export type FundingRatePeriods = { [key: number]: string } -export type AccountContext = { - type: AppFuturesMarginType - network: NetworkId - wallet: string - cmAccount?: string -} - -export type PreviewAction = 'edit' | 'trade' | 'close' - export type CrossMarginAccountData = FuturesAccountData export type CrossMarginState = { @@ -140,12 +86,10 @@ export type CrossMarginState = { close: FuturesPotentialTradeDetails | null edit: FuturesPotentialTradeDetails | null } - selectedType: AppFuturesMarginType confirmationModalOpen: boolean closePositionOrderInputs: ClosePositionInputs previewDebounceCount: number leverageSide: PositionSide - selectedMarketKey: FuturesMarketKey selectedMarketAsset: FuturesMarketAsset leverageInput: string tradeFee: string @@ -176,53 +120,11 @@ export type CrossMarginState = { } > } - tradePanelDrawerOpen: boolean historicalFundingRates: Partial< Record > } -export type TradePreviewResult = { - data: FuturesPotentialTradeDetails | null - error: string | null -} - -export type DelayedOrderWithDetails = { - account: string - marketAddress: string - market: string - asset: FuturesMarketAsset - marketKey: FuturesMarketKey - size: T - commitDeposit: T - keeperDeposit: T - submittedAtTimestamp: number - executableAtTimestamp: number - isOffchain: boolean - desiredFillPrice: T - targetRoundId: T | null - orderType: FuturesOrderTypeDisplay - side: PositionSide - isStale?: boolean - isExecutable?: boolean - isCancelling?: boolean -} - -export type TradePreviewParams = { - market: { - key: FuturesMarketKey - address: string - } - orderPrice: Wei - sizeDelta: Wei - marginDelta: Wei - action: PreviewAction -} - -export type DebouncedPreviewParams = TradePreviewParams & { - debounceCount: number -} - export type SharePositionParams = { asset?: FuturesMarketAsset position?: FuturesFilledPosition diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index e430c5ec8a..e4481718ee 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -1,30 +1,31 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' + +import { + fetchCrossMarginOpenOrders, + fetchCrossMarginPositions, + fetchPerpsV3Account, +} from 'state/futures/crossMargin/actions' +import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' import { useAppSelector, useFetchAction, usePollAction } from 'state/hooks' import { fetchStakingData } from 'state/staking/actions' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { - fetchSmartMarginAccount, - fetchSmartMarginAccountData, fetchFuturesPositionHistory, - fetchSmartMarginOpenOrders, fetchSharedFuturesData, fetchMarginTransfers, - fetchAllTradesForAccount, - fetchCombinedMarginTransfers, } from './actions' +import { selectFuturesType, selectMarkets } from './selectors' +import { + fetchAllV2TradesForAccount, + fetchSmartMarginAccount, + fetchSmartMarginAccountData, + fetchSmartMarginOpenOrders, +} from './smartMargin/actions' import { selectSmartMarginAccount, selectSmartMarginSupportedNetwork, - selectFuturesType, - selectMarkets, -} from './selectors' -import { - fetchCrossMarginOpenOrders, - fetchCrossMarginPositions, - fetchPerpsV3Account, -} from 'state/futures/crossMargin/actions' -import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' -import { FuturesMarginType } from '@kwenta/sdk/types' +} from './smartMargin/selectors' // TODO: Optimise polling and queries @@ -66,7 +67,7 @@ export const usePollMarketFuturesData = () => { dependencies: [wallet, markets.length], disabled: !wallet || !markets.length || selectedAccountType !== FuturesMarginType.CROSS_MARGIN, }) - usePollAction('fetchCrossMarginAccountData', fetchSmartMarginAccountData, { + usePollAction('fetchSmartMarginAccountData', fetchSmartMarginAccountData, { intervalTime: 30000, dependencies: [markets.length, smartMarginAddress], disabled: @@ -91,7 +92,7 @@ export const usePollMarketFuturesData = () => { disabled: !wallet || selectedAccountType !== FuturesMarginType.SMART_MARGIN, }) - usePollAction('fetchAllTradesForAccount', fetchAllTradesForAccount, { + usePollAction('fetchAllV2TradesForAccount', fetchAllV2TradesForAccount, { dependencies: [networkId, wallet, smartMarginAddress, selectedAccountType], intervalTime: 30000, disabled: !wallet, @@ -106,7 +107,7 @@ export const usePollDashboardFuturesData = () => { const networkSupportsCrossMargin = useAppSelector(selectSmartMarginSupportedNetwork) const selectedAccountType = useAppSelector(selectFuturesType) - useFetchAction(fetchCombinedMarginTransfers, { + useFetchAction(fetchMarginTransfers, { dependencies: [networkId, wallet], disabled: !wallet, }) @@ -136,7 +137,7 @@ export const usePollDashboardFuturesData = () => { // dependencies: [wallet, markets.length, networkId, crossMarginAddress], // disabled: !markets.length || !crossMarginAddress, // }) - usePollAction('fetchAllTradesForAccount', fetchAllTradesForAccount, { + usePollAction('fetchAllV2TradesForAccount', fetchAllV2TradesForAccount, { dependencies: [networkId, wallet, selectedAccountType, crossMarginAddress], intervalTime: 30000, disabled: !wallet, diff --git a/packages/app/src/state/futures/reducer.ts b/packages/app/src/state/futures/reducer.ts index 8132d1dd06..af713a266a 100644 --- a/packages/app/src/state/futures/reducer.ts +++ b/packages/app/src/state/futures/reducer.ts @@ -1,69 +1,15 @@ import { Period } from '@kwenta/sdk/constants' -import { - NetworkId, - SmartMarginOrderType, - FuturesMarketAsset, - FuturesMarketKey, - FuturesPotentialTradeDetails, - PositionSide, - FuturesTrade, - FuturesOrderType, -} from '@kwenta/sdk/types' -import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { createSlice, PayloadAction } from '@reduxjs/toolkit' import { DEFAULT_FUTURES_MARGIN_TYPE } from 'constants/defaults' -import { ORDER_PREVIEW_ERRORS } from 'queries/futures/constants' -import { - DEFAULT_MAP_BY_NETWORK, - DEFAULT_QUERY_STATUS, - LOADING_STATUS, - SUCCESS_STATUS, - ZERO_CM_FEES, - ZERO_STATE_CM_ACCOUNT, - ZERO_STATE_TRADE_INPUTS, -} from 'state/constants' -import { FetchStatus } from 'state/types' +import { DEFAULT_MAP_BY_NETWORK } from 'state/constants' -import { - fetchSmartMarginBalanceInfo, - fetchSmartMarginPositions, - fetchMarkets, - fetchDailyVolumes, - refetchPosition, - fetchSmartMarginOpenOrders, - fetchCrossMarginTradePreview, - fetchSmartMarginAccount, - fetchFuturesPositionHistory, - fetchPositionHistoryForTrader, - fetchTradesForSelectedMarket, - fetchAllTradesForAccount, - fetchMarginTransfers, - fetchCombinedMarginTransfers, - fetchFundingRatesHistory, -} from './actions' -import { - SmartMarginAccountData, - SmartMarginState, - EditPositionInputs, - InputCurrencyDenomination, - TradeSizeInputs, - FuturesState, - PreviewAction, - AppFuturesMarginType, - SmartMarginTradeFees, -} from './types' +import { AppFuturesMarginType } from './common/types' +import { InputCurrencyDenomination, FuturesState } from './types' export const FUTURES_INITIAL_STATE: FuturesState = { selectedType: DEFAULT_FUTURES_MARGIN_TYPE, confirmationModalOpen: false, - markets: { - 420: [], - 10: [], - }, - dailyMarketVolumes: {}, - errors: {}, - fundingRates: [], selectedInputDenomination: 'usd', selectedInputHours: 1, selectedChart: 'price', @@ -77,211 +23,25 @@ export const FUTURES_INITIAL_STATE: FuturesState = { selectedTrader: undefined, selectedTraderPositionHistory: DEFAULT_MAP_BY_NETWORK, }, - queryStatuses: { - markets: DEFAULT_QUERY_STATUS, - smartMarginBalanceInfo: DEFAULT_QUERY_STATUS, - dailyVolumes: DEFAULT_QUERY_STATUS, - smartMarginPositions: DEFAULT_QUERY_STATUS, - smartMarginPositionHistory: DEFAULT_QUERY_STATUS, - openOrders: DEFAULT_QUERY_STATUS, - smartMarginTradePreview: DEFAULT_QUERY_STATUS, - smartMarginAccount: DEFAULT_QUERY_STATUS, - positionHistory: DEFAULT_QUERY_STATUS, - selectedTraderPositionHistory: DEFAULT_QUERY_STATUS, - trades: DEFAULT_QUERY_STATUS, - marginTransfers: DEFAULT_QUERY_STATUS, - historicalFundingRates: DEFAULT_QUERY_STATUS, - }, - smartMargin: { - accounts: DEFAULT_MAP_BY_NETWORK, - selectedMarketAsset: FuturesMarketAsset.sETH, - selectedMarketKey: FuturesMarketKey.sETHPERP, - leverageSide: PositionSide.LONG, - orderType: 'market', - orderFeeCap: '0', - leverageInput: '0', - selectedLeverageByAsset: {}, - showSmartMarginOnboard: false, - tradeInputs: ZERO_STATE_TRADE_INPUTS, - sltpModalInputs: { - stopLossPrice: '', - takeProfitPrice: '', - }, - editPositionInputs: { - nativeSizeDelta: '', - marginDelta: '', - }, - fees: ZERO_CM_FEES, - previews: { - trade: null, - close: null, - edit: null, - }, - previewDebounceCount: 0, - marginDelta: '0', - cancellingOrder: undefined, - depositApproved: false, - orderPrice: { - price: undefined, - invalidLabel: undefined, - }, - }, tradePanelDrawerOpen: false, - historicalFundingRates: {}, - closePositionOrderInputs: { - orderType: 'market', - nativeSizeDelta: '', - price: { - value: '', - invalidLabel: undefined, - }, - }, } const futuresSlice = createSlice({ name: 'futures', initialState: FUTURES_INITIAL_STATE, reducers: { - setMarketAsset: (state, action) => { - state.smartMargin.selectedMarketAsset = action.payload - state.smartMargin.selectedMarketKey = MarketKeyByAsset[action.payload as FuturesMarketAsset] - state.smartMargin.tradeInputs = ZERO_STATE_TRADE_INPUTS - state.smartMargin.selectedMarketAsset = action.payload - }, - setOrderType: (state, action: PayloadAction) => { - state.smartMargin.orderType = action.payload - }, - setClosePositionOrderType: (state, action: PayloadAction) => { - state.closePositionOrderInputs.orderType = action.payload - }, - setClosePositionSizeDelta: (state, action: PayloadAction) => { - state.closePositionOrderInputs.nativeSizeDelta = action.payload - }, - setClosePositionPrice: ( - state, - action: PayloadAction<{ value: string; invalidLabel: string | null | undefined }> - ) => { - state.closePositionOrderInputs.price = action.payload - }, - setOrderFeeCap: (state, action) => { - state.smartMargin.orderFeeCap = action.payload - }, - setLeverageSide: (state, action) => { - state.smartMargin.leverageSide = action.payload - }, - setSmartMarginMarginDelta: (state, action: PayloadAction) => { - state.smartMargin.marginDelta = action.payload - }, - setSmartMarginTradeStopLoss: (state, action: PayloadAction) => { - state.smartMargin.tradeInputs.stopLossPrice = action.payload - }, - setSmartMarginTradeTakeProfit: (state, action: PayloadAction) => { - state.smartMargin.tradeInputs.takeProfitPrice = action.payload - }, - setSLTPModalStopLoss: (state, action: PayloadAction) => { - state.smartMargin.sltpModalInputs.stopLossPrice = action.payload - }, - setSLTPModalTakeProfit: (state, action: PayloadAction) => { - state.smartMargin.sltpModalInputs.takeProfitPrice = action.payload - }, setFuturesAccountType: (state, action: PayloadAction) => { state.selectedType = action.payload }, - setSmartMarginTradeInputs: (state, action: PayloadAction>) => { - state.smartMargin.tradeInputs = action.payload - }, - setSmartMarginEditPositionInputs: ( - state, - action: PayloadAction> - ) => { - state.smartMargin.editPositionInputs = action.payload - }, - setSmartMarginOrderPrice: (state, action: PayloadAction) => { - state.smartMargin.orderPrice.price = action.payload - }, - setSmartMarginOrderPriceInvalidLabel: ( - state, - action: PayloadAction - ) => { - state.smartMargin.orderPrice.invalidLabel = action.payload - }, setSelectedInputDenomination: (state, action: PayloadAction) => { state.selectedInputDenomination = action.payload }, setSelectedInputFundingRateHour: (state, action: PayloadAction) => { state.selectedInputHours = action.payload }, - setLeverageInput: (state, action: PayloadAction) => { - state.smartMargin.leverageInput = action.payload - }, - setSmartMarginFees: (state, action: PayloadAction>) => { - state.smartMargin.fees = action.payload - }, - setKeeperDeposit: (state, action: PayloadAction) => { - state.smartMargin.fees.keeperEthDeposit = action.payload - }, - handlePreviewError: ( - futuresState, - { - payload, - }: PayloadAction<{ - error: string - previewType: PreviewAction - }> - ) => { - const message = Object.values(ORDER_PREVIEW_ERRORS).includes(payload.error) - ? payload.error - : 'Failed to get trade preview' - futuresState.queryStatuses.smartMarginTradePreview = { - status: FetchStatus.Error, - error: message, - } - futuresState.smartMargin.previews[payload.previewType] = null - }, - - setSmartMarginAccount: ( - state, - action: PayloadAction<{ wallet: string; account: string; network: NetworkId }> - ) => { - const { account, wallet, network } = action.payload - if (!state.smartMargin.accounts[network]?.[wallet]?.account) { - state.smartMargin.accounts[network] = { - ...state.smartMargin.accounts[network], - [wallet]: { - account: account, - ...ZERO_STATE_CM_ACCOUNT, - }, - } - } - }, - clearAllTradePreviews: (state) => { - state.smartMargin.previews = { - edit: null, - trade: null, - close: null, - } - state.queryStatuses.smartMarginTradePreview = DEFAULT_QUERY_STATUS - }, - setSmartMarginTradePreview: ( - state, - { - payload, - }: PayloadAction<{ - preview: FuturesPotentialTradeDetails | null - type: PreviewAction - }> - ) => { - state.smartMargin.previews[payload.type] = payload.preview - }, - setSmartMarginOrderCancelling: (state, { payload }: PayloadAction) => { - state.smartMargin.cancellingOrder = payload - }, setSelectedTrader: (state, action: PayloadAction) => { state.leaderboard.selectedTrader = action.payload }, - incrementCrossPreviewCount: (state) => { - state.smartMargin.previewDebounceCount = state.smartMargin.previewDebounceCount + 1 - }, setSelectedPortfolioTimeframe: (state, action: PayloadAction) => { state.dashboard.selectedPortfolioTimeframe = action.payload }, @@ -295,368 +55,17 @@ const futuresSlice = createSlice({ state.selectedChart = action.payload }, }, - extraReducers: (builder) => { - // Markets - builder.addCase(fetchMarkets.pending, (futuresState) => { - futuresState.queryStatuses.markets = LOADING_STATUS - }) - builder.addCase(fetchMarkets.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.markets = SUCCESS_STATUS - if (payload) { - futuresState.markets[payload.networkId] = payload.markets - } - }) - builder.addCase(fetchMarkets.rejected, (futuresState) => { - futuresState.queryStatuses.markets = { - status: FetchStatus.Error, - error: 'Failed to fetch markets', - } - }) - - // Smart margin overview - builder.addCase(fetchSmartMarginBalanceInfo.pending, (futuresState) => { - futuresState.queryStatuses.smartMarginBalanceInfo = LOADING_STATUS - }) - builder.addCase(fetchSmartMarginBalanceInfo.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.smartMarginBalanceInfo = SUCCESS_STATUS - if (action.payload) { - const { account, network, balanceInfo } = action.payload - const wallet = findWalletForAccount(futuresState.smartMargin, account, network) - if (wallet) { - updateSmartMarginAccount(futuresState, network, wallet, { balanceInfo }) - } - } - }) - builder.addCase(fetchSmartMarginBalanceInfo.rejected, (futuresState) => { - futuresState.queryStatuses.smartMarginBalanceInfo = { - status: FetchStatus.Error, - error: 'Failed to fetch balance info', - } - }) - - // Daily volumes - builder.addCase(fetchDailyVolumes.pending, (futuresState) => { - futuresState.queryStatuses.dailyVolumes = LOADING_STATUS - }) - builder.addCase(fetchDailyVolumes.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.dailyVolumes = SUCCESS_STATUS - futuresState.dailyMarketVolumes = action.payload - }) - builder.addCase(fetchDailyVolumes.rejected, (futuresState) => { - futuresState.queryStatuses.dailyVolumes = { - status: FetchStatus.Error, - error: 'Failed to fetch volume data', - } - }) - - // margin transfers - builder.addCase(fetchMarginTransfers.pending, (futuresState) => { - futuresState.queryStatuses.marginTransfers = LOADING_STATUS - }) - builder.addCase(fetchMarginTransfers.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS - if (payload) { - const { context, marginTransfers, idleTransfers } = payload - const newAccountData = { - marginTransfers, - idleTransfers, - } - updateSmartMarginAccount(futuresState, context.network, context.wallet, newAccountData) - } - }) - builder.addCase(fetchMarginTransfers.rejected, (futuresState) => { - futuresState.queryStatuses.marginTransfers = { - status: FetchStatus.Error, - error: 'Failed to fetch margin transfers', - } - }) - - // combined margin transfers - builder.addCase(fetchCombinedMarginTransfers.pending, (futuresState) => { - futuresState.queryStatuses.marginTransfers = LOADING_STATUS - }) - builder.addCase(fetchCombinedMarginTransfers.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.marginTransfers = SUCCESS_STATUS - if (payload) { - const { context, smartMarginTransfers, idleTransfers } = payload - const newSmartAccountData = { - marginTransfers: smartMarginTransfers, - idleTransfers, - } - - updateSmartMarginAccount(futuresState, context.network, context.wallet, newSmartAccountData) - } - }) - builder.addCase(fetchCombinedMarginTransfers.rejected, (futuresState) => { - futuresState.queryStatuses.marginTransfers = { - status: FetchStatus.Error, - error: 'Failed to fetch combined margin transfers', - } - }) - - // Cross margin positions - builder.addCase(fetchSmartMarginPositions.pending, (futuresState) => { - futuresState.queryStatuses.smartMarginPositions = LOADING_STATUS - }) - builder.addCase(fetchSmartMarginPositions.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.smartMarginPositions = SUCCESS_STATUS - if (!action.payload) return - const { account, positions, network } = action.payload - const wallet = findWalletForAccount(futuresState.smartMargin, account, network) - if (wallet) { - updateSmartMarginAccount(futuresState, network, wallet, { positions }) - } - }) - builder.addCase(fetchSmartMarginPositions.rejected, (futuresState) => { - futuresState.queryStatuses.smartMarginPositions = { - status: FetchStatus.Error, - error: 'Failed to fetch positions', - } - }) - - // Refetch selected position - builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { - if (payload) { - const { position, wallet, networkId } = payload - const account = futuresState.smartMargin.accounts[networkId]?.[wallet] - - const existingPositions = account?.positions ?? [] - const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) - existingPositions[index] = position - futuresState.smartMargin.accounts[networkId][wallet] = { - ...account, - positions: existingPositions, - } - } - }) - - // Fetch Cross Margin Open Orders - builder.addCase(fetchSmartMarginOpenOrders.pending, (futuresState) => { - futuresState.queryStatuses.openOrders = LOADING_STATUS - }) - builder.addCase(fetchSmartMarginOpenOrders.fulfilled, (futuresState, action) => { - futuresState.queryStatuses.openOrders = SUCCESS_STATUS - if (!action.payload) return - const { network, account, delayedOrders, conditionalOrders } = action.payload - const wallet = findWalletForAccount(futuresState.smartMargin, account, network) - if (wallet) { - updateSmartMarginAccount(futuresState, network, wallet, { - conditionalOrders, - delayedOrders, - }) - } - }) - builder.addCase(fetchSmartMarginOpenOrders.rejected, (futuresState) => { - futuresState.queryStatuses.openOrders = { - status: FetchStatus.Error, - error: 'Failed to fetch open orders for cross margin account', - } - }) - - // Fetch Cross Margin Trade Preview - builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { - futuresState.queryStatuses.smartMarginTradePreview = LOADING_STATUS - }) - builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { - futuresState.smartMargin.previews[payload.type] = payload.preview - futuresState.queryStatuses.smartMarginTradePreview = SUCCESS_STATUS - }) - - // Fetch cross margin account - builder.addCase(fetchSmartMarginAccount.pending, (futuresState) => { - futuresState.queryStatuses.smartMarginAccount = LOADING_STATUS - }) - builder.addCase(fetchSmartMarginAccount.fulfilled, (futuresState, action) => { - if (action.payload) { - const { network, account, wallet } = action.payload - futuresState.smartMargin.accounts[network] = { - ...futuresState.smartMargin.accounts[network], - [wallet]: { - account: account, - ...ZERO_STATE_CM_ACCOUNT, - }, - } - } - futuresState.queryStatuses.smartMarginAccount = SUCCESS_STATUS - }) - builder.addCase(fetchSmartMarginAccount.rejected, (futuresState) => { - futuresState.queryStatuses.smartMarginAccount = { - status: FetchStatus.Error, - error: 'Failed to fetch cross margin account', - } - }) - - // Fetch position history - builder.addCase(fetchFuturesPositionHistory.pending, (futuresState) => { - futuresState.queryStatuses.positionHistory = LOADING_STATUS - }) - builder.addCase(fetchFuturesPositionHistory.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.positionHistory = SUCCESS_STATUS - if (payload) { - const { accountType: type, history: positionHistory, networkId, wallet } = payload - updateSmartMarginAccount(futuresState, networkId, wallet, { - positionHistory, - }) - } - }) - builder.addCase(fetchFuturesPositionHistory.rejected, (futuresState) => { - futuresState.queryStatuses.positionHistory = { - error: 'Failed to fetch position history', - status: FetchStatus.Error, - } - }) - - // Fetch position history for trader - builder.addCase(fetchPositionHistoryForTrader.pending, (futuresState) => { - futuresState.queryStatuses.selectedTraderPositionHistory = LOADING_STATUS - }) - builder.addCase(fetchPositionHistoryForTrader.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.selectedTraderPositionHistory = SUCCESS_STATUS - if (!payload) return - futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId] = { - ...futuresState.leaderboard.selectedTraderPositionHistory[payload.networkId], - [payload.address]: payload.history, - } - }) - builder.addCase(fetchPositionHistoryForTrader.rejected, (futuresState) => { - futuresState.queryStatuses.selectedTraderPositionHistory = { - error: 'Failed to fetch traders position history', - status: FetchStatus.Error, - } - }) - - // Fetch trades for market - builder.addCase(fetchTradesForSelectedMarket.pending, (futuresState) => { - futuresState.queryStatuses.trades = LOADING_STATUS - }) - builder.addCase(fetchTradesForSelectedMarket.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.trades = SUCCESS_STATUS - if (payload) { - const { trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, networkId, wallet, trades) - } - }) - builder.addCase(fetchTradesForSelectedMarket.rejected, (futuresState) => { - futuresState.queryStatuses.trades = { - error: 'Failed to fetch trades', - status: FetchStatus.Error, - } - }) - - // TODO: Combine all with market trades rather than overwrite as the filter is done on selector - - // Fetch all trades for account - builder.addCase(fetchAllTradesForAccount.pending, (futuresState) => { - futuresState.queryStatuses.trades = LOADING_STATUS - }) - builder.addCase(fetchAllTradesForAccount.fulfilled, (futuresState, { payload }) => { - futuresState.queryStatuses.trades = SUCCESS_STATUS - if (payload) { - const { trades, networkId, wallet } = payload - mergeTradesForAccount(futuresState, networkId, wallet, trades) - } - }) - builder.addCase(fetchAllTradesForAccount.rejected, (futuresState) => { - futuresState.queryStatuses.trades = { - error: 'Failed to fetch trades', - status: FetchStatus.Error, - } - }) - - // Fetch funding rates - builder.addCase(fetchFundingRatesHistory.rejected, (futuresState) => { - futuresState.queryStatuses.historicalFundingRates = { - error: 'Failed to fetch funding rates', - status: FetchStatus.Error, - } - }) - builder.addCase(fetchFundingRatesHistory.fulfilled, (futuresState, { payload }) => { - futuresState.historicalFundingRates[payload.marketAsset] = payload.rates - }) - }, }) export default futuresSlice.reducer export const { - handlePreviewError, - setMarketAsset, - setOrderType, - setClosePositionOrderType, - setClosePositionSizeDelta, - setClosePositionPrice, - setOrderFeeCap, - setLeverageSide, setFuturesAccountType, - setSmartMarginTradeInputs, - setSmartMarginAccount, - setSmartMarginMarginDelta, - setSmartMarginTradeStopLoss, - setSmartMarginTradeTakeProfit, - setSmartMarginOrderPrice, - setSmartMarginOrderPriceInvalidLabel, - setLeverageInput, - setSmartMarginFees, - setKeeperDeposit, - clearAllTradePreviews, - setSmartMarginTradePreview, - setSmartMarginOrderCancelling, setSelectedTrader, setSelectedInputDenomination, setSelectedInputFundingRateHour, - setSmartMarginEditPositionInputs, - incrementCrossPreviewCount, setSelectedPortfolioTimeframe, - setSLTPModalStopLoss, - setSLTPModalTakeProfit, setTradePanelDrawerOpen, setShowTradeHistory, setSelectedChart, } = futuresSlice.actions - -const findWalletForAccount = ( - crossMarginState: SmartMarginState, - account: string, - network: NetworkId -) => { - const entry = Object.entries(crossMarginState.accounts[network]).find(([_, value]) => { - return value.account === account - }) - return entry ? entry[0] : undefined -} - -const mergeTradesForAccount = ( - futuresState: FuturesState, - network: NetworkId, - wallet: string, - trades: FuturesTrade[] -) => { - const existingTrades = futuresState.smartMargin.accounts[network]?.[wallet]?.trades ?? [] - trades.forEach((t) => { - if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { - existingTrades.push(t) - } - }) - existingTrades.sort((a, b) => b.timestamp - a.timestamp) - updateSmartMarginAccount(futuresState, network, wallet, { - trades: trades, - }) -} - -export const updateSmartMarginAccount = ( - futuresState: FuturesState, - network: NetworkId, - wallet: string, - newAccountData: Partial -) => { - const updatedAccount = { - ...ZERO_STATE_CM_ACCOUNT, - ...futuresState.smartMargin.accounts[network]?.[wallet], - ...newAccountData, - } - - futuresState.smartMargin.accounts[network] = { - ...futuresState.smartMargin.accounts[network], - [wallet]: updatedAccount, - } -} diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index 826f5c0247..88b212e1a4 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -6,21 +6,21 @@ import { PositionSide, FuturesMarginType, } from '@kwenta/sdk/types' -import { - truncateTimestamp, - calculateDesiredFillPrice, - getDefaultPriceImpact, - unserializePotentialTrade, - MarketKeyByAsset, - MarketAssetByKey, - stripZeros, -} from '@kwenta/sdk/utils' +import { truncateTimestamp, MarketKeyByAsset, MarketAssetByKey } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' -import { DEFAULT_DELAYED_CANCEL_BUFFER, DEFAULT_LEVERAGE } from 'constants/defaults' import { ETH_UNIT } from 'constants/network' -import { selectSusdBalance } from 'state/balances/selectors' +import { + selectAllCrossMarginTrades, + selectCrossMarginAccountData, + selectCrossMarginMarginTransfers, + selectCrossMarginPositionHistory, + selectCrossMarginPositions, + selectV3MarketInfo, + selectV3MarketKey, + selectV3Markets, +} from 'state/futures/crossMargin/selectors' import { deserializeWeiObject } from 'state/helpers' import { selectOffchainPricesInfo, @@ -28,22 +28,31 @@ import { selectPrices, } from 'state/prices/selectors' import { RootState } from 'state/store' -import { FetchStatus } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' -import { computeDelayedOrderFee, sameSide } from 'utils/costCalculations' import { getKnownError } from 'utils/formatters/error' import { - unserializeCmBalanceInfo, unserializeFuturesVolumes, - unserializeTradeInputs, - unserializeMarkets, - unserializeDelayedOrders, updatePositionUpnl, unserializePositionHistory, unserializeTrades, unserializeConditionalOrders, } from 'utils/futures' +import { CrossPerpsPortfolio } from './crossMargin/types' +import { + selectIdleMarginTransfers, + selectMarginDeltaInputValue, + selectOpenDelayedOrders, + selectPerpsV2Markets, + selectSmartMarginAccount, + selectSmartMarginAccountData, + selectSmartMarginBalanceInfo, + selectSmartMarginMarginDelta, + selectTradePreview, + selectV2MarketInfo, + selectV2MarketKey, +} from './smartMargin/selectors' +import { SmartPerpsPortfolio } from './smartMargin/types' import { FuturesAction, MarkPrices, @@ -51,73 +60,34 @@ import { MarkPriceInfos, PortfolioValues, } from './types' -import { - selectAllCrossMarginTrades, - selectCrossMarginAccountData, - selectCrossMarginMarginTransfers, - selectCrossMarginPositionHistory, - selectCrossMarginPositions, - selectCrossMarginTradeInputs, - selectV3Markets, -} from 'state/futures/crossMargin/selectors' -import { CrossPerpsPortfolio } from './crossMargin/types' -import { SmartPerpsPortfolio } from './smartMargin.ts/types' export const selectFuturesType = (state: RootState) => state.futures.selectedType -export const selectSmartMarginAccount = createSelector( - selectWallet, - selectNetwork, - (state: RootState) => state.futures.smartMargin, - (wallet, network, smartMargin) => { - return wallet ? smartMargin.accounts[network]?.[wallet]?.account : undefined - } -) - -export const selectQueryStatuses = (state: RootState) => state.futures.queryStatuses - -export const selectMarketsQueryStatus = (state: RootState) => state.futures.queryStatuses.markets - -export const selectSmartMarginAccountQueryStatus = (state: RootState) => - state.futures.queryStatuses.smartMarginAccount - -export const selectLeverageInput = createSelector( - (state: RootState) => state.futures, +export const selectFuturesState = createSelector( selectFuturesType, - (futures, type) => futures.smartMargin.leverageInput + (state: RootState) => state, + (type, state) => (type === FuturesMarginType.CROSS_MARGIN ? state.crossMargin : state.smartMargin) ) -export const selectSmartMarginMarginDelta = createSelector( - (state: RootState) => state.futures, - (futures) => wei(futures.smartMargin.marginDelta || 0) +export const selectQueryStatuses = createSelector( + selectFuturesState, + (state) => state.queryStatuses ) -export const selectMarginDeltaInputValue = (state: RootState) => - state.futures.smartMargin.marginDelta - -export const selectSmartMarginSupportedNetwork = (state: RootState) => - state.wallet.networkId === 10 || state.wallet.networkId === 420 - -export const selectShowSmartMarginOnboard = (state: RootState) => - state.app.showModal === 'futures_smart_margin_onboard' +export const selectMarketsQueryStatus = createSelector( + selectQueryStatuses, + (statuses) => statuses.markets +) -export const selectEditPositionModalMarket = (state: RootState) => - state.app.showPositionModal?.marketKey +export const selectLeverageInput = createSelector( + selectFuturesState, + (state) => state.leverageInput +) export const selectSelectedTrader = (state: RootState) => state.futures.leaderboard.selectedTrader export const selectShowHistory = (state: RootState) => !!state.futures.preferences.showHistory -export const selectSmartMarginAccountData = createSelector( - selectWallet, - selectNetwork, - selectSmartMarginSupportedNetwork, - (state: RootState) => state.futures.smartMargin, - (wallet, network, supportedNetwork, smartMargin) => { - return wallet && supportedNetwork ? smartMargin.accounts[network][wallet] : null - } -) - export const selectAccountData = createSelector( selectFuturesType, selectSmartMarginAccountData, @@ -126,34 +96,22 @@ export const selectAccountData = createSelector( type === FuturesMarginType.SMART_MARGIN ? smartAccountData : crossAccountData ) -export const selectCMBalance = createSelector(selectSmartMarginAccountData, (account) => - wei(account?.balanceInfo.freeMargin || 0) -) - -export const selectMarketKey = createSelector( - (state: RootState) => state.futures.smartMargin.selectedMarketAsset, - (marketAsset) => MarketKeyByAsset[marketAsset] -) - export const selectMarketAsset = createSelector( - (state: RootState) => state.futures, - (futures) => futures.smartMargin.selectedMarketAsset + selectFuturesState, + (state) => state.selectedMarketAsset ) export const selectMarkets = createSelector( selectFuturesType, - selectNetwork, + selectPerpsV2Markets, selectV3Markets, - (state: RootState) => state.futures, - (futuresType, network, v3Markets, futures) => { - if (futuresType === FuturesMarginType.CROSS_MARGIN) return v3Markets - return futures.markets[network] ? unserializeMarkets(futures.markets[network]) : [] + (futuresType, v2Markets, v3Markets) => { + return futuresType === FuturesMarginType.CROSS_MARGIN ? v3Markets : v2Markets } ) -export const selectMarketVolumes = createSelector( - (state: RootState) => state.futures.dailyMarketVolumes, - (dailyMarketVolumes) => unserializeFuturesVolumes(dailyMarketVolumes) +export const selectMarketVolumes = createSelector(selectFuturesState, (state) => + unserializeFuturesVolumes(state.dailyMarketVolumes) ) export const selectMarketKeys = createSelector(selectMarkets, (markets) => @@ -164,25 +122,19 @@ export const selectMarketAssets = createSelector(selectMarkets, (markets) => markets.map(({ asset }) => asset) ) -export const selectMarketInfo = createSelector( - selectMarkets, - selectMarketKey, - (markets, selectedMarket) => { - return markets.find((market) => market.marketKey === selectedMarket) - } -) - -export const selectOrderType = createSelector( - (state: RootState) => state.futures, - (futures) => futures.smartMargin.orderType +export const selectMarketKey = createSelector( + selectFuturesType, + selectV2MarketKey, + selectV3MarketKey, + (type, v2Key, v3Key) => (type === FuturesMarginType.CROSS_MARGIN ? v3Key : v2Key) ) -export const selectSmartMarginOrderType = (state: RootState) => state.futures.smartMargin.orderType - -export const selectClosePositionOrderInputs = createSelector( - (state: RootState) => state.futures, - (futures) => { - return futures.closePositionOrderInputs +export const selectMarketInfo = createSelector( + selectFuturesType, + selectV2MarketInfo, + selectV3MarketInfo, + (type, v2MarketInfo, v3MarketInfo) => { + return type === FuturesMarginType.SMART_MARGIN ? v2MarketInfo : v3MarketInfo } ) @@ -487,8 +439,10 @@ export const selectIsExecutingOrder = createSelector( } ) +export const selectLeverageSide = createSelector(selectFuturesState, (state) => state.leverageSide) + export const selectIsMarketCapReached = createSelector( - (state: RootState) => state.futures.smartMargin.leverageSide, + selectLeverageSide, selectMarketInfo, selectMarketIndexPrice, (leverageSide, marketInfo, marketAssetRate) => { @@ -513,14 +467,6 @@ export const selectPosition = createSelector( } ) -export const selectOrderFeeCap = (state: RootState) => - wei(state.futures.smartMargin.orderFeeCap || '0') - -export const selectLeverageSide = createSelector( - (state: RootState) => state.futures, - (futures) => futures.smartMargin.leverageSide -) - export const selectMaxLeverage = createSelector( selectPosition, selectMarketInfo, @@ -553,24 +499,29 @@ export const selectAboveMaxLeverage = createSelector( } ) -export const selectSmartMarginBalanceInfo = createSelector( - selectSmartMarginAccountData, - (account) => { - return account - ? unserializeCmBalanceInfo(account.balanceInfo) - : { - freeMargin: wei(0), - keeperEthBal: wei(0), - allowance: wei(0), - } - } -) +export const selectPlaceOrderTranslationKey = createSelector( + selectPosition, + selectSmartMarginMarginDelta, + selectSmartMarginBalanceInfo, + selectFuturesType, + (state: RootState) => state.smartMargin.orderType, + selectIsMarketCapReached, + (position, marginDelta, { freeMargin }, selectedType, orderType) => { + let remainingMargin + if (selectedType === FuturesMarginType.SMART_MARGIN) { + remainingMargin = position?.remainingMargin || ZERO_WEI + } else { + remainingMargin = marginDelta + } -export const selectSmartMarginDepositApproved = createSelector( - selectSmartMarginAccountData, - (account) => { - if (!account) return false - return wei(account.balanceInfo.allowance || 0).gt(0) + if (selectedType === FuturesMarginType.SMART_MARGIN) + return remainingMargin.add(freeMargin).lt('50') + ? 'futures.market.trade.button.deposit-margin-minimum' + : 'futures.market.trade.button.place-delayed-order' + if (orderType === 'limit') return 'futures.market.trade.button.place-limit-order' + if (orderType === 'stop_market') return 'futures.market.trade.button.place-stop-order' + if (!!position?.position) return 'futures.market.trade.button.modify-position' + return 'futures.market.trade.button.open-position' } ) @@ -601,121 +552,11 @@ export const selectRemainingMarketMargin = createSelector(selectPosition, (posit return position.remainingMargin }) -export const selectMarginInMarkets = (isSuspended: boolean = false) => - createSelector(selectSmartMarginPositions, selectMarkets, (positions, markets) => { - const idleInMarkets = positions - .filter((p) => { - const market = markets.find((m) => m.marketKey === p.marketKey) - return market && market.isSuspended === isSuspended - }) - .filter((p) => !p.position?.size.abs().gt(0) && p.remainingMargin.gt(0)) - .reduce((acc, p) => acc.add(p.remainingMargin), wei(0)) - return idleInMarkets - }) - -export const selectAvailableMarginInMarkets = selectMarginInMarkets() - -export const selectLockedMarginInMarkets = selectMarginInMarkets(true) - -export const selectIdleMargin = createSelector( - selectAvailableMarginInMarkets, - selectSmartMarginBalanceInfo, - selectSusdBalance, - (idleInMarkets, { freeMargin }, balance) => { - return balance.add(idleInMarkets).add(freeMargin) - } -) - -export const selectSmartMarginAllowanceValid = createSelector( - selectSmartMarginAccountData, - selectSmartMarginBalanceInfo, - selectAvailableMarginInMarkets, - selectSmartMarginMarginDelta, - (account, { freeMargin }, idleInMarkets, marginDelta) => { - const totalIdleMargin = freeMargin.add(idleInMarkets) - if (!account) return false - const marginDeposit = marginDelta.sub(totalIdleMargin) - return ( - totalIdleMargin.gte(marginDelta) || wei(account.balanceInfo.allowance || 0).gte(marginDeposit) - ) - } -) - -export const selectWithdrawableSmartMargin = createSelector( - selectAvailableMarginInMarkets, - selectSmartMarginBalanceInfo, - (idleInMarkets, { freeMargin }) => { - return idleInMarkets.add(freeMargin) - } -) - -export const selectSmartMarginTradeInputs = createSelector( - selectLeverageSide, - (state: RootState) => state.futures.smartMargin.tradeInputs, - (side, tradeInputs) => { - const inputs = unserializeTradeInputs(tradeInputs) - const deltas = { - susdSizeDelta: side === PositionSide.LONG ? inputs.susdSize : inputs.susdSize.neg(), - nativeSizeDelta: side === PositionSide.LONG ? inputs.nativeSize : inputs.nativeSize.neg(), - } - return { - ...inputs, - ...deltas, - susdSizeString: tradeInputs.susdSize, - nativeSizeString: tradeInputs.nativeSize, - } - } -) - -export const selectSmartMarginEditPosInputs = (state: RootState) => - state.futures.smartMargin.editPositionInputs - -export const selectEditMarginAllowanceValid = createSelector( - selectSmartMarginAccountData, - selectSmartMarginBalanceInfo, - selectAvailableMarginInMarkets, - selectSmartMarginEditPosInputs, - (account, { freeMargin }, idleInMarkets, { marginDelta }) => { - const totalIdleMargin = freeMargin.add(idleInMarkets) - if (!account) return false - if (isNaN(Number(marginDelta))) return false - const marginDelatWei = wei(marginDelta || 0) - const marginDeposit = marginDelatWei.sub(totalIdleMargin) - return ( - totalIdleMargin.gte(marginDelatWei) || - wei(account.balanceInfo.allowance || 0).gte(marginDeposit) - ) - } -) - export const selectSelectedInputDenomination = (state: RootState) => state.futures.selectedInputDenomination export const selectSelectedInputHours = (state: RootState) => state.futures.selectedInputHours -export const selectKeeperEthBalance = createSelector(selectSmartMarginAccountData, (account) => - wei(account?.balanceInfo.keeperEthBal || 0) -) - -export const selectWalletEthBalance = createSelector(selectSmartMarginAccountData, (account) => - wei(account?.balanceInfo.walletEthBal || 0) -) - -export const selectSmartMarginKeeperDeposit = createSelector( - (state: RootState) => state.futures.smartMargin.fees, - (fees) => { - return wei(fees.keeperEthDeposit) - } -) - -export const selectKeeperDepositExceedsBal = createSelector( - selectSmartMarginKeeperDeposit, - selectWalletEthBalance, - (keeperEthDeposit, walletEthBalance) => { - return keeperEthDeposit.gt(walletEthBalance) - } -) - export const selectTradeSizeInputsDisabled = createSelector( selectMarginDeltaInputValue, selectFuturesType, @@ -729,201 +570,6 @@ export const selectTradeSizeInputsDisabled = createSelector( } ) -export const selectEditPositionModalInfo = createSelector( - selectFuturesType, - selectEditPositionModalMarket, - selectSmartMarginPositions, - selectCrossMarginPositions, - selectMarkets, - selectPrices, - (type, modalMarketKey, smartPositions, crossPositions, markets, prices) => { - const contextPositions = - type === FuturesMarginType.CROSS_MARGIN ? crossPositions : smartPositions - const position = contextPositions.find((p) => p.marketKey === modalMarketKey) - const market = markets.find((m) => m.marketKey === modalMarketKey) - if (!market) return { position: null, market: null, marketPrice: wei(0) } - const price = prices[market.asset] - // Note this assumes the order type is always delayed off chain - return { position, market, marketPrice: price.offChain || wei(0) } - } -) - -export const selectConditionalOrdersForMarket = createSelector( - selectMarketAsset, - selectSmartMarginAccountData, - selectFuturesType, - (asset, account, futuresType) => { - if (futuresType !== FuturesMarginType.SMART_MARGIN) return [] - return account - ? unserializeConditionalOrders(account.conditionalOrders).filter((o) => o.asset === asset) - : [] - } -) - -export const selectStopLossOrder = createSelector( - selectConditionalOrdersForMarket, - selectMarketKey, - (selectOpenConditionalOrders, marketKey) => { - return selectOpenConditionalOrders.find( - (o) => - o.marketKey === marketKey && o.orderType === ConditionalOrderTypeEnum.STOP && o.reduceOnly - ) - } -) - -export const selectTakeProfitOrder = createSelector( - selectConditionalOrdersForMarket, - selectMarketKey, - (selectOpenConditionalOrders, marketKey) => { - return selectOpenConditionalOrders.find( - (o) => - o.marketKey === marketKey && o.orderType === ConditionalOrderTypeEnum.LIMIT && o.reduceOnly - ) - } -) - -export const selectAllSLTPOrders = createSelector(selectAllConditionalOrders, (orders) => { - return orders.filter((o) => o.reduceOnly && o.size.abs().eq(SL_TP_MAX_SIZE)) -}) - -export const selectSLTPModalExistingPrices = createSelector( - selectAllSLTPOrders, - selectEditPositionModalInfo, - (orders, { market }) => { - const sl = orders.find( - (o) => o.marketKey === market?.marketKey && o.orderType === ConditionalOrderTypeEnum.STOP - ) - const tp = orders.find( - (o) => o.marketKey === market?.marketKey && o.orderType === ConditionalOrderTypeEnum.LIMIT - ) - - return { - takeProfitPrice: tp?.targetPrice ? stripZeros(tp.targetPrice.toString()) : '', - stopLossPrice: sl?.targetPrice ? stripZeros(sl.targetPrice.toString()) : '', - } - } -) - -export const selectSlTpTradeInputs = createSelector( - (state: RootState) => state.futures.smartMargin.tradeInputs, - (tradeInputs) => ({ - stopLossPrice: tradeInputs.stopLossPrice || '', - takeProfitPrice: tradeInputs.takeProfitPrice || '', - }) -) - -export const selectNewTradeHasSlTp = createSelector( - (state: RootState) => state.futures.smartMargin.tradeInputs, - (tradeInputs) => Number(tradeInputs.stopLossPrice) > 0 || Number(tradeInputs.takeProfitPrice) > 0 -) - -export const selectSlTpModalInputs = createSelector( - (state: RootState) => state.futures.smartMargin.sltpModalInputs, - (inputs) => ({ - stopLossPrice: inputs.stopLossPrice ?? '', - takeProfitPrice: inputs.takeProfitPrice ?? '', - }) -) - -export const selectSmartMarginOrderPrice = (state: RootState) => - state.futures.smartMargin.orderPrice.price ?? '' - -export const selectTradePreview = createSelector( - selectSmartMarginTradeInputs, - selectSmartMarginOrderPrice, - selectOrderType, - (state: RootState) => state.futures, - ({ nativeSizeDelta }, orderPrice, orderType, futures) => { - const preview = futures.smartMargin.previews.trade - const unserialized = preview ? unserializePotentialTrade(preview) : null - if (unserialized) { - const priceImpact = getDefaultPriceImpact(orderType) - const conditionalOrderPrice = wei(orderPrice || 0) - const price = - orderType !== 'market' && conditionalOrderPrice.gt(0) - ? conditionalOrderPrice - : unserialized.price - const desiredFillPrice = calculateDesiredFillPrice(nativeSizeDelta, price, priceImpact) - - return { - ...unserialized, - desiredFillPrice, - leverage: unserialized.margin.gt(0) - ? unserialized.notionalValue.div(unserialized.margin).abs() - : wei(0), - } - } - return null - } -) - -export const selectEditPositionPreview = createSelector( - selectSmartMarginEditPosInputs, - (state: RootState) => state.futures, - ({ nativeSizeDelta }, futures) => { - if (isNaN(Number(nativeSizeDelta))) return null - const preview = futures.smartMargin.previews.edit - const unserialized = preview ? unserializePotentialTrade(preview) : null - if (unserialized) { - const priceImpact = getDefaultPriceImpact('market') - const desiredFillPrice = calculateDesiredFillPrice( - wei(nativeSizeDelta || 0), - unserialized.price, - priceImpact - ) - - return { - ...unserialized, - desiredFillPrice, - leverage: unserialized.margin.gt(0) - ? unserialized.notionalValue.div(unserialized.margin).abs() - : wei(0), - } - } - return null - } -) - -export const selectClosePositionPreview = createSelector( - selectFuturesType, - selectEditPositionModalInfo, - selectClosePositionOrderInputs, - (state: RootState) => state.futures, - (type, { position }, { price, orderType }, futures) => { - const preview = futures.smartMargin.previews.close - const unserialized = preview ? unserializePotentialTrade(preview) : null - if (unserialized) { - const priceImpact = getDefaultPriceImpact(orderType) - let orderPrice = - (orderType === 'market' ? unserialized.price : wei(price?.value || 0)) ?? wei(0) - const desiredFillPrice = calculateDesiredFillPrice( - position?.position?.side === PositionSide.LONG ? wei(-1) : wei(1), - orderPrice, - priceImpact - ) - - return { - ...unserialized, - desiredFillPrice, - leverage: unserialized.margin.gt(0) - ? unserialized.notionalValue.div(unserialized.margin).abs() - : wei(0), - } - } - return null - } -) - -export const selectCrossMarginLeverage = createSelector( - selectPosition, - selectCrossMarginTradeInputs, - (position, { susdSize }) => { - const remainingMargin = position?.remainingMargin - if (!remainingMargin || remainingMargin.eq(0) || !susdSize) return wei(0) - return susdSize.div(remainingMargin) - } -) - export const selectNextPriceDisclaimer = createSelector( selectMaxLeverage, selectLeverageInput, @@ -932,32 +578,6 @@ export const selectNextPriceDisclaimer = createSelector( } ) -export const selectPlaceOrderTranslationKey = createSelector( - selectPosition, - selectSmartMarginMarginDelta, - selectSmartMarginBalanceInfo, - selectFuturesType, - (state: RootState) => state.futures.smartMargin.orderType, - selectIsMarketCapReached, - (position, marginDelta, { freeMargin }, selectedType, orderType) => { - let remainingMargin - if (selectedType === FuturesMarginType.SMART_MARGIN) { - remainingMargin = position?.remainingMargin || ZERO_WEI - } else { - remainingMargin = marginDelta - } - - if (selectedType === FuturesMarginType.SMART_MARGIN) - return remainingMargin.add(freeMargin).lt('50') - ? 'futures.market.trade.button.deposit-margin-minimum' - : 'futures.market.trade.button.place-delayed-order' - if (orderType === 'limit') return 'futures.market.trade.button.place-limit-order' - if (orderType === 'stop_market') return 'futures.market.trade.button.place-stop-order' - if (!!position?.position) return 'futures.market.trade.button.modify-position' - return 'futures.market.trade.button.open-position' - } -) - export const selectFuturesPortfolio = createSelector( selectSmartMarginPositions, selectCrossMarginPositions, @@ -1005,58 +625,6 @@ export const selectMarketMarginTransfers = createSelector( } ) -export const selectIdleMarginTransfers = createSelector( - selectWallet, - selectNetwork, - (state: RootState) => state.futures, - (wallet, network, futures) => { - if (!wallet) return [] - const account = futures.smartMargin.accounts[network]?.[wallet] - return account?.idleTransfers ?? [] - } -) - -export const selectOpenDelayedOrders = createSelector( - selectAccountData, - selectMarkets, - (account, markets) => { - const orders = unserializeDelayedOrders(account?.delayedOrders ?? []) - - return orders.map((o) => { - const timePastExecution = Math.floor((Date.now() - o.executableAtTimestamp) / 1000) - const market = markets.find((m) => m.marketKey === o.marketKey) - return { - ...o, - isStale: - timePastExecution > - DEFAULT_DELAYED_CANCEL_BUFFER + (market?.settings.offchainDelayedOrderMaxAge ?? 0), - } - }) - } -) - -export const selectTradePreviewError = createSelector( - selectFuturesType, - (state: RootState) => state.futures, - (type, futures) => { - // TODO: cross margin error - return type === FuturesMarginType.SMART_MARGIN - ? futures.queryStatuses.smartMarginTradePreview.error - : undefined - } -) - -export const selectIsFetchingTradePreview = createSelector( - selectFuturesType, - (state: RootState) => state.futures, - (type, futures) => { - // TODO: cross margin loading state - return type === FuturesMarginType.SMART_MARGIN - ? futures.queryStatuses.smartMarginTradePreview.status === FetchStatus.Loading - : false - } -) - export const selectModifyPositionError = createSelector( (state: RootState) => state.app, (app) => { @@ -1066,15 +634,6 @@ export const selectModifyPositionError = createSelector( } ) -export const selectTradePreviewStatus = createSelector( - selectFuturesType, - (state: RootState) => state.futures, - (type, futures) => { - // TODO: cross margin loading state - return futures.queryStatuses.smartMarginTradePreview - } -) - export const selectPendingDelayedOrder = createSelector( selectOpenDelayedOrders, selectMarketKey, @@ -1083,39 +642,6 @@ export const selectPendingDelayedOrder = createSelector( } ) -export const selectIsConditionalOrder = createSelector( - (state: RootState) => state.futures.smartMargin.orderType, - (type) => type === 'limit' || type === 'stop_market' -) - -export const selectDelayedOrderFee = createSelector( - selectMarketInfo, - selectSmartMarginTradeInputs, - selectSkewAdjustedPrice, - (market, { nativeSizeDelta }, price) => { - if ( - !market?.marketSkew || - !market?.feeRates.takerFeeOffchainDelayedOrder || - !market?.feeRates.makerFeeOffchainDelayedOrder || - !nativeSizeDelta - ) { - return { commitDeposit: undefined, delayedOrderFee: undefined } - } - - const notionalDiff = nativeSizeDelta.mul(price) - - const makerFee = market.feeRates.makerFeeOffchainDelayedOrder - const takerFee = market.feeRates.takerFeeOffchainDelayedOrder - - const staticRate = sameSide(notionalDiff, market.marketSkew) ? takerFee : makerFee - - return { - commitDeposit: notionalDiff.mul(staticRate).abs(), - delayedOrderFee: notionalDiff.mul(staticRate).abs(), - } - } -) - export const selectOpenInterest = createSelector(selectMarkets, (futuresMarkets) => futuresMarkets.reduce( (total, { openInterest }) => total.add(openInterest.shortUSD).add(openInterest.longUSD), @@ -1402,9 +928,6 @@ export const selectPortfolioChartData = createSelector( } ) -export const selectCancellingConditionalOrder = (state: RootState) => - state.futures.smartMargin.cancellingOrder - export const selectHasRemainingMargin = createSelector( selectPosition, selectFuturesType, @@ -1417,14 +940,6 @@ export const selectHasRemainingMargin = createSelector( } ) -export const selectOrderFee = createSelector( - selectMarketInfo, - selectSmartMarginTradeInputs, - (marketInfo, { susdSizeDelta }) => { - return computeDelayedOrderFee(marketInfo, susdSizeDelta) - } -) - export const selectMaxUsdSizeInput = createSelector( selectFuturesType, selectPosition, @@ -1464,30 +979,6 @@ export const selectAvailableOi = createSelector(selectMarketInfo, (marketInfo) = } }) -export const selectPreviewAvailableMargin = createSelector( - selectMarketInfo, - selectTradePreview, - selectDelayedOrderFee, - (marketInfo, tradePreview, delayedOrderFee) => { - if (!marketInfo || !tradePreview) return ZERO_WEI - - let inaccessible = tradePreview.notionalValue.div(marketInfo.appMaxLeverage).abs() ?? ZERO_WEI - const totalDeposit = !!delayedOrderFee.commitDeposit - ? delayedOrderFee.commitDeposit.add(marketInfo.keeperDeposit) - : ZERO_WEI - - // If the user has a position open, we'll enforce a min initial margin requirement. - if (inaccessible.gt(0) && inaccessible.lt(marketInfo.minInitialMargin)) { - inaccessible = marketInfo.minInitialMargin - } - - // check if available margin will be less than 0 - return tradePreview.margin.sub(inaccessible).sub(totalDeposit).gt(0) - ? tradePreview.margin.sub(inaccessible).sub(totalDeposit).abs() - : ZERO_WEI - } -) - export const selectAverageEntryPrice = createSelector( selectTradePreview, selectSelectedMarketPositionHistory, @@ -1549,39 +1040,6 @@ export const selectPositionPreviewData = createSelector( } ) -export const selectPreviewMarginChange = createSelector( - selectTradePreview, - selectPreviewAvailableMargin, - selectMarketInfo, - (tradePreview, previewAvailableMargin, marketInfo) => { - const potentialMarginUsage = tradePreview?.margin.gt(0) - ? tradePreview!.margin.sub(previewAvailableMargin).div(tradePreview!.margin).abs() ?? ZERO_WEI - : ZERO_WEI - - const maxPositionSize = - !!tradePreview && !!marketInfo - ? tradePreview.margin - .mul(marketInfo.appMaxLeverage) - .mul(tradePreview.side === PositionSide.LONG ? 1 : -1) - : null - - const potentialBuyingPower = !!maxPositionSize - ? maxPositionSize.sub(tradePreview?.notionalValue).abs() - : ZERO_WEI - - return { - showPreview: !!tradePreview && tradePreview.sizeDelta.abs().gt(0), - totalMargin: tradePreview?.margin || ZERO_WEI, - availableMargin: previewAvailableMargin.gt(0) ? previewAvailableMargin : ZERO_WEI, - buyingPower: potentialBuyingPower.gt(0) ? potentialBuyingPower : ZERO_WEI, - marginUsage: potentialMarginUsage.gt(1) ? wei(1) : potentialMarginUsage, - } - } -) - -export const selectSmartMarginPreviewCount = (state: RootState) => - state.futures.smartMargin.previewDebounceCount - export const selectBuyingPower = createSelector( selectPosition, selectMaxLeverage, diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts new file mode 100644 index 0000000000..735dac0c42 --- /dev/null +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -0,0 +1,1394 @@ +import KwentaSDK from '@kwenta/sdk' +import { + DEFAULT_PRICE_IMPACT_DELTA_PERCENT, + ORDER_KEEPER_ETH_DEPOSIT, + SL_TP_MAX_SIZE, + ZERO_ADDRESS, + ZERO_WEI, +} from '@kwenta/sdk/constants' +import { + FuturesMarket, + ConditionalOrder, + FuturesPosition, + FuturesPositionHistory, + FuturesPotentialTradeDetails, + FuturesTrade, + FuturesVolumes, + MarginTransfer, + PositionSide, + PotentialTradeStatus, + SmartMarginOrderInputs, + ConditionalOrderTypeEnum, + SLTPOrderInputs, + FuturesMarketKey, + FuturesMarketAsset, + NetworkId, + TransactionStatus, + FuturesMarginType, +} from '@kwenta/sdk/types' +import { + calculateDesiredFillPrice, + getTradeStatusMessage, + serializePotentialTrade, + marketOverrides, + floorNumber, +} from '@kwenta/sdk/utils' +import { createAsyncThunk } from '@reduxjs/toolkit' +import Wei, { wei } from '@synthetixio/wei' +import { debounce } from 'lodash' + +import { notifyError } from 'components/ErrorNotifier' +import { monitorAndAwaitTransaction } from 'state/app/helpers' +import { + handleTransactionError, + setOpenModal, + setShowPositionModal, + setTransaction, +} from 'state/app/reducer' +import { fetchBalances } from 'state/balances/actions' +import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' +import { fetchMarketsV3 } from 'state/futures/crossMargin/actions' +import { serializeWeiObject } from 'state/helpers' +import { AppDispatch, AppThunk, RootState } from 'state/store' +import { ThunkConfig } from 'state/types' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { computeDelayedOrderFee } from 'utils/costCalculations' +import { + formatDelayedOrders, + orderPriceInvalidLabel, + serializeCmBalanceInfo, + serializeDelayedOrders, + serializeConditionalOrders, + serializeFuturesVolumes, + serializeMarkets, + serializePositionHistory, + serializeTrades, +} from 'utils/futures' +import logError from 'utils/logError' +import { refetchWithComparator } from 'utils/queries' + +import { + AccountContext, + DebouncedPreviewParams, + DelayedOrderWithDetails, + PreviewAction, + TradePreviewParams, +} from '../common/types' + +import { + handlePreviewError, + setSmartMarginAccount, + setSmartMarginFees, + setSmartMarginMarginDelta, + setSmartMarginOrderCancelling, + setSmartMarginOrderPrice, + setSmartMarginOrderPriceInvalidLabel, + setSmartMarginTradeInputs, + setSmartMarginTradePreview, + setSmartMarginLeverageInput, + setLeverageSide, + setSmartMarginEditPositionInputs, + incrementCrossPreviewCount, + setClosePositionSizeDelta, + setClosePositionPrice, + clearSmartMarginTradePreviews, + setKeeperDeposit, +} from './reducer' +import { + selectSmartMarginAccount, + selectSmartMarginMarginDelta, + selectSmartMarginOrderPrice, + selectSmartMarginSupportedNetwork, + selectIsConditionalOrder, + selectKeeperEthBalance, + selectLeverageSide, + selectV2MarketAsset, + selectPerpsV2Markets, + selectOrderType, + selectOrderFeeCap, + selectPosition, + selectSmartMarginTradeInputs, + selectIdleMargin, + selectSlTpTradeInputs, + selectSmartMarginEditPosInputs, + selectSmartMarginPreviewCount, + selectTradePreview, + selectClosePositionOrderInputs, + selectSmartMarginPositions, + selectEditPositionModalInfo, + selectSlTpModalInputs, + selectSmartMarginKeeperDeposit, + selectSkewAdjustedPrice, + selectEditPositionPreview, + selectClosePositionPreview, + selectMarketIndexPrice, + selectV2MarketInfo, + selectOpenDelayedOrders, +} from './selectors' +import { SmartMarginBalanceInfo } from './types' + +export const fetchMarketsV2 = createAsyncThunk< + { markets: FuturesMarket[]; networkId: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchMarkets', async (_, { getState, extra: { sdk } }) => { + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const networkId = selectNetwork(getState()) + + if (!supportedNetwork) return + try { + const markets = await sdk.futures.getMarkets() + // apply overrides + const overrideMarkets = markets.map((m) => { + return marketOverrides[m.marketKey] + ? { + ...m, + ...marketOverrides[m.marketKey], + } + : m + }) + + const serializedMarkets = serializeMarkets(overrideMarkets) + return { markets: serializedMarkets, networkId } + } catch (err) { + logError(err) + notifyError('Failed to fetch markets', err) + throw err + } +}) + +export const fetchSmartMarginBalanceInfo = createAsyncThunk< + { balanceInfo: SmartMarginBalanceInfo; account: string; network: NetworkId } | undefined, + void, + ThunkConfig +>( + 'futures/fetchSmartMarginBalanceInfo', + async (_, { getState, extra: { sdk }, rejectWithValue }) => { + const account = selectSmartMarginAccount(getState()) + const network = selectNetwork(getState()) + const wallet = selectWallet(getState()) + const crossMarginSupported = selectSmartMarginSupportedNetwork(getState()) + if (!account || !wallet || !crossMarginSupported) return + try { + const balanceInfo = await sdk.futures.getSmartMarginBalanceInfo(wallet, account) + return { balanceInfo: serializeCmBalanceInfo(balanceInfo), account, network } + } catch (err) { + logError(err) + notifyError('Failed to fetch cross-margin balance info', err) + rejectWithValue(err.message) + return undefined + } + } +) + +export const fetchSmartMarginPositions = createAsyncThunk< + { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchSmartMarginPositions', async (_, { getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + const markets = selectPerpsV2Markets(getState()) + + if (!account || !supportedNetwork) return + try { + const positions = await sdk.futures.getFuturesPositions( + account, + markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.market })) + ) + const serializedPositions = positions.map( + (p) => serializeWeiObject(p) as FuturesPosition + ) + return { positions: serializedPositions, account, network } + } catch (err) { + logError(err) + notifyError('Failed to fetch smart-margin positions', err) + throw err + } +}) + +export const refetchSmartMarginPosition = createAsyncThunk< + { + position: FuturesPosition + wallet: string + networkId: NetworkId + } | null, + void, + ThunkConfig +>('futures/refetchSmartMarginPosition', async (type, { getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + if (!account) throw new Error('No wallet connected') + const marketInfo = selectV2MarketInfo(getState()) + const networkId = selectNetwork(getState()) + const position = selectPosition(getState()) + if (!marketInfo || !position) throw new Error('Market or position not found') + + const result = await refetchWithComparator( + () => + sdk.futures.getFuturesPositions(account!, [ + { asset: marketInfo.asset, marketKey: marketInfo.marketKey, address: marketInfo.market }, + ]), + position?.remainingMargin?.toString(), + (existing, next) => { + return existing === next[0]?.remainingMargin.toString() + } + ) + + if (result.data[0]) { + const serialized = serializeWeiObject( + result.data[0] as FuturesPosition + ) as FuturesPosition + return { position: serialized, wallet: account, futuresType: type, networkId } + } + return null +}) + +export const fetchSmartMarginAccount = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>('futures/fetchSmartMarginAccount', async (_, { getState, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + const accounts = getState().smartMargin.accounts + + // Already have an accoutn fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) return + + try { + const accounts = await sdk.futures.getSmartMarginAccounts(wallet) + const account = accounts[0] + if (account) return { account, wallet, network } + return undefined + } catch (err) { + notifyError('Failed to fetch smart margin account', err) + rejectWithValue(err.message) + } +}) + +export const fetchDailyVolumesV2 = createAsyncThunk, void, ThunkConfig>( + 'futures/fetchDailyVolumesV2', + async (_, { extra: { sdk } }) => { + const volumes = await sdk.futures.getDailyVolumes() + return serializeFuturesVolumes(volumes) + } +) + +export const fetchSmartMarginAccountData = createAsyncThunk( + 'futures/fetchSmartMarginAccountData', + async (_, { dispatch }) => { + dispatch(fetchSmartMarginPositions()) + dispatch(fetchSmartMarginBalanceInfo()) + } +) + +export const fetchSharedFuturesData = createAsyncThunk( + 'futures/fetchSharedFuturesData', + async (_, { dispatch }) => { + await dispatch(fetchMarketsV2()) + await dispatch(fetchMarketsV3()) + dispatch(fetchDailyVolumesV2()) + } +) + +export const fetchSmartMarginOpenOrders = createAsyncThunk< + | { + conditionalOrders: ConditionalOrder[] + delayedOrders: DelayedOrderWithDetails[] + account: string + network: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchSmartMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + const markets = selectPerpsV2Markets(getState()) + const existingOrders = selectOpenDelayedOrders(getState()) + + const marketAddresses = markets.map((market) => market.market) + + if (!account || !supportedNetwork) return + try { + const orders = await sdk.futures.getConditionalOrders(account) + const delayedOrders = await sdk.futures.getDelayedOrders(account, marketAddresses) + const nonzeroOrders = formatDelayedOrders(delayedOrders, markets) + + const orderDropped = existingOrders.length > nonzeroOrders.length + if (orderDropped) { + dispatch(fetchSmartMarginPositions()) + } + + return { + account, + network, + delayedOrders: serializeDelayedOrders(nonzeroOrders), + conditionalOrders: serializeConditionalOrders(orders), + } + } catch (err) { + notifyError('Failed to fetch open orders', err) + logError(err) + throw err + } +}) + +export const fetchSmartMarginTradePreview = createAsyncThunk< + { preview: FuturesPotentialTradeDetails | null; type: PreviewAction }, + DebouncedPreviewParams, + ThunkConfig +>( + 'futures/fetchSmartMarginTradePreview', + async (params, { dispatch, getState, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + const freeMargin = selectIdleMargin(getState()) + const positions = selectSmartMarginPositions(getState()) + const position = positions.find((p) => p.marketKey === params.market.key) + + const marketMargin = position?.remainingMargin ?? wei(0) + + if ( + // Require both size and margin for a trade + (params.action === 'trade' && (params.sizeDelta.eq(0) || params.marginDelta.eq(0))) || + // Require one or the other when editing a position + (params.sizeDelta.eq(0) && params.marginDelta.eq(0)) + ) { + return { preview: null, type: params.action } + } + + // If this is a trade with no existsing position size then we need to subtract + // remaining idle market margin to get an accurate preview + const marginDelta = + (!position?.position || position?.position?.size.abs().eq(0)) && + marketMargin.gt(0) && + params.action === 'trade' + ? params.marginDelta.sub(marketMargin) + : params.marginDelta + + try { + const leverageSide = selectLeverageSide(getState()) + const preview = await sdk.futures.getSmartMarginTradePreview( + account || ZERO_ADDRESS, + params.market.key, + params.market.address, + { ...params, leverageSide, marginDelta } + ) + + // Check the preview hasn't been cleared before query resolves + const count = selectSmartMarginPreviewCount(getState()) + if (count !== params.debounceCount) { + const existing = selectTradePreview(getState()) + const returnPreview = existing ? serializePotentialTrade(existing) : null + return { preview: returnPreview, type: params.action } + } + + if (params.marginDelta.gt(freeMargin) && preview.status === 0) { + // Show insufficient margin message + preview.status = PotentialTradeStatus.INSUFFICIENT_FREE_MARGIN + preview.statusMessage = getTradeStatusMessage(PotentialTradeStatus.INSUFFICIENT_FREE_MARGIN) + preview.showStatus = true + } + + const serializedPreview = serializePotentialTrade({ + ...preview, + marketKey: params.market.key, + }) + return { preview: serializedPreview, type: params.action } + } catch (err) { + logError(err) + notifyError('Failed to generate trade preview', err) + dispatch( + handlePreviewError({ + error: err.message, + previewType: params.action, + }) + ) + return { preview: null, type: params.action } + } + } +) + +export const clearTradeInputs = createAsyncThunk( + 'futures/clearTradeInputs', + async (_, { dispatch }) => { + dispatch(setSmartMarginMarginDelta('')) + dispatch(setSmartMarginFees(ZERO_CM_FEES)) + dispatch(setSmartMarginLeverageInput('')) + dispatch(clearSmartMarginTradePreviews()) + dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setSmartMarginEditPositionInputs({ nativeSizeDelta: '', marginDelta: '' })) + } +) + +export const editCrossMarginTradeMarginDelta = + (marginDelta: string): AppThunk => + (dispatch, getState) => { + const orderPrice = selectMarketIndexPrice(getState()) + const marketInfo = selectV2MarketInfo(getState()) + const { susdSize, nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) + + if (!marketInfo) throw new Error('No market selected') + + if (!marginDelta || Number(marginDelta) === 0) { + dispatch(setSmartMarginMarginDelta(marginDelta)) + dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) + return + } + + const marginDelatWei = wei(marginDelta) + const leverage = wei(susdSize).div(marginDelatWei.abs()) + + dispatch(setSmartMarginMarginDelta(marginDelta)) + if (!leverage.eq(0)) { + dispatch(setSmartMarginLeverageInput(leverage.toString(2))) + } + + dispatch( + stageCrossMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.market }, + orderPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: nativeSizeDelta, + action: 'trade', + }) + ) + } + +export const editCrossMarginTradeSize = + (size: string, currencyType: 'usd' | 'native'): AppThunk => + (dispatch, getState) => { + const indexPrice = selectMarketIndexPrice(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) + const orderPrice = selectSmartMarginOrderPrice(getState()) + const isConditionalOrder = selectIsConditionalOrder(getState()) + const tradeSide = selectLeverageSide(getState()) + const marketInfo = selectV2MarketInfo(getState()) + const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice + + if (!marketInfo) throw new Error('No market selected') + + if (size === '' || price.eq(0)) { + dispatch(setSmartMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setSmartMarginTradePreview({ preview: null, type: 'trade' })) + dispatch(setSmartMarginLeverageInput('')) + return + } + + const nativeSize = + currencyType === 'native' ? size : String(floorNumber(wei(size).div(price), 4)) + const usdSize = currencyType === 'native' ? String(floorNumber(price.mul(size), 4)) : size + const leverage = marginDelta?.gt(0) ? wei(usdSize).div(marginDelta.abs()) : '0' + const sizeDeltaWei = + tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() + dispatch( + setSmartMarginTradeInputs({ + susdSize: usdSize, + nativeSize: nativeSize, + }) + ) + dispatch(setSmartMarginLeverageInput(leverage.toString(2))) + dispatch( + stageCrossMarginTradePreview({ + market: { + key: marketInfo.marketKey, + address: marketInfo.market, + }, + orderPrice: price, + marginDelta: wei(marginDelta), + sizeDelta: sizeDeltaWei, + action: 'trade', + }) + ) + } + +export const editCrossMarginPositionSize = + (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => + (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) + dispatch( + setSmartMarginEditPositionInputs({ + marginDelta: '', + nativeSizeDelta: nativeSizeDelta, + }) + ) + try { + const market = getMarketDetailsByKey(getState, marketKey) + dispatch( + stageCrossMarginTradePreview({ + orderPrice: marketPrice, + market, + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) + } + } + +export const editClosePositionSizeDelta = + (marketKey: FuturesMarketKey, nativeSizeDelta: string): AppThunk => + (dispatch, getState) => { + dispatch(setClosePositionSizeDelta(nativeSizeDelta)) + + if (nativeSizeDelta === '' || !nativeSizeDelta) { + dispatch(setSmartMarginTradePreview({ preview: null, type: 'close' })) + return + } + const { price } = selectClosePositionOrderInputs(getState()) + const { marketPrice } = selectEditPositionModalInfo(getState()) + + try { + const market = getMarketDetailsByKey(getState, marketKey) + const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) + const odrderPrice = smartMarginPrice + const previewParams: TradePreviewParams = { + market, + sizeDelta: wei(nativeSizeDelta), + orderPrice: odrderPrice, + marginDelta: ZERO_WEI, + action: 'close', + } + dispatch(stageCrossMarginTradePreview(previewParams)) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) + } + } + +export const editClosePositionPrice = + (marketKey: FuturesMarketKey, price: string): AppThunk => + (dispatch, getState) => { + const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) + const marketPrice = selectMarketIndexPrice(getState()) + const { position } = selectEditPositionModalInfo(getState()) + const closeTradeSide = + position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT + const invalidLabel = orderPriceInvalidLabel( + price || '0', + closeTradeSide, + marketPrice, + orderType + ) + + dispatch(setClosePositionPrice({ value: price, invalidLabel })) + + try { + const marketInfo = getMarketDetailsByKey(getState, marketKey) + dispatch( + stageCrossMarginTradePreview({ + market: marketInfo, + orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), + marginDelta: ZERO_WEI, + sizeDelta: wei(nativeSizeDelta || 0), + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) + } + } + +export const editSmartMarginPositionMargin = + (marketKey: FuturesMarketKey, marginDelta: string): AppThunk => + (dispatch, getState) => { + const { marketPrice } = selectEditPositionModalInfo(getState()) + dispatch( + setSmartMarginEditPositionInputs({ + marginDelta: marginDelta, + nativeSizeDelta: '', + }) + ) + try { + const market = getMarketDetailsByKey(getState, marketKey) + + dispatch( + stageCrossMarginTradePreview({ + market, + orderPrice: marketPrice, + marginDelta: wei(marginDelta || 0), + sizeDelta: ZERO_WEI, + action: 'edit', + }) + ) + } catch (err) { + dispatch(handlePreviewError({ error: err.message, previewType: 'edit' })) + } + } + +export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { + const orderPrice = selectSmartMarginOrderPrice(getState()) + const indexPrice = selectMarketIndexPrice(getState()) + const marketInfo = selectV2MarketInfo(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) + const isConditionalOrder = selectIsConditionalOrder(getState()) + const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice + const { nativeSizeDelta } = selectSmartMarginTradeInputs(getState()) + + if (!marketInfo) throw new Error('No market selected') + + dispatch( + stageCrossMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.market }, + orderPrice: price, + marginDelta, + sizeDelta: nativeSizeDelta, + action: 'trade', + }) + ) +} + +const stageCrossMarginTradePreview = createAsyncThunk( + 'futures/stageCrossMarginTradePreview', + async (inputs, { dispatch, getState }) => { + dispatch(calculateSmartMarginFees(inputs)) + dispatch(incrementCrossPreviewCount()) + const debounceCount = selectSmartMarginPreviewCount(getState()) + debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) + } +) + +export const editSmartMarginTradeSize = + (size: string, currencyType: 'usd' | 'native'): AppThunk => + (dispatch) => { + dispatch(editCrossMarginTradeSize(size, currencyType)) + } + +export const changeLeverageSide = + (side: PositionSide): AppThunk => + (dispatch, getState) => { + const { nativeSizeString } = selectSmartMarginTradeInputs(getState()) + dispatch(setLeverageSide(side)) + dispatch(editSmartMarginTradeSize(nativeSizeString, 'native')) + } + +export const debouncedPrepareCrossMarginTradePreview = debounce( + (dispatch, inputs: DebouncedPreviewParams) => { + dispatch(fetchSmartMarginTradePreview(inputs)) + }, + 500 +) + +export const editTradeOrderPrice = + (price: string): AppThunk => + (dispatch, getState) => { + const rate = selectSkewAdjustedPrice(getState()) + const orderType = selectOrderType(getState()) + const side = selectLeverageSide(getState()) + const inputs = selectSmartMarginTradeInputs(getState()) + dispatch(setSmartMarginOrderPrice(price)) + const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) + dispatch(setSmartMarginOrderPriceInvalidLabel(invalidLabel)) + if (!invalidLabel && price && inputs.susdSize) { + // Recalc the trade + dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) + } + } + +export const fetchPositionHistoryV2 = createAsyncThunk< + | { + history: FuturesPositionHistory[] + wallet: string + networkId: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchPositionHistoryV2', async (_, { getState, extra: { sdk } }) => { + try { + const account = selectSmartMarginAccount(getState()) + const networkId = selectNetwork(getState()) + const wallet = selectWallet(getState()) + const supported = selectSmartMarginSupportedNetwork(getState()) + if (!wallet || !account || !supported) return + const history = await sdk.futures.getPositionHistory(account) + return { account, wallet, networkId, history: serializePositionHistory(history) } + } catch (err) { + notifyError('Failed to fetch position history', err) + throw err + } +}) + +export const fetchTradesForSelectedMarket = createAsyncThunk< + | { + trades: FuturesTrade[] + account: string + wallet: string + networkId: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchTradesForSelectedMarket', async (_, { getState, extra: { sdk } }) => { + try { + const wallet = selectWallet(getState()) + const networkId = selectNetwork(getState()) + const marketAsset = selectV2MarketAsset(getState()) + const account = selectSmartMarginAccount(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) + + if (!futuresSupported || !wallet || !account) return + const trades = await sdk.futures.getTradesForMarket( + marketAsset, + wallet, + FuturesMarginType.SMART_MARGIN + ) + return { trades: serializeTrades(trades), networkId, account, wallet } + } catch (err) { + notifyError('Failed to fetch futures trades for selected market', err) + throw err + } +}) + +export const fetchAllV2TradesForAccount = createAsyncThunk< + | { + trades: FuturesTrade[] + account: string + wallet: string + networkId: NetworkId + } + | undefined, + void, + ThunkConfig +>('futures/fetchAllV2TradesForAccount', async (_, { getState, extra: { sdk } }) => { + try { + const wallet = selectWallet(getState()) + const networkId = selectNetwork(getState()) + const account = selectSmartMarginAccount(getState()) + const futuresSupported = selectSmartMarginSupportedNetwork(getState()) + if (!futuresSupported || !wallet || !account) return + const trades = await sdk.futures.getAllTrades(wallet, FuturesMarginType.SMART_MARGIN, 200) + return { trades: serializeTrades(trades), networkId, account, wallet } + } catch (err) { + notifyError('Failed to fetch futures trades', err) + throw err + } +}) + +export const calculateSmartMarginFees = + (params: TradePreviewParams): AppThunk => + (dispatch, getState) => { + const markets = selectPerpsV2Markets(getState()) + const market = markets.find((m) => m.marketKey === params.market.key) + if (!market) throw new Error('Missing market info to compute fee') + const keeperBalance = selectKeeperEthBalance(getState()) + const { delayedOrderFee } = computeDelayedOrderFee( + market, + params.sizeDelta.mul(params.orderPrice?.abs()) + ) + + const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) + ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) + : wei(0) + + const fees = { + delayedOrderFee: delayedOrderFee.toString(), + keeperEthDeposit: requiredDeposit.toString(), + } + dispatch(setSmartMarginFees(fees)) + } + +export const calculateKeeperDeposit = (): AppThunk => (dispatch, getState) => { + const keeperBalance = selectKeeperEthBalance(getState()) + const requiredDeposit = keeperBalance.lt(ORDER_KEEPER_ETH_DEPOSIT) + ? ORDER_KEEPER_ETH_DEPOSIT.sub(keeperBalance) + : wei(0) + + dispatch(setKeeperDeposit(requiredDeposit.toString())) +} + +export const fetchMarginTransfersV2 = createAsyncThunk< + | { + marginTransfers: MarginTransfer[] + idleTransfers: MarginTransfer[] + context: AccountContext + } + | undefined, + void, + ThunkConfig +>('futures/fetchMarginTransfersV2', async (_, { getState, extra: { sdk } }) => { + const { wallet, futures } = getState() + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + const cmAccount = selectSmartMarginAccount(getState()) + if (!wallet.walletAddress || !supportedNetwork) return + try { + const transfers = await sdk.futures.getIsolatedMarginTransfers(cmAccount) + const idleTransfers = await sdk.futures.getSmartMarginTransfers(cmAccount) + + return { + marginTransfers: transfers, + idleTransfers: idleTransfers, + context: { + wallet: wallet.walletAddress, + network: network, + type: futures.selectedType, + cmAccount, + }, + } + } catch (err) { + logError(err) + notifyError('Failed to fetch margin transfers', err) + throw err + } +}) + +// Contract Mutations + +export const createSmartMarginAccount = createAsyncThunk< + { account: string; wallet: string; network: NetworkId } | undefined, + void, + ThunkConfig +>( + 'futures/createSmartMarginAccount', + async (_, { getState, dispatch, extra: { sdk }, rejectWithValue }) => { + const wallet = selectWallet(getState()) + const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) + const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined + const accounts = getState().smartMargin.accounts + + // Already have an accoutn fetched and persisted for this address + if (accounts[network]?.[wallet]?.account) { + notifyError('There is already an account associated with this wallet') + rejectWithValue('Account already created') + } + + try { + const accounts = await sdk.futures.getSmartMarginAccounts() + // Check for existing account on the contract as only one account per user + if (accounts[0]) { + dispatch(setSmartMarginAccount({ account: accounts[0], wallet: wallet, network })) + return + } + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'create_cross_margin_account', + hash: null, + }) + ) + const tx = await sdk.futures.createSmartMarginAccount() + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchSmartMarginAccount()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + } + } +) + +export const withdrawSmartMargin = createAsyncThunk( + 'futures/withdrawSmartMargin', + async (amount, { getState, dispatch, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + if (!account) { + notifyError('No smart margin account') + return + } + await submitSMTransferTransaction(dispatch, sdk, 'withdraw_smart_margin', account, amount) + } +) + +export const approveSmartMargin = createAsyncThunk( + 'futures/approveSmartMargin', + async (_, { getState, dispatch, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + if (!account) throw new Error('No smart margin account') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'approve_cross_margin', + hash: null, + }) + ) + const tx = await sdk.futures.approveSmartMarginDeposit(account) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchSmartMarginBalanceInfo()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const submitSmartMarginOrder = createAsyncThunk( + 'futures/submitSmartMarginOrder', + async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { + const marketInfo = selectV2MarketInfo(getState()) + const account = selectSmartMarginAccount(getState()) + const tradeInputs = selectSmartMarginTradeInputs(getState()) + const marginDelta = selectSmartMarginMarginDelta(getState()) + const feeCap = selectOrderFeeCap(getState()) + const orderType = selectOrderType(getState()) + const orderPrice = selectSmartMarginOrderPrice(getState()) + const preview = selectTradePreview(getState()) + const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) + const wallet = selectWallet(getState()) + const position = selectPosition(getState()) + const openDelayedOrders = selectOpenDelayedOrders(getState()) + const { stopLossPrice, takeProfitPrice } = selectSlTpTradeInputs(getState()) + + try { + if (!marketInfo) throw new Error('Market info not found') + if (!account) throw new Error('No smart margin account found') + if (!wallet) throw new Error('No wallet connected') + if (!preview) throw new Error('Missing trade preview') + if (!overridePriceProtection && preview.exceedsPriceProtection) { + throw new Error('Price impact exceeds price protection') + } + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + + const orderInputs: SmartMarginOrderInputs = { + sizeDelta: tradeInputs.nativeSizeDelta, + marginDelta: marginDelta, + desiredFillPrice: preview.desiredFillPrice, + } + + // To separate Stop Loss and Take Profit from other limit / stop orders + // we set the size to max big num value. + + const maxSizeDelta = tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE + + if (Number(stopLossPrice) > 0) { + const desiredSLFillPrice = calculateDesiredFillPrice( + maxSizeDelta, + wei(stopLossPrice || 0), + wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.STOP_LOSS) + ) + orderInputs.stopLoss = { + price: wei(stopLossPrice), + desiredFillPrice: desiredSLFillPrice, + sizeDelta: tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE, + } + } + + if (Number(takeProfitPrice) > 0) { + const desiredTPFillPrice = calculateDesiredFillPrice( + maxSizeDelta, + wei(takeProfitPrice || 0), + wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.TAKE_PROFIT) + ) + orderInputs.takeProfit = { + price: wei(takeProfitPrice), + desiredFillPrice: desiredTPFillPrice, + sizeDelta: tradeInputs.nativeSizeDelta.gt(0) ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE, + } + } + + if (orderType !== 'market') { + orderInputs['conditionalOrderInputs'] = { + orderType: + orderType === 'limit' ? ConditionalOrderTypeEnum.LIMIT : ConditionalOrderTypeEnum.STOP, + feeCap, + price: wei(orderPrice || '0'), + reduceOnly: false, + } + } + + if (orderType !== 'market' || Number(takeProfitPrice) > 0 || Number(stopLossPrice) > 0) { + orderInputs.keeperEthDeposit = keeperEthDeposit + } + + let existingSize = position?.position?.size ?? wei(0) + existingSize = + position?.position?.side === PositionSide.SHORT ? existingSize.neg() : existingSize + const isClosing = existingSize.add(tradeInputs.nativeSizeDelta).eq(0) + + const staleOrder = openDelayedOrders.find( + (o) => o.isStale && o.marketKey === marketInfo.marketKey + ) + + const tx = await sdk.futures.submitSmartMarginOrder( + { address: marketInfo.market, key: marketInfo.marketKey }, + wallet, + account, + orderInputs, + { cancelPendingReduceOrders: isClosing, cancelExpiredDelayedOrders: !!staleOrder } + ) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchSmartMarginOpenOrders()) + dispatch(setOpenModal(null)) + dispatch(fetchBalances()) + dispatch(clearTradeInputs()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const submitSmartMarginAdjustMargin = createAsyncThunk( + 'futures/submitSmartMarginAdjustMargin', + async (_, { getState, dispatch, extra: { sdk } }) => { + const { market } = selectEditPositionModalInfo(getState()) + const account = selectSmartMarginAccount(getState()) + const { marginDelta } = selectSmartMarginEditPosInputs(getState()) + + try { + if (!market) throw new Error('Market info not found') + if (!account) throw new Error('No smart margin account found') + if (!marginDelta || marginDelta === '') throw new Error('No margin amount set') + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + + const tx = await sdk.futures.modifySmartMarginMarketMargin( + account, + market.market, + wei(marginDelta) + ) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setOpenModal(null)) + dispatch(refetchSmartMarginPosition()) + dispatch(fetchBalances()) + dispatch(clearTradeInputs()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const submitSmartMarginAdjustPositionSize = createAsyncThunk( + 'futures/submitSmartMarginAdjustPositionSize', + async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { + const { market, position } = selectEditPositionModalInfo(getState()) + const account = selectSmartMarginAccount(getState()) + const preview = selectEditPositionPreview(getState()) + const { nativeSizeDelta } = selectSmartMarginEditPosInputs(getState()) + + try { + if (!market) throw new Error('Market info not found') + if (!account) throw new Error('No smart margin account found') + if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No margin amount set') + if (!preview) throw new Error('Missing trade preview') + if (!overridePriceProtection && preview.exceedsPriceProtection) { + throw new Error('Price impact exceeds price protection') + } + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + + let existingSize = position?.position?.size ?? wei(0) + existingSize = + position?.position?.side === PositionSide.SHORT ? existingSize.neg() : existingSize + const isClosing = existingSize.add(nativeSizeDelta).eq(0) + + const tx = await sdk.futures.modifySmartMarginPositionSize( + account, + { + key: market.marketKey, + address: market.market, + }, + wei(nativeSizeDelta), + preview.desiredFillPrice, + isClosing + ) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setShowPositionModal(null)) + dispatch(fetchBalances()) + dispatch(clearTradeInputs()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const submitSmartMarginReducePositionOrder = createAsyncThunk( + 'futures/submitSmartMarginReducePositionOrder', + async (overridePriceProtection, { getState, dispatch, extra: { sdk } }) => { + const { market, position } = selectEditPositionModalInfo(getState()) + const account = selectSmartMarginAccount(getState()) + const { nativeSizeDelta, orderType, price } = selectClosePositionOrderInputs(getState()) + const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) + const feeCap = selectOrderFeeCap(getState()) + const wallet = selectWallet(getState()) + const preview = selectClosePositionPreview(getState()) + + try { + if (!market) throw new Error('Market info not found') + if (!wallet) throw new Error('No wallet connected') + if (!account) throw new Error('No smart margin account found') + if (!nativeSizeDelta || nativeSizeDelta === '') throw new Error('No margin amount set') + if (!preview) throw new Error('Missing trade preview') + if (!overridePriceProtection && preview.exceedsPriceProtection) { + throw new Error('Price impact exceeds price protection') + } + + const isClosing = wei(nativeSizeDelta) + .abs() + .eq(position?.position?.size.abs() || 0) + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + + const orderInputs: SmartMarginOrderInputs = { + sizeDelta: wei(nativeSizeDelta), + marginDelta: wei(0), + desiredFillPrice: preview.desiredFillPrice, + } + + if (orderType !== 'market') { + orderInputs['conditionalOrderInputs'] = { + orderType: + orderType === 'limit' ? ConditionalOrderTypeEnum.LIMIT : ConditionalOrderTypeEnum.STOP, + feeCap, + price: wei(price?.value || '0'), + reduceOnly: true, + } + orderInputs.keeperEthDeposit = keeperEthDeposit + } + + const tx = + isClosing && orderType === 'market' + ? await sdk.futures.closeSmartMarginPosition( + { address: market.market, key: market.marketKey }, + account, + preview.desiredFillPrice + ) + : await sdk.futures.submitSmartMarginOrder( + { address: market.market, key: market.marketKey }, + wallet, + account, + orderInputs, + { cancelPendingReduceOrders: isClosing } + ) + + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setOpenModal(null)) + dispatch(setShowPositionModal(null)) + dispatch(fetchBalances()) + dispatch(clearTradeInputs()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const cancelConditionalOrder = createAsyncThunk( + 'futures/cancelConditionalOrder', + async (contractOrderId, { getState, dispatch, extra: { sdk } }) => { + const crossMarginAccount = selectSmartMarginAccount(getState()) + try { + if (!crossMarginAccount) throw new Error('No smart margin account') + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'cancel_cross_margin_order', + hash: null, + }) + ) + + // Handle contract id or subgraph id + + dispatch(setSmartMarginOrderCancelling(contractOrderId)) + const tx = await sdk.futures.cancelConditionalOrder(crossMarginAccount, contractOrderId) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setSmartMarginOrderCancelling(undefined)) + dispatch(setOpenModal(null)) + dispatch(fetchSmartMarginOpenOrders()) + } catch (err) { + dispatch(setSmartMarginOrderCancelling(undefined)) + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const withdrawAccountKeeperBalance = createAsyncThunk( + 'futures/withdrawAccountKeeperBalance', + async (amount, { getState, dispatch, extra: { sdk } }) => { + const crossMarginAccount = selectSmartMarginAccount(getState()) + try { + if (!crossMarginAccount) throw new Error('No smart margin account') + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'withdraw_keeper_balance', + hash: null, + }) + ) + + const tx = await sdk.futures.withdrawAccountKeeperBalance(crossMarginAccount, amount) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setOpenModal(null)) + dispatch(fetchSmartMarginBalanceInfo()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +// Utils + +const submitSMTransferTransaction = async ( + dispatch: AppDispatch, + sdk: KwentaSDK, + type: 'withdraw_smart_margin' | 'deposit_smart_margin', + account: string, + amount: Wei +) => { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: type, + hash: null, + }) + ) + + try { + const tx = + type === 'deposit_smart_margin' + ? await sdk.futures.depositSmartMarginAccount(account, amount) + : await sdk.futures.withdrawSmartMarginAccount(account, amount) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchSmartMarginBalanceInfo()) + dispatch(setOpenModal(null)) + dispatch(refetchSmartMarginPosition()) + dispatch(fetchBalances()) + dispatch(fetchMarginTransfersV2()) + return tx + } catch (err) { + logError(err) + dispatch(handleTransactionError(err.message)) + throw err + } +} + +export const updateStopLossAndTakeProfit = createAsyncThunk( + 'futures/updateStopLossAndTakeProfit', + async (_, { getState, dispatch, extra: { sdk } }) => { + const { market, position } = selectEditPositionModalInfo(getState()) + const account = selectSmartMarginAccount(getState()) + const wallet = selectWallet(getState()) + const { stopLossPrice, takeProfitPrice } = selectSlTpModalInputs(getState()) + const keeperDeposit = selectSmartMarginKeeperDeposit(getState()) + + try { + if (!market) throw new Error('Market info not found') + if (!account) throw new Error('No smart margin account found') + if (!wallet) throw new Error('No wallet connected') + + const maxSizeDelta = + position?.position?.side === PositionSide.LONG ? SL_TP_MAX_SIZE.neg() : SL_TP_MAX_SIZE + + const desiredSLFillPrice = calculateDesiredFillPrice( + maxSizeDelta, + wei(stopLossPrice || 0), + wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.STOP_LOSS) + ) + + const desiredTPFillPrice = calculateDesiredFillPrice( + maxSizeDelta, + wei(takeProfitPrice || 0), + wei(DEFAULT_PRICE_IMPACT_DELTA_PERCENT.TAKE_PROFIT) + ) + + const params: SLTPOrderInputs = { + keeperEthDeposit: keeperDeposit, + } + + // To separate Stop Loss and Take Profit from other limit / stop orders + // we set the size to max big num value. + + if (Number(stopLossPrice) > 0) { + params.stopLoss = { + price: wei(stopLossPrice), + desiredFillPrice: desiredSLFillPrice, + sizeDelta: maxSizeDelta, + } + } else if (!stopLossPrice) { + params.stopLoss = { + price: wei(0), + desiredFillPrice: wei(0), + sizeDelta: wei(0), + isCancelled: true, + } + } + + if (Number(takeProfitPrice) > 0) { + params.takeProfit = { + price: wei(takeProfitPrice), + desiredFillPrice: desiredTPFillPrice, + sizeDelta: maxSizeDelta, + } + } else if (!takeProfitPrice) { + params.takeProfit = { + price: wei(0), + desiredFillPrice: wei(0), + sizeDelta: wei(0), + isCancelled: true, + } + } + + if (params.stopLoss || params.takeProfit) { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + + const tx = await sdk.futures.updateStopLossAndTakeProfit(market.marketKey, account, params) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(setShowPositionModal(null)) + } + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const fetchFundingRatesHistory = createAsyncThunk< + { marketAsset: FuturesMarketAsset; rates: any }, + FuturesMarketAsset, + ThunkConfig +>('futures/fetchFundingRatesHistory', async (marketAsset, { extra: { sdk } }) => { + const rates = await sdk.futures.getMarketFundingRatesHistory(marketAsset) + return { marketAsset, rates } +}) + +const getMarketDetailsByKey = (getState: () => RootState, key: FuturesMarketKey) => { + const markets = selectPerpsV2Markets(getState()) + const market = markets.find((m) => { + return m.marketKey === key + }) + if (!market) throw new Error(`No market info found for ${key}`) + return { + address: market.market, + key: market.marketKey, + } +} diff --git a/packages/app/src/state/futures/smartMargin/reducer.ts b/packages/app/src/state/futures/smartMargin/reducer.ts new file mode 100644 index 0000000000..09c38dc711 --- /dev/null +++ b/packages/app/src/state/futures/smartMargin/reducer.ts @@ -0,0 +1,564 @@ +import { + NetworkId, + SmartMarginOrderType, + FuturesMarketAsset, + FuturesPotentialTradeDetails, + PositionSide, + FuturesTrade, + FuturesOrderType, +} from '@kwenta/sdk/types' +import { createSlice, PayloadAction } from '@reduxjs/toolkit' + +import { ORDER_PREVIEW_ERRORS } from 'queries/futures/constants' +import { + DEFAULT_MAP_BY_NETWORK, + DEFAULT_QUERY_STATUS, + LOADING_STATUS, + SUCCESS_STATUS, + ZERO_CM_FEES, + ZERO_STATE_CM_ACCOUNT, + ZERO_STATE_TRADE_INPUTS, +} from 'state/constants' +import { FetchStatus } from 'state/types' + +import { PreviewAction } from '../common/types' + +import { + fetchSmartMarginBalanceInfo, + fetchSmartMarginPositions, + fetchMarketsV2, + fetchDailyVolumesV2, + refetchSmartMarginPosition, + fetchSmartMarginOpenOrders, + fetchSmartMarginTradePreview, + fetchSmartMarginAccount, + fetchPositionHistoryV2, + fetchTradesForSelectedMarket, + fetchAllV2TradesForAccount, + fetchMarginTransfersV2, + fetchFundingRatesHistory, +} from './actions' +import { + SmartMarginAccountData, + SmartMarginState, + EditPositionInputs, + SmartMarginTradeFees, + SmartMarginTradeInputs, +} from './types' + +export const SMART_MARGIN_INITIAL_STATE: SmartMarginState = { + markets: { + 420: [], + 10: [], + }, + dailyMarketVolumes: {}, + fundingRates: [], + queryStatuses: { + markets: DEFAULT_QUERY_STATUS, + smartMarginBalanceInfo: DEFAULT_QUERY_STATUS, + dailyVolumes: DEFAULT_QUERY_STATUS, + smartMarginPositions: DEFAULT_QUERY_STATUS, + smartMarginPositionHistory: DEFAULT_QUERY_STATUS, + openOrders: DEFAULT_QUERY_STATUS, + smartMarginTradePreview: DEFAULT_QUERY_STATUS, + smartMarginAccount: DEFAULT_QUERY_STATUS, + positionHistory: DEFAULT_QUERY_STATUS, + selectedTraderPositionHistory: DEFAULT_QUERY_STATUS, + trades: DEFAULT_QUERY_STATUS, + marginTransfers: DEFAULT_QUERY_STATUS, + historicalFundingRates: DEFAULT_QUERY_STATUS, + }, + accounts: DEFAULT_MAP_BY_NETWORK, + selectedMarketAsset: FuturesMarketAsset.sETH, + leverageSide: PositionSide.LONG, + orderType: 'market', + orderFeeCap: '0', + leverageInput: '0', + selectedLeverageByAsset: {}, + showSmartMarginOnboard: false, + tradeInputs: ZERO_STATE_TRADE_INPUTS, + sltpModalInputs: { + stopLossPrice: '', + takeProfitPrice: '', + }, + editPositionInputs: { + nativeSizeDelta: '', + marginDelta: '', + }, + fees: ZERO_CM_FEES, + previews: { + trade: null, + close: null, + edit: null, + }, + previewDebounceCount: 0, + marginDelta: '0', + cancellingOrder: undefined, + depositApproved: false, + orderPrice: { + price: undefined, + invalidLabel: undefined, + }, + historicalFundingRates: {}, + closePositionOrderInputs: { + orderType: 'market', + nativeSizeDelta: '', + price: { + value: '', + invalidLabel: undefined, + }, + }, +} + +const smartMarginSlice = createSlice({ + name: 'smartMargin', + initialState: SMART_MARGIN_INITIAL_STATE, + reducers: { + setMarketAsset: (smartMargin, action) => { + smartMargin.selectedMarketAsset = action.payload + smartMargin.tradeInputs = ZERO_STATE_TRADE_INPUTS + }, + setOrderType: (smartMargin, action: PayloadAction) => { + smartMargin.orderType = action.payload + }, + setClosePositionOrderType: (smartMargin, action: PayloadAction) => { + smartMargin.closePositionOrderInputs.orderType = action.payload + }, + setClosePositionSizeDelta: (smartMargin, action: PayloadAction) => { + smartMargin.closePositionOrderInputs.nativeSizeDelta = action.payload + }, + setClosePositionPrice: ( + smartMargin, + action: PayloadAction<{ value: string; invalidLabel: string | null | undefined }> + ) => { + smartMargin.closePositionOrderInputs.price = action.payload + }, + setOrderFeeCap: (smartMargin, action) => { + smartMargin.orderFeeCap = action.payload + }, + setLeverageSide: (smartMargin, action) => { + smartMargin.leverageSide = action.payload + }, + setSmartMarginMarginDelta: (smartMargin, action: PayloadAction) => { + smartMargin.marginDelta = action.payload + }, + setSmartMarginTradeStopLoss: (smartMargin, action: PayloadAction) => { + smartMargin.tradeInputs.stopLossPrice = action.payload + }, + setSmartMarginTradeTakeProfit: (smartMargin, action: PayloadAction) => { + smartMargin.tradeInputs.takeProfitPrice = action.payload + }, + setSLTPModalStopLoss: (smartMargin, action: PayloadAction) => { + smartMargin.sltpModalInputs.stopLossPrice = action.payload + }, + setSLTPModalTakeProfit: (smartMargin, action: PayloadAction) => { + smartMargin.sltpModalInputs.takeProfitPrice = action.payload + }, + setSmartMarginTradeInputs: ( + smartMargin, + action: PayloadAction> + ) => { + smartMargin.tradeInputs = action.payload + }, + setSmartMarginEditPositionInputs: ( + smartMargin, + action: PayloadAction> + ) => { + smartMargin.editPositionInputs = action.payload + }, + setSmartMarginOrderPrice: (smartMargin, action: PayloadAction) => { + smartMargin.orderPrice.price = action.payload + }, + setSmartMarginOrderPriceInvalidLabel: ( + smartMargin, + action: PayloadAction + ) => { + smartMargin.orderPrice.invalidLabel = action.payload + }, + setSmartMarginLeverageInput: (smartMargin, action: PayloadAction) => { + smartMargin.leverageInput = action.payload + }, + setSmartMarginFees: (smartMargin, action: PayloadAction>) => { + smartMargin.fees = action.payload + }, + setKeeperDeposit: (smartMargin, action: PayloadAction) => { + smartMargin.fees.keeperEthDeposit = action.payload + }, + handlePreviewError: ( + smartMargin, + { + payload, + }: PayloadAction<{ + error: string + previewType: PreviewAction + }> + ) => { + const message = Object.values(ORDER_PREVIEW_ERRORS).includes(payload.error) + ? payload.error + : 'Failed to get trade preview' + smartMargin.queryStatuses.smartMarginTradePreview = { + status: FetchStatus.Error, + error: message, + } + smartMargin.previews[payload.previewType] = null + }, + + setSmartMarginAccount: ( + smartMargin, + action: PayloadAction<{ wallet: string; account: string; network: NetworkId }> + ) => { + const { account, wallet, network } = action.payload + if (!smartMargin.accounts[network]?.[wallet]?.account) { + smartMargin.accounts[network] = { + ...smartMargin.accounts[network], + [wallet]: { + account: account, + ...ZERO_STATE_CM_ACCOUNT, + }, + } + } + }, + clearSmartMarginTradePreviews: (smartMargin) => { + smartMargin.previews = { + edit: null, + trade: null, + close: null, + } + smartMargin.queryStatuses.smartMarginTradePreview = DEFAULT_QUERY_STATUS + }, + setSmartMarginTradePreview: ( + smartMargin, + { + payload, + }: PayloadAction<{ + preview: FuturesPotentialTradeDetails | null + type: PreviewAction + }> + ) => { + smartMargin.previews[payload.type] = payload.preview + }, + setSmartMarginOrderCancelling: ( + smartMargin, + { payload }: PayloadAction + ) => { + smartMargin.cancellingOrder = payload + }, + incrementCrossPreviewCount: (smartMargin) => { + smartMargin.previewDebounceCount = smartMargin.previewDebounceCount + 1 + }, + }, + extraReducers: (builder) => { + // Markets + builder.addCase(fetchMarketsV2.pending, (smartMargin) => { + smartMargin.queryStatuses.markets = LOADING_STATUS + }) + builder.addCase(fetchMarketsV2.fulfilled, (smartMargin, { payload }) => { + smartMargin.queryStatuses.markets = SUCCESS_STATUS + if (payload) { + smartMargin.markets[payload.networkId] = payload.markets + } + }) + builder.addCase(fetchMarketsV2.rejected, (smartMargin) => { + smartMargin.queryStatuses.markets = { + status: FetchStatus.Error, + error: 'Failed to fetch markets', + } + }) + + // Smart margin overview + builder.addCase(fetchSmartMarginBalanceInfo.pending, (smartMargin) => { + smartMargin.queryStatuses.smartMarginBalanceInfo = LOADING_STATUS + }) + builder.addCase(fetchSmartMarginBalanceInfo.fulfilled, (smartMargin, action) => { + smartMargin.queryStatuses.smartMarginBalanceInfo = SUCCESS_STATUS + if (action.payload) { + const { account, network, balanceInfo } = action.payload + const wallet = findWalletForAccount(smartMargin, account, network) + if (wallet) { + updateSmartMarginAccount(smartMargin, network, wallet, { balanceInfo }) + } + } + }) + builder.addCase(fetchSmartMarginBalanceInfo.rejected, (futuresState) => { + futuresState.queryStatuses.smartMarginBalanceInfo = { + status: FetchStatus.Error, + error: 'Failed to fetch balance info', + } + }) + + // Daily volumes + builder.addCase(fetchDailyVolumesV2.pending, (smartMargin) => { + smartMargin.queryStatuses.dailyVolumes = LOADING_STATUS + }) + builder.addCase(fetchDailyVolumesV2.fulfilled, (smartMargin, action) => { + smartMargin.queryStatuses.dailyVolumes = SUCCESS_STATUS + smartMargin.dailyMarketVolumes = action.payload + }) + builder.addCase(fetchDailyVolumesV2.rejected, (smartMargin) => { + smartMargin.queryStatuses.dailyVolumes = { + status: FetchStatus.Error, + error: 'Failed to fetch volume data', + } + }) + + // margin transfers + builder.addCase(fetchMarginTransfersV2.pending, (smartMargin) => { + smartMargin.queryStatuses.marginTransfers = LOADING_STATUS + }) + builder.addCase(fetchMarginTransfersV2.fulfilled, (smartMargin, { payload }) => { + smartMargin.queryStatuses.marginTransfers = SUCCESS_STATUS + if (payload) { + const { context, marginTransfers, idleTransfers } = payload + const newAccountData = { + marginTransfers, + idleTransfers, + } + updateSmartMarginAccount(smartMargin, context.network, context.wallet, newAccountData) + } + }) + builder.addCase(fetchMarginTransfersV2.rejected, (smartMargin) => { + smartMargin.queryStatuses.marginTransfers = { + status: FetchStatus.Error, + error: 'Failed to fetch margin transfers', + } + }) + + // Cross margin positions + builder.addCase(fetchSmartMarginPositions.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginPositions = LOADING_STATUS + }) + builder.addCase(fetchSmartMarginPositions.fulfilled, (smartMargin, action) => { + smartMargin.queryStatuses.smartMarginPositions = SUCCESS_STATUS + if (!action.payload) return + const { account, positions, network } = action.payload + const wallet = findWalletForAccount(smartMargin, account, network) + if (wallet) { + updateSmartMarginAccount(smartMargin, network, wallet, { positions }) + } + }) + builder.addCase(fetchSmartMarginPositions.rejected, (smartMargin) => { + smartMargin.queryStatuses.smartMarginPositions = { + status: FetchStatus.Error, + error: 'Failed to fetch positions', + } + }) + + // Refetch selected position + builder.addCase(refetchSmartMarginPosition.fulfilled, (smartMargin, { payload }) => { + if (payload) { + const { position, wallet, networkId } = payload + const account = smartMargin.accounts[networkId]?.[wallet] + + const existingPositions = account?.positions ?? [] + const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) + existingPositions[index] = position + smartMargin.accounts[networkId][wallet] = { + ...account, + positions: existingPositions, + } + } + }) + + // Fetch Cross Margin Open Orders + builder.addCase(fetchSmartMarginOpenOrders.pending, (futuresState) => { + futuresState.queryStatuses.openOrders = LOADING_STATUS + }) + builder.addCase(fetchSmartMarginOpenOrders.fulfilled, (smartMargin, action) => { + smartMargin.queryStatuses.openOrders = SUCCESS_STATUS + if (!action.payload) return + const { network, account, delayedOrders, conditionalOrders } = action.payload + const wallet = findWalletForAccount(smartMargin, account, network) + if (wallet) { + updateSmartMarginAccount(smartMargin, network, wallet, { + conditionalOrders, + delayedOrders, + }) + } + }) + builder.addCase(fetchSmartMarginOpenOrders.rejected, (futuresState) => { + futuresState.queryStatuses.openOrders = { + status: FetchStatus.Error, + error: 'Failed to fetch open orders for cross margin account', + } + }) + + // Fetch Cross Margin Trade Preview + builder.addCase(fetchSmartMarginTradePreview.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginTradePreview = LOADING_STATUS + }) + builder.addCase(fetchSmartMarginTradePreview.fulfilled, (smartMargin, { payload }) => { + smartMargin.previews[payload.type] = payload.preview + smartMargin.queryStatuses.smartMarginTradePreview = SUCCESS_STATUS + }) + + // Fetch cross margin account + builder.addCase(fetchSmartMarginAccount.pending, (futuresState) => { + futuresState.queryStatuses.smartMarginAccount = LOADING_STATUS + }) + builder.addCase(fetchSmartMarginAccount.fulfilled, (smartMargin, action) => { + if (action.payload) { + const { network, account, wallet } = action.payload + smartMargin.accounts[network] = { + ...smartMargin.accounts[network], + [wallet]: { + account: account, + ...ZERO_STATE_CM_ACCOUNT, + }, + } + } + smartMargin.queryStatuses.smartMarginAccount = SUCCESS_STATUS + }) + builder.addCase(fetchSmartMarginAccount.rejected, (futuresState) => { + futuresState.queryStatuses.smartMarginAccount = { + status: FetchStatus.Error, + error: 'Failed to fetch cross margin account', + } + }) + + // Fetch position history + builder.addCase(fetchPositionHistoryV2.pending, (futuresState) => { + futuresState.queryStatuses.positionHistory = LOADING_STATUS + }) + builder.addCase(fetchPositionHistoryV2.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.positionHistory = SUCCESS_STATUS + if (payload) { + const { history: positionHistory, networkId, wallet } = payload + updateSmartMarginAccount(futuresState, networkId, wallet, { + positionHistory, + }) + } + }) + builder.addCase(fetchPositionHistoryV2.rejected, (futuresState) => { + futuresState.queryStatuses.positionHistory = { + error: 'Failed to fetch position history', + status: FetchStatus.Error, + } + }) + + // Fetch trades for market + builder.addCase(fetchTradesForSelectedMarket.pending, (futuresState) => { + futuresState.queryStatuses.trades = LOADING_STATUS + }) + builder.addCase(fetchTradesForSelectedMarket.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.trades = SUCCESS_STATUS + if (payload) { + const { trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, networkId, wallet, trades) + } + }) + builder.addCase(fetchTradesForSelectedMarket.rejected, (futuresState) => { + futuresState.queryStatuses.trades = { + error: 'Failed to fetch trades', + status: FetchStatus.Error, + } + }) + + // TODO: Combine all with market trades rather than overwrite as the filter is done on selector + + // Fetch all trades for account + builder.addCase(fetchAllV2TradesForAccount.pending, (futuresState) => { + futuresState.queryStatuses.trades = LOADING_STATUS + }) + builder.addCase(fetchAllV2TradesForAccount.fulfilled, (futuresState, { payload }) => { + futuresState.queryStatuses.trades = SUCCESS_STATUS + if (payload) { + const { trades, networkId, wallet } = payload + mergeTradesForAccount(futuresState, networkId, wallet, trades) + } + }) + builder.addCase(fetchAllV2TradesForAccount.rejected, (futuresState) => { + futuresState.queryStatuses.trades = { + error: 'Failed to fetch trades', + status: FetchStatus.Error, + } + }) + + // Fetch funding rates + builder.addCase(fetchFundingRatesHistory.rejected, (futuresState) => { + futuresState.queryStatuses.historicalFundingRates = { + error: 'Failed to fetch funding rates', + status: FetchStatus.Error, + } + }) + builder.addCase(fetchFundingRatesHistory.fulfilled, (futuresState, { payload }) => { + futuresState.historicalFundingRates[payload.marketAsset] = payload.rates + }) + }, +}) + +export default smartMarginSlice.reducer + +export const { + handlePreviewError, + setMarketAsset, + setOrderType, + setClosePositionOrderType, + setClosePositionSizeDelta, + setClosePositionPrice, + setOrderFeeCap, + setLeverageSide, + setSmartMarginTradeInputs, + setSmartMarginAccount, + setSmartMarginMarginDelta, + setSmartMarginTradeStopLoss, + setSmartMarginTradeTakeProfit, + setSmartMarginOrderPrice, + setSmartMarginOrderPriceInvalidLabel, + setSmartMarginLeverageInput, + setSmartMarginFees, + setKeeperDeposit, + clearSmartMarginTradePreviews, + setSmartMarginTradePreview, + setSmartMarginOrderCancelling, + setSmartMarginEditPositionInputs, + incrementCrossPreviewCount, + setSLTPModalStopLoss, + setSLTPModalTakeProfit, +} = smartMarginSlice.actions + +const findWalletForAccount = ( + crossMarginState: SmartMarginState, + account: string, + network: NetworkId +) => { + const entry = Object.entries(crossMarginState.accounts[network]).find(([_, value]) => { + return value.account === account + }) + return entry ? entry[0] : undefined +} + +const mergeTradesForAccount = ( + smartMarginState: SmartMarginState, + network: NetworkId, + wallet: string, + trades: FuturesTrade[] +) => { + const existingTrades = smartMarginState.accounts[network]?.[wallet]?.trades ?? [] + trades.forEach((t) => { + if (!existingTrades.find((et) => et.txnHash === t.txnHash)) { + existingTrades.push(t) + } + }) + existingTrades.sort((a, b) => b.timestamp - a.timestamp) + updateSmartMarginAccount(smartMarginState, network, wallet, { + trades: trades, + }) +} + +export const updateSmartMarginAccount = ( + smartMarginState: SmartMarginState, + network: NetworkId, + wallet: string, + newAccountData: Partial +) => { + const updatedAccount = { + ...ZERO_STATE_CM_ACCOUNT, + ...smartMarginState.accounts[network]?.[wallet], + ...newAccountData, + } + + smartMarginState.accounts[network] = { + ...smartMarginState.accounts[network], + [wallet]: updatedAccount, + } +} diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts new file mode 100644 index 0000000000..46f95d2ec9 --- /dev/null +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -0,0 +1,1148 @@ +import { SL_TP_MAX_SIZE, ZERO_WEI } from '@kwenta/sdk/constants' +import { + TransactionStatus, + ConditionalOrderTypeEnum, + FuturesPosition, + PositionSide, +} from '@kwenta/sdk/types' +import { + calculateDesiredFillPrice, + getDefaultPriceImpact, + unserializePotentialTrade, + MarketKeyByAsset, + MarketAssetByKey, + stripZeros, +} from '@kwenta/sdk/utils' +import { createSelector } from '@reduxjs/toolkit' +import Wei, { wei } from '@synthetixio/wei' + +import { DEFAULT_DELAYED_CANCEL_BUFFER } from 'constants/defaults' +import { selectSusdBalance } from 'state/balances/selectors' +import { deserializeWeiObject } from 'state/helpers' +import { + selectOffchainPricesInfo, + selectOnChainPricesInfo, + selectPrices, +} from 'state/prices/selectors' +import { RootState } from 'state/store' +import { FetchStatus } from 'state/types' +import { selectNetwork, selectWallet } from 'state/wallet/selectors' +import { computeDelayedOrderFee, sameSide } from 'utils/costCalculations' +import { getKnownError } from 'utils/formatters/error' +import { + unserializeCmBalanceInfo, + unserializeFuturesVolumes, + unserializeTradeInputs, + unserializeMarkets, + unserializeDelayedOrders, + updatePositionUpnl, + unserializePositionHistory, + unserializeTrades, + unserializeConditionalOrders, +} from 'utils/futures' + +import { futuresPositionKeys } from '../types' + +import { MarkPrices, MarkPriceInfos } from './types' + +export const selectV2MarketKey = createSelector( + (state: RootState) => state.smartMargin.selectedMarketAsset, + (marketAsset) => MarketKeyByAsset[marketAsset] +) + +export const selectSmartMarginAccount = createSelector( + selectWallet, + selectNetwork, + (state: RootState) => state.smartMargin, + (wallet, network, smartMargin) => { + return wallet ? smartMargin.accounts[network]?.[wallet]?.account : undefined + } +) + +export const selectQueryStatuses = (state: RootState) => state.smartMargin.queryStatuses + +export const selectMarketsQueryStatus = (state: RootState) => + state.smartMargin.queryStatuses.markets + +export const selectSmartMarginAccountQueryStatus = (state: RootState) => + state.smartMargin.queryStatuses.smartMarginAccount + +export const selectLeverageInput = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => smartMargin.leverageInput +) + +export const selectSmartMarginMarginDelta = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => wei(smartMargin.marginDelta || 0) +) + +export const selectMarginDeltaInputValue = (state: RootState) => state.smartMargin.marginDelta + +export const selectSmartMarginSupportedNetwork = (state: RootState) => + state.wallet.networkId === 10 || state.wallet.networkId === 420 + +export const selectShowSmartMarginOnboard = (state: RootState) => + state.app.showModal === 'futures_smart_margin_onboard' + +export const selectEditPositionModalMarket = (state: RootState) => + state.app.showPositionModal?.marketKey + +export const selectSmartMarginAccountData = createSelector( + selectWallet, + selectNetwork, + selectSmartMarginSupportedNetwork, + (state: RootState) => state.smartMargin, + (wallet, network, supportedNetwork, smartMargin) => { + return wallet && supportedNetwork ? smartMargin.accounts[network][wallet] : null + } +) + +export const selectCMBalance = createSelector(selectSmartMarginAccountData, (account) => + wei(account?.balanceInfo.freeMargin || 0) +) + +export const selectV2MarketAsset = (state: RootState) => state.smartMargin.selectedMarketAsset + +export const selectPerpsV2Markets = createSelector( + selectNetwork, + (state: RootState) => state.smartMargin, + (network, smartMargin) => { + return smartMargin.markets[network] ? unserializeMarkets(smartMargin.markets[network]) : [] + } +) + +export const selectPerpsV2MarketVolumes = createSelector( + (state: RootState) => state.smartMargin.dailyMarketVolumes, + (dailyMarketVolumes) => unserializeFuturesVolumes(dailyMarketVolumes) +) + +export const selectMarketKeys = createSelector(selectPerpsV2Markets, (markets) => + markets.map(({ asset }) => MarketKeyByAsset[asset]) +) + +export const selectMarketAssets = createSelector(selectPerpsV2Markets, (markets) => + markets.map(({ asset }) => asset) +) + +export const selectV2MarketInfo = createSelector( + selectPerpsV2Markets, + selectV2MarketKey, + (markets, selectedMarket) => { + return markets.find((market) => market.marketKey === selectedMarket) + } +) + +export const selectOrderType = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => smartMargin.orderType +) + +export const selectSmartMarginOrderType = (state: RootState) => state.smartMargin.orderType + +export const selectClosePositionOrderInputs = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => { + return smartMargin.closePositionOrderInputs + } +) + +export const selectMarketIndexPrice = createSelector( + selectV2MarketAsset, + selectPrices, + (marketAsset, prices) => { + const price = prices[marketAsset] + // Note this assumes the order type is always delayed off chain + return price?.offChain ?? price?.onChain ?? wei(0) + } +) + +export const selectMarketPriceInfo = createSelector( + selectV2MarketInfo, + selectOffchainPricesInfo, + (marketInfo, pricesInfo) => { + if (!marketInfo || !pricesInfo[marketInfo.asset]) return + return pricesInfo[marketInfo.asset] + } +) + +export const selectSkewAdjustedPrice = createSelector( + selectMarketIndexPrice, + selectV2MarketInfo, + (price, marketInfo) => { + if (!marketInfo?.marketSkew || !marketInfo?.settings.skewScale) return price + return price + ? wei(price).mul(wei(marketInfo.marketSkew).div(marketInfo.settings.skewScale).add(1)) + : ZERO_WEI + } +) + +export const selectSkewAdjustedPriceInfo = createSelector( + selectMarketPriceInfo, + selectV2MarketInfo, + (priceInfo, marketInfo) => { + if (!marketInfo?.marketSkew || !marketInfo?.settings.skewScale) return priceInfo + return priceInfo + ? { + price: wei(priceInfo.price).mul( + wei(marketInfo.marketSkew).div(marketInfo.settings.skewScale).add(1) + ), + change: priceInfo?.change, + } + : undefined + } +) + +export const selectMarketPrices = createSelector( + selectV2MarketAsset, + selectPrices, + (marketAsset, prices) => { + return prices[marketAsset] ?? {} + } +) + +export const selectMarkPrices = createSelector( + selectPerpsV2Markets, + selectPrices, + (markets, prices) => { + const markPrices: MarkPrices = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.offChain ?? wei(0) + return { + ...acc, + [market.marketKey]: wei(price).mul( + wei(market.marketSkew).div(market.settings.skewScale).add(1) + ), + } + }, markPrices) + } +) + +export const selectMarkPriceInfos = createSelector( + selectPerpsV2Markets, + selectOffchainPricesInfo, + (markets, prices) => { + const markPrices: MarkPriceInfos = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.price ?? wei(0) + return { + ...acc, + [market.marketKey]: { + price: wei(price).mul(wei(market.marketSkew).div(market.settings.skewScale).add(1)), + change: prices[market.asset]?.change ?? null, + }, + } + }, markPrices) + } +) + +export const selectAllConditionalOrders = createSelector( + selectSmartMarginAccountData, + selectOnChainPricesInfo, + (account, prices) => { + if (!account) return [] + + const orders = unserializeConditionalOrders(account.conditionalOrders) + return orders.map((o) => { + const price = prices[MarketAssetByKey[o.marketKey]] + return { + ...o, + currentPrice: price, + } + }) + } +) + +export const selectSmartMarginPositionHistory = createSelector( + selectSmartMarginAccountData, + (accountData) => { + return unserializePositionHistory(accountData?.positionHistory ?? []) + } +) + +export const selectSelectedMarketPositionHistory = createSelector( + selectV2MarketAsset, + selectSmartMarginPositionHistory, + (marketAsset, positionHistory) => { + return positionHistory.find(({ asset, isOpen }) => isOpen && asset === marketAsset) + } +) + +export const selectSmartMarginPositions = createSelector( + selectSmartMarginAccountData, + selectAllConditionalOrders, + selectMarkPrices, + selectSmartMarginPositionHistory, + (account, orders, prices, positionHistory) => { + const positions = + account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] + return ( + positions.map( + // TODO: Maybe change to explicit serializing functions to avoid casting + (pos) => { + const stopLoss = orders.find((o) => { + return ( + o.marketKey === pos.marketKey && + o.size.abs().eq(SL_TP_MAX_SIZE) && + o.reduceOnly && + o.orderType === ConditionalOrderTypeEnum.STOP + ) + }) + const takeProfit = orders.find( + (o) => + o.marketKey === pos.marketKey && + o.size.abs().eq(SL_TP_MAX_SIZE) && + o.reduceOnly && + o.orderType === ConditionalOrderTypeEnum.LIMIT + ) + return { + ...pos, + stopLoss, + takeProfit, + } + } + ) ?? [] + ) + } +) + +export const selectActiveSmartMarginPositionsCount = createSelector( + selectSmartMarginPositions, + (positions) => { + return positions.filter((p) => !!p.position).length + } +) + +export const selectActiveSmartPositionsCount = createSelector( + selectSmartMarginPositions, + (positions) => { + return positions.filter((p) => !!p.position).length + } +) + +export const selectTotalUnrealizedPnl = createSelector(selectSmartMarginPositions, (positions) => { + return positions.reduce((acc, p) => { + return acc.add(p.position?.pnl ?? ZERO_WEI) + }, ZERO_WEI) +}) + +export const selectSubmittingFuturesTx = createSelector( + (state: RootState) => state.app, + (app) => { + return ( + app.transaction?.status === TransactionStatus.AwaitingExecution || + app.transaction?.status === TransactionStatus.Executed + ) + } +) + +export const selectIsClosingPosition = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return ( + (app.transaction?.type === 'close_isolated' || + app.transaction?.type === 'close_cross_margin') && + submitting + ) + } +) + +export const selectIsSubmittingSmartMarginTransfer = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return ( + (app.transaction?.type === 'deposit_smart_margin' || + app.transaction?.type === 'withdraw_smart_margin') && + submitting + ) + } +) + +export const selectIsApprovingSmartMarginDeposit = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return app.transaction?.type === 'approve_cross_margin' && submitting + } +) + +export const selectIsSubmittingIsolatedTransfer = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return ( + (app.transaction?.type === 'deposit_isolated' || + app.transaction?.type === 'withdraw_isolated') && + submitting + ) + } +) + +export const selectIsolatedTransferError = createSelector( + (state: RootState) => state.app, + (app) => { + return (app.transaction?.type === 'deposit_isolated' || + app.transaction?.type === 'withdraw_isolated') && + app.transaction?.status === TransactionStatus.Failed + ? app.transaction?.error ?? 'Transaction failed' + : null + } +) + +export const selectIsModifyingIsolatedPosition = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return app.transaction?.type === 'modify_isolated' && submitting + } +) + +export const selectIsCancellingOrder = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return app.transaction?.type === 'cancel_delayed_isolated' && submitting + } +) + +export const selectIsExecutingOrder = createSelector( + selectSubmittingFuturesTx, + (state: RootState) => state.app, + (submitting, app) => { + return app.transaction?.type === 'execute_delayed_isolated' && submitting + } +) + +export const selectIsMarketCapReached = createSelector( + (state: RootState) => state.smartMargin.leverageSide, + selectV2MarketInfo, + selectMarketIndexPrice, + (leverageSide, marketInfo, marketAssetRate) => { + const maxMarketValueUSD = marketInfo?.marketLimitUsd ?? wei(0) + const marketSize = marketInfo?.marketSize ?? wei(0) + const marketSkew = marketInfo?.marketSkew ?? wei(0) + + return leverageSide === PositionSide.LONG + ? marketSize.add(marketSkew).div('2').abs().mul(marketAssetRate).gte(maxMarketValueUSD) + : marketSize.sub(marketSkew).div('2').abs().mul(marketAssetRate).gte(maxMarketValueUSD) + } +) + +export const selectPosition = createSelector( + selectSmartMarginPositions, + selectV2MarketInfo, + (positions, market) => { + const position = positions.find((p) => p.marketKey === market?.marketKey) + return position + ? (deserializeWeiObject(position, futuresPositionKeys) as FuturesPosition) + : undefined + } +) + +export const selectOrderFeeCap = (state: RootState) => wei(state.smartMargin.orderFeeCap || '0') + +export const selectLeverageSide = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => smartMargin.leverageSide +) + +export const selectMaxLeverage = createSelector(selectV2MarketInfo, (market) => { + let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) + return adjustedMaxLeverage +}) + +export const selectAboveMaxLeverage = createSelector( + selectMaxLeverage, + selectPosition, + (maxLeverage, position) => { + return position?.position?.leverage && maxLeverage.lt(position.position.leverage) + } +) + +export const selectSmartMarginBalanceInfo = createSelector( + selectSmartMarginAccountData, + (account) => { + return account + ? unserializeCmBalanceInfo(account.balanceInfo) + : { + freeMargin: wei(0), + keeperEthBal: wei(0), + allowance: wei(0), + } + } +) + +export const selectSmartMarginDepositApproved = createSelector( + selectSmartMarginAccountData, + (account) => { + if (!account) return false + return wei(account.balanceInfo.allowance || 0).gt(0) + } +) + +export const selectAvailableMargin = createSelector( + selectV2MarketInfo, + selectPosition, + (marketInfo, position) => { + if (!marketInfo || !position) return ZERO_WEI + if (!position?.position) return position.remainingMargin + + let inaccessible = + position.position.notionalValue.div(marketInfo.appMaxLeverage).abs() ?? ZERO_WEI + + // If the user has a position open, we'll enforce a min initial margin requirement. + if (inaccessible.gt(0) && inaccessible.lt(marketInfo.minInitialMargin)) { + inaccessible = marketInfo.minInitialMargin + } + + // check if available margin will be less than 0 + return position.remainingMargin.sub(inaccessible).gt(0) + ? position.remainingMargin.sub(inaccessible).abs() + : ZERO_WEI + } +) + +export const selectRemainingMarketMargin = createSelector(selectPosition, (position) => { + if (!position) return ZERO_WEI + return position.remainingMargin +}) + +export const selectMarginInMarkets = (isSuspended: boolean = false) => + createSelector(selectSmartMarginPositions, selectPerpsV2Markets, (positions, markets) => { + const idleInMarkets = positions + .filter((p) => { + const market = markets.find((m) => m.marketKey === p.marketKey) + return market && market.isSuspended === isSuspended + }) + .filter((p) => !p.position?.size.abs().gt(0) && p.remainingMargin.gt(0)) + .reduce((acc, p) => acc.add(p.remainingMargin), wei(0)) + return idleInMarkets + }) + +export const selectAvailableMarginInMarkets = selectMarginInMarkets() + +export const selectLockedMarginInMarkets = selectMarginInMarkets(true) + +export const selectIdleMargin = createSelector( + selectAvailableMarginInMarkets, + selectSmartMarginBalanceInfo, + selectSusdBalance, + (idleInMarkets, { freeMargin }, balance) => { + return balance.add(idleInMarkets).add(freeMargin) + } +) + +export const selectSmartMarginAllowanceValid = createSelector( + selectSmartMarginAccountData, + selectSmartMarginBalanceInfo, + selectAvailableMarginInMarkets, + selectSmartMarginMarginDelta, + (account, { freeMargin }, idleInMarkets, marginDelta) => { + const totalIdleMargin = freeMargin.add(idleInMarkets) + if (!account) return false + const marginDeposit = marginDelta.sub(totalIdleMargin) + return ( + totalIdleMargin.gte(marginDelta) || wei(account.balanceInfo.allowance || 0).gte(marginDeposit) + ) + } +) + +export const selectWithdrawableSmartMargin = createSelector( + selectAvailableMarginInMarkets, + selectSmartMarginBalanceInfo, + (idleInMarkets, { freeMargin }) => { + return idleInMarkets.add(freeMargin) + } +) + +export const selectSmartMarginTradeInputs = createSelector( + selectLeverageSide, + (state: RootState) => state.smartMargin.tradeInputs, + (side, tradeInputs) => { + const inputs = unserializeTradeInputs(tradeInputs) + const deltas = { + susdSizeDelta: side === PositionSide.LONG ? inputs.susdSize : inputs.susdSize.neg(), + nativeSizeDelta: side === PositionSide.LONG ? inputs.nativeSize : inputs.nativeSize.neg(), + } + return { + ...inputs, + ...deltas, + susdSizeString: tradeInputs.susdSize, + nativeSizeString: tradeInputs.nativeSize, + } + } +) + +export const selectSmartMarginEditPosInputs = (state: RootState) => + state.smartMargin.editPositionInputs + +export const selectEditMarginAllowanceValid = createSelector( + selectSmartMarginAccountData, + selectSmartMarginBalanceInfo, + selectAvailableMarginInMarkets, + selectSmartMarginEditPosInputs, + (account, { freeMargin }, idleInMarkets, { marginDelta }) => { + const totalIdleMargin = freeMargin.add(idleInMarkets) + if (!account) return false + if (isNaN(Number(marginDelta))) return false + const marginDelatWei = wei(marginDelta || 0) + const marginDeposit = marginDelatWei.sub(totalIdleMargin) + return ( + totalIdleMargin.gte(marginDelatWei) || + wei(account.balanceInfo.allowance || 0).gte(marginDeposit) + ) + } +) + +export const selectKeeperEthBalance = createSelector(selectSmartMarginAccountData, (account) => + wei(account?.balanceInfo.keeperEthBal || 0) +) + +export const selectWalletEthBalance = createSelector(selectSmartMarginAccountData, (account) => + wei(account?.balanceInfo.walletEthBal || 0) +) + +export const selectSmartMarginKeeperDeposit = createSelector( + (state: RootState) => state.smartMargin.fees, + (fees) => { + return wei(fees.keeperEthDeposit) + } +) + +export const selectKeeperDepositExceedsBal = createSelector( + selectSmartMarginKeeperDeposit, + selectWalletEthBalance, + (keeperEthDeposit, walletEthBalance) => { + return keeperEthDeposit.gt(walletEthBalance) + } +) + +export const selectEditPositionModalInfo = createSelector( + selectEditPositionModalMarket, + selectSmartMarginPositions, + selectPerpsV2Markets, + selectPrices, + (modalMarketKey, smartPositions, markets, prices) => { + const position = smartPositions.find((p) => p.marketKey === modalMarketKey) + const market = markets.find((m) => m.marketKey === modalMarketKey) + if (!market) return { position: null, market: null, marketPrice: wei(0) } + const price = prices[market.asset] + // Note this assumes the order type is always delayed off chain + return { position, market, marketPrice: price.offChain || wei(0) } + } +) + +export const selectConditionalOrdersForMarket = createSelector( + selectV2MarketAsset, + selectSmartMarginAccountData, + (asset, account) => { + return account + ? unserializeConditionalOrders(account.conditionalOrders).filter((o) => o.asset === asset) + : [] + } +) + +export const selectStopLossOrder = createSelector( + selectConditionalOrdersForMarket, + selectV2MarketKey, + (selectOpenConditionalOrders, marketKey) => { + return selectOpenConditionalOrders.find( + (o) => + o.marketKey === marketKey && o.orderType === ConditionalOrderTypeEnum.STOP && o.reduceOnly + ) + } +) + +export const selectTakeProfitOrder = createSelector( + selectConditionalOrdersForMarket, + selectV2MarketKey, + (selectOpenConditionalOrders, marketKey) => { + return selectOpenConditionalOrders.find( + (o) => + o.marketKey === marketKey && o.orderType === ConditionalOrderTypeEnum.LIMIT && o.reduceOnly + ) + } +) + +export const selectAllSLTPOrders = createSelector(selectAllConditionalOrders, (orders) => { + return orders.filter((o) => o.reduceOnly && o.size.abs().eq(SL_TP_MAX_SIZE)) +}) + +export const selectSLTPModalExistingPrices = createSelector( + selectAllSLTPOrders, + selectEditPositionModalInfo, + (orders, { market }) => { + const sl = orders.find( + (o) => o.marketKey === market?.marketKey && o.orderType === ConditionalOrderTypeEnum.STOP + ) + const tp = orders.find( + (o) => o.marketKey === market?.marketKey && o.orderType === ConditionalOrderTypeEnum.LIMIT + ) + + return { + takeProfitPrice: tp?.targetPrice ? stripZeros(tp.targetPrice.toString()) : '', + stopLossPrice: sl?.targetPrice ? stripZeros(sl.targetPrice.toString()) : '', + } + } +) + +export const selectSlTpTradeInputs = createSelector( + (state: RootState) => state.smartMargin.tradeInputs, + (tradeInputs) => ({ + stopLossPrice: tradeInputs.stopLossPrice || '', + takeProfitPrice: tradeInputs.takeProfitPrice || '', + }) +) + +export const selectNewTradeHasSlTp = createSelector( + (state: RootState) => state.smartMargin.tradeInputs, + (tradeInputs) => Number(tradeInputs.stopLossPrice) > 0 || Number(tradeInputs.takeProfitPrice) > 0 +) + +export const selectSlTpModalInputs = createSelector( + (state: RootState) => state.smartMargin.sltpModalInputs, + (inputs) => ({ + stopLossPrice: inputs.stopLossPrice ?? '', + takeProfitPrice: inputs.takeProfitPrice ?? '', + }) +) + +export const selectSmartMarginOrderPrice = (state: RootState) => + state.smartMargin.orderPrice.price ?? '' + +export const selectTradePreview = createSelector( + selectSmartMarginTradeInputs, + selectSmartMarginOrderPrice, + selectOrderType, + (state: RootState) => state.smartMargin, + ({ nativeSizeDelta }, orderPrice, orderType, smartMargin) => { + const preview = smartMargin.previews.trade + const unserialized = preview ? unserializePotentialTrade(preview) : null + if (unserialized) { + const priceImpact = getDefaultPriceImpact(orderType) + const conditionalOrderPrice = wei(orderPrice || 0) + const price = + orderType !== 'market' && conditionalOrderPrice.gt(0) + ? conditionalOrderPrice + : unserialized.price + const desiredFillPrice = calculateDesiredFillPrice(nativeSizeDelta, price, priceImpact) + + return { + ...unserialized, + desiredFillPrice, + leverage: unserialized.margin.gt(0) + ? unserialized.notionalValue.div(unserialized.margin).abs() + : wei(0), + } + } + return null + } +) + +export const selectEditPositionPreview = createSelector( + selectSmartMarginEditPosInputs, + (state: RootState) => state.smartMargin, + ({ nativeSizeDelta }, smartMargin) => { + if (isNaN(Number(nativeSizeDelta))) return null + const preview = smartMargin.previews.edit + const unserialized = preview ? unserializePotentialTrade(preview) : null + if (unserialized) { + const priceImpact = getDefaultPriceImpact('market') + const desiredFillPrice = calculateDesiredFillPrice( + wei(nativeSizeDelta || 0), + unserialized.price, + priceImpact + ) + + return { + ...unserialized, + desiredFillPrice, + leverage: unserialized.margin.gt(0) + ? unserialized.notionalValue.div(unserialized.margin).abs() + : wei(0), + } + } + return null + } +) + +export const selectClosePositionPreview = createSelector( + selectEditPositionModalInfo, + selectClosePositionOrderInputs, + (state: RootState) => state.smartMargin, + ({ position }, { price, orderType }, smartMargin) => { + const preview = smartMargin.previews.close + const unserialized = preview ? unserializePotentialTrade(preview) : null + if (unserialized) { + const priceImpact = getDefaultPriceImpact(orderType) + let orderPrice = + (orderType === 'market' ? unserialized.price : wei(price?.value || 0)) ?? wei(0) + const desiredFillPrice = calculateDesiredFillPrice( + position?.position?.side === PositionSide.LONG ? wei(-1) : wei(1), + orderPrice, + priceImpact + ) + + return { + ...unserialized, + desiredFillPrice, + leverage: unserialized.margin.gt(0) + ? unserialized.notionalValue.div(unserialized.margin).abs() + : wei(0), + } + } + return null + } +) + +export const selectSmartMarginLeverage = createSelector( + selectPosition, + selectSmartMarginTradeInputs, + (position, { susdSize }) => { + const remainingMargin = position?.remainingMargin + if (!remainingMargin || remainingMargin.eq(0) || !susdSize) return wei(0) + return susdSize.div(remainingMargin) + } +) + +export const selectSmartMarginTransfers = createSelector( + selectSmartMarginAccountData, + (account) => { + return account?.marginTransfers ?? [] + } +) + +export const selectIdleMarginTransfers = createSelector( + selectWallet, + selectNetwork, + (state: RootState) => state.smartMargin, + (wallet, network, smartMargin) => { + if (!wallet) return [] + const account = smartMargin.accounts[network]?.[wallet] + return account?.idleTransfers ?? [] + } +) + +export const selectTradePreviewError = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => { + return smartMargin.queryStatuses.smartMarginTradePreview.error + } +) + +export const selectIsFetchingTradePreview = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => { + return smartMargin.queryStatuses.smartMarginTradePreview.status === FetchStatus.Loading + } +) + +export const selectModifyPositionError = createSelector( + (state: RootState) => state.app, + (app) => { + return app.transaction?.type === 'modify_isolated' && app.transaction?.error + ? getKnownError(app.transaction.error) + : null + } +) + +export const selectTradePreviewStatus = createSelector( + (state: RootState) => state.smartMargin, + (smartMargin) => { + return smartMargin.queryStatuses.smartMarginTradePreview + } +) + +export const selectOpenDelayedOrders = createSelector( + selectSmartMarginAccountData, + selectPerpsV2Markets, + (account, markets) => { + const orders = unserializeDelayedOrders(account?.delayedOrders ?? []) + + return orders.map((o) => { + const timePastExecution = Math.floor((Date.now() - o.executableAtTimestamp) / 1000) + const market = markets.find((m) => m.marketKey === o.marketKey) + return { + ...o, + isStale: + timePastExecution > + DEFAULT_DELAYED_CANCEL_BUFFER + (market?.settings.offchainDelayedOrderMaxAge ?? 0), + } + }) + } +) + +export const selectPendingDelayedOrder = createSelector( + selectOpenDelayedOrders, + selectV2MarketKey, + (delayedOrders, marketKey) => { + return delayedOrders.find((o) => o.marketKey === marketKey) + } +) + +export const selectIsConditionalOrder = createSelector( + (state: RootState) => state.smartMargin.orderType, + (type) => type === 'limit' || type === 'stop_market' +) + +export const selectDelayedOrderFee = createSelector( + selectV2MarketInfo, + selectSmartMarginTradeInputs, + selectSkewAdjustedPrice, + (market, { nativeSizeDelta }, price) => { + if ( + !market?.marketSkew || + !market?.feeRates.takerFeeOffchainDelayedOrder || + !market?.feeRates.makerFeeOffchainDelayedOrder || + !nativeSizeDelta + ) { + return { commitDeposit: undefined, delayedOrderFee: undefined } + } + + const notionalDiff = nativeSizeDelta.mul(price) + + const makerFee = market.feeRates.makerFeeOffchainDelayedOrder + const takerFee = market.feeRates.takerFeeOffchainDelayedOrder + + const staticRate = sameSide(notionalDiff, market.marketSkew) ? takerFee : makerFee + + return { + commitDeposit: notionalDiff.mul(staticRate).abs(), + delayedOrderFee: notionalDiff.mul(staticRate).abs(), + } + } +) + +export const selectOpenInterest = createSelector(selectPerpsV2Markets, (futuresMarkets) => + futuresMarkets.reduce( + (total, { openInterest }) => total.add(openInterest.shortUSD).add(openInterest.longUSD), + wei(0) + ) +) + +export const selectUsersTradesForMarket = createSelector( + selectV2MarketAsset, + selectSmartMarginAccountData, + (asset, smartAccountData) => { + const trades = unserializeTrades(smartAccountData?.trades ?? []) + return trades?.filter((t) => t.asset === asset) ?? [] + } +) + +export const selectAllSmartMarginTrades = createSelector( + selectSmartMarginAccountData, + selectPerpsV2Markets, + (smartMarginAccountData, markets) => { + const trades = unserializeTrades(smartMarginAccountData?.trades ?? []) + return trades.map((t) => { + const market = markets.find((m) => m.asset === t.asset) + return { + ...t, + market: market, + } + }) + } +) + +export const selectSelectedPortfolioTimeframe = (state: RootState) => + state.futures.dashboard.selectedPortfolioTimeframe + +export const selectCancellingConditionalOrder = (state: RootState) => + state.smartMargin.cancellingOrder + +export const selectHasRemainingMargin = createSelector( + selectPosition, + selectSmartMarginBalanceInfo, + (position, balanceInfo) => { + const posMargin = position?.remainingMargin ?? ZERO_WEI + return balanceInfo.freeMargin.add(posMargin).gt(0) + } +) + +export const selectOrderFee = createSelector( + selectV2MarketInfo, + selectSmartMarginTradeInputs, + (marketInfo, { susdSizeDelta }) => { + return computeDelayedOrderFee(marketInfo, susdSizeDelta) + } +) + +export const selectMaxUsdSizeInput = createSelector( + selectMaxLeverage, + selectMarginDeltaInputValue, + (maxLeverage, marginDelta) => { + return maxLeverage.mul(marginDelta || 0) + } +) + +export const selectAvailableOi = createSelector(selectV2MarketInfo, (marketInfo) => { + const availableOiUsdShort = + marketInfo?.marketLimitUsd.sub(marketInfo.openInterest.shortUSD) ?? wei(0) + + const availableOiUsdLong = + marketInfo?.marketLimitUsd.sub(marketInfo.openInterest.longUSD) ?? wei(0) + + const availableOiNativeShort = + marketInfo?.marketLimitNative.sub(marketInfo.openInterest.short) ?? wei(0) + + const availableOiNativeLong = + marketInfo?.marketLimitNative.sub(marketInfo.openInterest.long) ?? wei(0) + + return { + short: { + usd: availableOiUsdShort, + native: availableOiNativeShort, + }, + long: { + usd: availableOiUsdLong, + native: availableOiNativeLong, + }, + } +}) + +export const selectPreviewAvailableMargin = createSelector( + selectV2MarketInfo, + selectTradePreview, + selectDelayedOrderFee, + (marketInfo, tradePreview, delayedOrderFee) => { + if (!marketInfo || !tradePreview) return ZERO_WEI + + let inaccessible = tradePreview.notionalValue.div(marketInfo.appMaxLeverage).abs() ?? ZERO_WEI + const totalDeposit = !!delayedOrderFee.commitDeposit + ? delayedOrderFee.commitDeposit.add(marketInfo.keeperDeposit) + : ZERO_WEI + + // If the user has a position open, we'll enforce a min initial margin requirement. + if (inaccessible.gt(0) && inaccessible.lt(marketInfo.minInitialMargin)) { + inaccessible = marketInfo.minInitialMargin + } + + // check if available margin will be less than 0 + return tradePreview.margin.sub(inaccessible).sub(totalDeposit).gt(0) + ? tradePreview.margin.sub(inaccessible).sub(totalDeposit).abs() + : ZERO_WEI + } +) + +export const selectAverageEntryPrice = createSelector( + selectTradePreview, + selectSelectedMarketPositionHistory, + (tradePreview, positionHistory) => { + if (positionHistory && tradePreview) { + const { avgEntryPrice, side, size } = positionHistory + const currentSize = side === PositionSide.SHORT ? size.neg() : size + + // If the trade switched sides (long -> short or short -> long), use oracle price + if (currentSize.mul(tradePreview.size).lt(0)) return tradePreview.price + + // If the trade reduced position size on the same side, average entry remains the same + if (tradePreview.size.abs().lt(size)) return avgEntryPrice + + // If the trade increased position size on the same side, calculate new average + const existingValue = avgEntryPrice.mul(size) + const newValue = tradePreview.price.mul(tradePreview.sizeDelta.abs()) + const totalValue = existingValue.add(newValue) + return tradePreview.size.abs().gt(0) ? totalValue.div(tradePreview.size.abs()) : wei(0) + } + return null + } +) + +type PositionPreviewData = { + fillPrice: Wei + sizeIsNotZero: boolean + positionSide: string + positionSize: Wei + leverage: Wei + liquidationPrice: Wei + avgEntryPrice: Wei + notionalValue: Wei + showStatus: boolean +} + +export const selectPositionPreviewData = createSelector( + selectTradePreview, + selectPosition, + selectAverageEntryPrice, + (tradePreview, position, modifiedAverage) => { + if (!position?.position || tradePreview === null) { + return null + } + + return { + fillPrice: tradePreview.price, + sizeIsNotZero: tradePreview.size && !tradePreview.size?.eq(0), + positionSide: tradePreview.size?.gt(0) ? PositionSide.LONG : PositionSide.SHORT, + positionSize: tradePreview.size?.abs(), + notionalValue: tradePreview.notionalValue, + leverage: tradePreview.margin.gt(0) + ? tradePreview.notionalValue.div(tradePreview.margin).abs() + : ZERO_WEI, + liquidationPrice: tradePreview.liqPrice, + avgEntryPrice: modifiedAverage || ZERO_WEI, + showStatus: tradePreview.showStatus, + } as PositionPreviewData + } +) + +export const selectPreviewMarginChange = createSelector( + selectTradePreview, + selectPreviewAvailableMargin, + selectV2MarketInfo, + (tradePreview, previewAvailableMargin, marketInfo) => { + const potentialMarginUsage = tradePreview?.margin.gt(0) + ? tradePreview!.margin.sub(previewAvailableMargin).div(tradePreview!.margin).abs() ?? ZERO_WEI + : ZERO_WEI + + const maxPositionSize = + !!tradePreview && !!marketInfo + ? tradePreview.margin + .mul(marketInfo.appMaxLeverage) + .mul(tradePreview.side === PositionSide.LONG ? 1 : -1) + : null + + const potentialBuyingPower = !!maxPositionSize + ? maxPositionSize.sub(tradePreview?.notionalValue).abs() + : ZERO_WEI + + return { + showPreview: !!tradePreview && tradePreview.sizeDelta.abs().gt(0), + totalMargin: tradePreview?.margin || ZERO_WEI, + availableMargin: previewAvailableMargin.gt(0) ? previewAvailableMargin : ZERO_WEI, + buyingPower: potentialBuyingPower.gt(0) ? potentialBuyingPower : ZERO_WEI, + marginUsage: potentialMarginUsage.gt(1) ? wei(1) : potentialMarginUsage, + } + } +) + +export const selectSmartMarginPreviewCount = (state: RootState) => + state.smartMargin.previewDebounceCount + +export const selectBuyingPower = createSelector( + selectPosition, + selectMaxLeverage, + (position, maxLeverage) => { + const totalMargin = position?.remainingMargin ?? ZERO_WEI + return totalMargin.gt(ZERO_WEI) ? totalMargin.mul(maxLeverage ?? ZERO_WEI) : ZERO_WEI + } +) + +export const selectMarginUsage = createSelector( + selectAvailableMargin, + selectPosition, + (availableMargin, position) => { + const totalMargin = position?.remainingMargin ?? ZERO_WEI + return availableMargin.gt(ZERO_WEI) + ? totalMargin.sub(availableMargin).div(totalMargin) + : totalMargin.gt(ZERO_WEI) + ? wei(1) + : ZERO_WEI + } +) + +export const selectMarketSuspended = createSelector( + selectV2MarketInfo, + (marketInfo) => marketInfo?.isSuspended +) diff --git a/packages/app/src/state/futures/smartMargin.ts/types.ts b/packages/app/src/state/futures/smartMargin/types.ts similarity index 83% rename from packages/app/src/state/futures/smartMargin.ts/types.ts rename to packages/app/src/state/futures/smartMargin/types.ts index aa962967f0..23d5f81fb5 100644 --- a/packages/app/src/state/futures/smartMargin.ts/types.ts +++ b/packages/app/src/state/futures/smartMargin/types.ts @@ -1,5 +1,4 @@ import { - NetworkId, TransactionStatus, SmartMarginOrderType, FuturesPositionHistory, @@ -10,21 +9,20 @@ import { FuturesMarketAsset, MarginTransfer, FuturesFilledPosition, - FuturesMarginType, + FuturesMarket, + FuturesVolumes, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' import { QueryStatus } from 'state/types' -import { FuturesAccountData, FuturesTransactionType } from '../shared.ts/types' -type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY -export type AppFuturesMarginType = Exclude - -export type TradeSizeInputs = { - nativeSize: T - susdSize: T -} +import { + FuturesAccountData, + FuturesTransactionType, + HistoricalFundingRates, + TradeSizeInputs, +} from '../common/types' export type SLTPInputs = { stopLossPrice?: T @@ -60,15 +58,6 @@ export type FundingRate = { fundingRate: T | null } -export type FuturesAction = { - account: string - timestamp: number - asset: FuturesMarketAsset - margin: number - size: number - action: 'trade' | 'deposit' | 'withdraw' -} - export type SmartPerpsPortfolio = { account: string timestamp: number @@ -127,15 +116,6 @@ export type FundingRatePeriods = { [key: number]: string } -export type AccountContext = { - type: AppFuturesMarginType - network: NetworkId - wallet: string - cmAccount?: string -} - -export type PreviewAction = 'edit' | 'trade' | 'close' - export type SmartMarginAccountData = FuturesAccountData & { idleTransfers: MarginTransfer[] balanceInfo: SmartMarginBalanceInfo @@ -143,8 +123,15 @@ export type SmartMarginAccountData = FuturesAccountData & { } export type SmartMarginState = { + markets: Record[]> + selectedMarketAsset: FuturesMarketAsset + dailyMarketVolumes: FuturesVolumes + fundingRates: FundingRate[] + historicalFundingRates: HistoricalFundingRates + queryStatuses: FuturesQueryStatuses tradeInputs: SmartMarginTradeInputs editPositionInputs: EditPositionInputs + closePositionOrderInputs: ClosePositionInputs sltpModalInputs: SLTPInputs marginDelta: string orderType: SmartMarginOrderType @@ -152,8 +139,6 @@ export type SmartMarginState = { leverageInput: string selectedLeverageByAsset: Partial> leverageSide: PositionSide - selectedMarketKey: FuturesMarketKey - selectedMarketAsset: FuturesMarketAsset showSmartMarginOnboard: boolean previews: { trade: FuturesPotentialTradeDetails | null diff --git a/packages/app/src/state/futures/types.ts b/packages/app/src/state/futures/types.ts index b7378eb61b..b8650c31f1 100644 --- a/packages/app/src/state/futures/types.ts +++ b/packages/app/src/state/futures/types.ts @@ -1,59 +1,16 @@ import { Period } from '@kwenta/sdk/constants' import { - NetworkId, TransactionStatus, - SmartMarginOrderType, - FuturesMarket, - FuturesOrderTypeDisplay, FuturesPositionHistory, - FuturesPotentialTradeDetails, - FuturesTrade, - FuturesVolumes, - PositionSide, - ConditionalOrder as SmartMarginOrder, FuturesMarketKey, FuturesMarketAsset, - MarginTransfer, FuturesFilledPosition, - FuturesMarginType, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' -import { QueryStatus } from 'state/types' -import { FuturesAccountData, FuturesTransactionType } from './shared.ts/types' -type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY -export type AppFuturesMarginType = Exclude - -export type TradeSizeInputs = { - nativeSize: T - susdSize: T -} - -export type SLTPInputs = { - stopLossPrice?: T - takeProfitPrice?: T -} - -export type SmartMarginTradeInputs = TradeSizeInputs & { - stopLossPrice?: T - takeProfitPrice?: T -} - -export type EditPositionInputs = { - nativeSizeDelta: T - marginDelta: T -} - -export type ClosePositionInputs = { - nativeSizeDelta: T - price?: { - value?: string | undefined | null - invalidLabel: string | undefined | null - } - orderType: SmartMarginOrderType -} +import { AppFuturesMarginType, FuturesTransactionType } from './common/types' export type MarkPrices = Partial> @@ -79,22 +36,6 @@ export type PortfolioValues = { total: number } -export type FuturesQueryStatuses = { - markets: QueryStatus - smartMarginBalanceInfo: QueryStatus - dailyVolumes: QueryStatus - smartMarginPositions: QueryStatus - smartMarginPositionHistory: QueryStatus - openOrders: QueryStatus - smartMarginTradePreview: QueryStatus - smartMarginAccount: QueryStatus - positionHistory: QueryStatus - trades: QueryStatus - selectedTraderPositionHistory: QueryStatus - marginTransfers: QueryStatus - historicalFundingRates: QueryStatus -} - export type FuturesTransaction = { type: FuturesTransactionType status: TransactionStatus @@ -102,22 +43,6 @@ export type FuturesTransaction = { hash: string | null } -export type SmartMarginBalanceInfo = { - freeMargin: T - keeperEthBal: T - allowance: T - walletEthBal: T -} - -export type SmartMarginTradeFees = { - delayedOrderFee: T - keeperEthDeposit: T -} - -type FuturesErrors = { - tradePreview?: string | undefined | null -} - type FuturesNetwork = number export type InputCurrencyDenomination = 'usd' | 'native' @@ -126,35 +51,9 @@ export type FundingRatePeriods = { [key: number]: string } -export type AccountContext = { - type: AppFuturesMarginType - network: NetworkId - wallet: string - cmAccount?: string -} - -export type PreviewAction = 'edit' | 'trade' | 'close' - -export type SmartMarginAccountData = FuturesAccountData & { - account: string - idleTransfers: MarginTransfer[] - balanceInfo: SmartMarginBalanceInfo - delayedOrders: DelayedOrderWithDetails[] - conditionalOrders: SmartMarginOrder[] -} - -// TODO: Separate in some way by network and wallet -// so we can have persisted state between switching - export type FuturesState = { selectedType: AppFuturesMarginType confirmationModalOpen: boolean - fundingRates: FundingRate[] - smartMargin: SmartMarginState - markets: Record[]> - queryStatuses: FuturesQueryStatuses - dailyMarketVolumes: FuturesVolumes - errors: FuturesErrors selectedInputDenomination: InputCurrencyDenomination selectedInputHours: number selectedChart: 'price' | 'funding' @@ -174,50 +73,6 @@ export type FuturesState = { > } tradePanelDrawerOpen: boolean - historicalFundingRates: Partial< - Record - > - closePositionOrderInputs: ClosePositionInputs -} - -export type TradePreviewResult = { - data: FuturesPotentialTradeDetails | null - error: string | null -} - -export type SmartMarginState = { - tradeInputs: SmartMarginTradeInputs - editPositionInputs: EditPositionInputs - sltpModalInputs: SLTPInputs - marginDelta: string - orderType: SmartMarginOrderType - orderFeeCap: string - leverageInput: string - selectedLeverageByAsset: Partial> - leverageSide: PositionSide - selectedMarketKey: FuturesMarketKey - selectedMarketAsset: FuturesMarketAsset - showSmartMarginOnboard: boolean - previews: { - trade: FuturesPotentialTradeDetails | null - close: FuturesPotentialTradeDetails | null - edit: FuturesPotentialTradeDetails | null - } - previewDebounceCount: number - fees: SmartMarginTradeFees - depositApproved: boolean - cancellingOrder: number | undefined - accounts: Record< - FuturesNetwork, - { - [wallet: string]: SmartMarginAccountData - } - > - - orderPrice: { - price?: string | undefined | null - invalidLabel: string | undefined | null - } } export type CancelDelayedOrderInputs = { @@ -231,42 +86,6 @@ export type ExecuteDelayedOrderInputs = { isOffchain: boolean } -export type DelayedOrderWithDetails = { - account: string - marketAddress: string - market: string - asset: FuturesMarketAsset - marketKey: FuturesMarketKey - size: T - commitDeposit: T - keeperDeposit: T - submittedAtTimestamp: number - executableAtTimestamp: number - isOffchain: boolean - desiredFillPrice: T - targetRoundId: T | null - orderType: FuturesOrderTypeDisplay - side: PositionSide - isStale?: boolean - isExecutable?: boolean - isCancelling?: boolean -} - -export type TradePreviewParams = { - market: { - key: FuturesMarketKey - address: string - } - orderPrice: Wei - sizeDelta: Wei - marginDelta: Wei - action: PreviewAction -} - -export type DebouncedPreviewParams = TradePreviewParams & { - debounceCount: number -} - export type SharePositionParams = { asset?: FuturesMarketAsset position?: FuturesFilledPosition diff --git a/packages/app/src/state/store.ts b/packages/app/src/state/store.ts index 9620341a3e..1ac55870c6 100644 --- a/packages/app/src/state/store.ts +++ b/packages/app/src/state/store.ts @@ -19,7 +19,9 @@ import appReducer from './app/reducer' import balancesReducer from './balances/reducer' import earnReducer from './earn/reducer' import exchangeReducer from './exchange/reducer' +import crossMarginReducer from './futures/crossMargin/reducer' import futuresReducer from './futures/reducer' +import smartMarginReducer from './futures/smartMargin/reducer' import homeReducer from './home/reducer' import migrations from './migrations' import preferencesReducer from './preferences/reducer' @@ -28,7 +30,6 @@ import sdk from './sdk' import stakingReducer from './staking/reducer' import statsReducer from './stats/reducer' import walletReducer from './wallet/reducer' -import crossMarginReducer from './futures/crossMargin/reducer' const LOG_REDUX = false @@ -47,6 +48,7 @@ const combinedReducers = combineReducers({ exchange: exchangeReducer, futures: futuresReducer, crossMargin: crossMarginReducer, + smartMargin: smartMarginReducer, home: homeReducer, earn: earnReducer, staking: stakingReducer, diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index e2f38d058d..a64e3ae1e9 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -20,14 +20,9 @@ import { import Wei, { wei } from '@synthetixio/wei' import { TFunction } from 'i18next' -import { - SmartMarginBalanceInfo, - TradeSizeInputs, - DelayedOrderWithDetails, - futuresPositionKeys, - FundingRate, - MarkPrices, -} from 'state/futures/types' +import { DelayedOrderWithDetails, TradeSizeInputs } from 'state/futures/common/types' +import { SmartMarginBalanceInfo } from 'state/futures/smartMargin/types' +import { futuresPositionKeys, FundingRate, MarkPrices } from 'state/futures/types' import { deserializeWeiObject } from 'state/helpers' export const getMarketName = (asset: FuturesMarketAsset) => { diff --git a/packages/app/testing/unit/mocks/data/futures.ts b/packages/app/testing/unit/mocks/data/futures.ts index 9741a3ca04..497d5da777 100644 --- a/packages/app/testing/unit/mocks/data/futures.ts +++ b/packages/app/testing/unit/mocks/data/futures.ts @@ -7,6 +7,7 @@ import { import { wei } from '@synthetixio/wei' import { FUTURES_INITIAL_STATE } from 'state/futures/reducer' +import { SMART_MARGIN_INITIAL_STATE } from 'state/futures/smartMargin/reducer' import { PRELOADED_STATE, TEST_ADDR } from './app' @@ -187,12 +188,12 @@ export const preloadedStateWithSmartMarginAccount = (mockAccount = mockSmartMarg ...PRELOADED_STATE, futures: { ...FUTURES_INITIAL_STATE, - crossMargin: { - ...FUTURES_INITIAL_STATE.smartMargin, - accounts: { - [10 as NetworkId]: { - [TEST_ADDR]: mockAccount, - }, + }, + smartMargin: { + ...SMART_MARGIN_INITIAL_STATE, + accounts: { + [10 as NetworkId]: { + [TEST_ADDR]: mockAccount, }, }, }, diff --git a/packages/app/tsconfig.json b/packages/app/tsconfig.json index 23e294dfb4..b4a6638662 100644 --- a/packages/app/tsconfig.json +++ b/packages/app/tsconfig.json @@ -30,6 +30,6 @@ "**/*.ts", "**/*.tsx", "next.config.js" - ], +, "src/state/futures/common", "src/state/futures/smartMargin" ], "types": ["node", "jest", "@testing-library/jest-dom"], } diff --git a/packages/sdk/src/constants/futures.ts b/packages/sdk/src/constants/futures.ts index 95d3008f0d..125f712930 100644 --- a/packages/sdk/src/constants/futures.ts +++ b/packages/sdk/src/constants/futures.ts @@ -10,7 +10,6 @@ import { FuturesOrderType, } from '../types/futures' import { weiFromWei } from '../utils/number' -import { NetworkId } from '../types' export const KWENTA_TRACKING_CODE = ethers.utils.formatBytes32String('KWENTA') diff --git a/packages/sdk/src/services/futures.ts b/packages/sdk/src/services/futures.ts index d0af88cd30..fb93f37cb6 100644 --- a/packages/sdk/src/services/futures.ts +++ b/packages/sdk/src/services/futures.ts @@ -51,7 +51,6 @@ import { import { PricesMap } from '../types/prices' import { calculateTimestampForPeriod } from '../utils/date' import { - appAdjustedLeverage, calculateFundingRate, calculateVolumes, ConditionalOrderResult, @@ -61,7 +60,6 @@ import { formatDelayedOrder, formatPotentialTrade, getFuturesEndpoint, - getMarketName, mapConditionalOrderFromContract, mapFuturesPosition, mapFuturesPositions, diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 961e9a3716..94066db3b7 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -20,7 +20,7 @@ import { queryTrades, queryFundingRateHistory, } from '../queries/futures' -import { NetworkId, NetworkOverrideOptions } from '../types/common' +import { NetworkId } from '../types/common' import { FuturesMarket, FuturesMarketAsset, @@ -65,7 +65,7 @@ export default class PerpsV3Service { return getPerpsV3SubgraphUrl(this.sdk.context.networkId) } - public async getMarkets(networkOverride?: NetworkOverrideOptions) { + public async getMarkets() { const perpsV3Markets = await getPerpsV3Markets(this.sdk) // const enabledMarkets = marketsForNetwork( // networkOverride?.networkId || this.sdk.context.networkId, @@ -151,7 +151,7 @@ export default class PerpsV3Service { if (!marketKey) return acc acc.push({ - market: marketOwner, + market: perpsMarketId, marketKey: marketKey, marketName: marketName, asset: MarketAssetByKey[marketKey], @@ -256,7 +256,11 @@ export default class PerpsV3Service { return queryFundingRateHistory(this.sdk, marketAsset, minTimestamp) } - public async getAverageFundingRates(markets: FuturesMarket[], prices: PricesMap, period: Period) { + public async getAverageFundingRates( + _markets: FuturesMarket[], + _prices: PricesMap, + _period: Period + ) { return [] // const fundingRateInputs: FundingRateInput[] = markets.map( // ({ asset, market, currentFundingRate }) => { @@ -438,10 +442,10 @@ export default class PerpsV3Service { } public async getIsolatedTradePreview( - marketAddress: string, - marketKey: FuturesMarketKey, - orderType: ContractOrderType, - inputs: { + _marketAddress: string, + _marketKey: FuturesMarketKey, + _orderType: ContractOrderType, + _inputs: { sizeDelta: Wei price: Wei leverageSide: PositionSide From 9973be55797df3902cfd038f8319c96779cf59dc Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 11 Jul 2023 15:43:03 +0100 Subject: [PATCH 06/43] Update futures modal types --- packages/app/src/pages/market.tsx | 6 +++--- .../app/src/sections/futures/Trade/ManagePosition.tsx | 2 +- packages/app/src/sections/futures/Trade/MarketActions.tsx | 8 ++++---- packages/app/src/sections/futures/Trade/TradeBalance.tsx | 4 ++-- packages/app/src/state/app/types.ts | 6 +++--- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index 560bc81793..3dad8a5994 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -124,18 +124,18 @@ const Market: MarketComponent = () => { )} {showPositionModal?.type === 'futures_edit_position_size' && } {showPositionModal?.type === 'futures_edit_position_margin' && } - {openModal === 'futures_isolated_transfer' && ( + {openModal === 'futures_deposit_withdraw_cross_margin' && ( dispatch(setOpenModal(null))} /> )} - {openModal === 'futures_cross_withdraw' && ( + {openModal === 'futures_withdraw_smart_margin' && ( dispatch(setOpenModal(null))} /> )} {openModal === 'futures_confirm_smart_margin_trade' && } - {openModal === 'futures_confirm_isolated_margin_trade' && } + {openModal === 'futures_confirm_cross_margin_trade' && } ) } diff --git a/packages/app/src/sections/futures/Trade/ManagePosition.tsx b/packages/app/src/sections/futures/Trade/ManagePosition.tsx index 3813adcb0a..9b0fb3f741 100644 --- a/packages/app/src/sections/futures/Trade/ManagePosition.tsx +++ b/packages/app/src/sections/futures/Trade/ManagePosition.tsx @@ -82,7 +82,7 @@ const ManagePosition: React.FC = () => { setOpenModal( selectedAccountType === FuturesMarginType.SMART_MARGIN ? 'futures_confirm_smart_margin_trade' - : 'futures_confirm_isolated_margin_trade' + : 'futures_confirm_cross_margin_trade' ) ) }, [selectedAccountType, smartMarginAccount, dispatch]) diff --git a/packages/app/src/sections/futures/Trade/MarketActions.tsx b/packages/app/src/sections/futures/Trade/MarketActions.tsx index 7533bd5303..e12aa946ba 100644 --- a/packages/app/src/sections/futures/Trade/MarketActions.tsx +++ b/packages/app/src/sections/futures/Trade/MarketActions.tsx @@ -29,7 +29,7 @@ const MarketActions: React.FC = () => { dispatch(setOpenModal('futures_isolated_transfer'))} + onClick={() => dispatch(setOpenModal('futures_deposit_withdraw_cross_margin'))} noOutline > {t('futures.market.trade.button.deposit')} @@ -42,20 +42,20 @@ const MarketActions: React.FC = () => { !isL2 || !walletAddress } - onClick={() => dispatch(setOpenModal('futures_isolated_transfer'))} + onClick={() => dispatch(setOpenModal('futures_deposit_withdraw_cross_margin'))} noOutline > {t('futures.market.trade.button.withdraw')} - {openModal === 'futures_isolated_transfer' && ( + {openModal === 'futures_deposit_withdraw_cross_margin' && ( dispatch(setOpenModal(null))} /> )} - {openModal === 'futures_isolated_transfer' && ( + {openModal === 'futures_deposit_withdraw_cross_margin' && ( dispatch(setOpenModal(null))} diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalance.tsx index 38da3dd56a..450c747bb4 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalance.tsx @@ -167,8 +167,8 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => dispatch( setOpenModal( accountType === FuturesMarginType.CROSS_MARGIN - ? 'futures_isolated_transfer' - : 'futures_cross_withdraw' + ? 'futures_deposit_withdraw_cross_margin' + : 'futures_withdraw_smart_margin' ) ) }} diff --git a/packages/app/src/state/app/types.ts b/packages/app/src/state/app/types.ts index de607aec96..880ef1095f 100644 --- a/packages/app/src/state/app/types.ts +++ b/packages/app/src/state/app/types.ts @@ -4,10 +4,10 @@ import { FuturesTransactionType } from 'state/futures/common/types' export type ModalType = | 'futures_close_position_confirm' - | 'futures_cross_withdraw' - | 'futures_isolated_transfer' + | 'futures_withdraw_smart_margin' + | 'futures_deposit_withdraw_cross_margin' | 'futures_confirm_smart_margin_trade' - | 'futures_confirm_isolated_margin_trade' + | 'futures_confirm_cross_margin_trade' | 'futures_withdraw_keeper_balance' | 'futures_smart_margin_onboard' | 'futures_smart_margin_socket' From 148b72f737a017bd315ba212b7bc78f802a22465 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 11 Jul 2023 19:30:18 +0100 Subject: [PATCH 07/43] Update onboard name --- packages/app/src/pages/market.tsx | 4 ++-- .../futures/CreatePerpsV3AccountModal.tsx | 2 +- .../futures/CrossMarginOnboard/index.tsx | 1 - .../SmartMarginFAQ.tsx} | 0 .../SmartMarginOnboard.tsx} | 18 +++++++++--------- .../futures/SmartMarginOnboard/index.tsx | 1 + 6 files changed, 13 insertions(+), 13 deletions(-) delete mode 100644 packages/app/src/sections/futures/CrossMarginOnboard/index.tsx rename packages/app/src/sections/futures/{CrossMarginOnboard/CrossMarginFAQ.tsx => SmartMarginOnboard/SmartMarginFAQ.tsx} (100%) rename packages/app/src/sections/futures/{CrossMarginOnboard/CrossMarginOnboard.tsx => SmartMarginOnboard/SmartMarginOnboard.tsx} (91%) create mode 100644 packages/app/src/sections/futures/SmartMarginOnboard/index.tsx diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index 3dad8a5994..1803722323 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -11,7 +11,7 @@ import Connector from 'containers/Connector' import useIsL2 from 'hooks/useIsL2' import useWindowSize from 'hooks/useWindowSize' import ClosePositionModal from 'sections/futures/ClosePositionModal/ClosePositionModal' -import CrossMarginOnboard from 'sections/futures/CrossMarginOnboard' +import SmartMarginOnboard from 'sections/futures/SmartMarginOnboard' import EditPositionMarginModal from 'sections/futures/EditPositionModal/EditPositionMarginModal' import EditPositionSizeModal from 'sections/futures/EditPositionModal/EditPositionSizeModal' import EditStopLossAndTakeProfitModal from 'sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal' @@ -95,7 +95,7 @@ const Market: MarketComponent = () => { return ( <> - + {lessThanWidth('lg') ? ( diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 62149960a9..a2c819498e 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -23,7 +23,7 @@ import { import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' -import CrossMarginFAQ from './CrossMarginOnboard/CrossMarginFAQ' +import CrossMarginFAQ from './SmartMarginOnboard/SmartMarginFAQ' type Props = { isOpen: boolean diff --git a/packages/app/src/sections/futures/CrossMarginOnboard/index.tsx b/packages/app/src/sections/futures/CrossMarginOnboard/index.tsx deleted file mode 100644 index 46a425742e..0000000000 --- a/packages/app/src/sections/futures/CrossMarginOnboard/index.tsx +++ /dev/null @@ -1 +0,0 @@ -export { default } from './CrossMarginOnboard' diff --git a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginFAQ.tsx b/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginFAQ.tsx similarity index 100% rename from packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginFAQ.tsx rename to packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginFAQ.tsx diff --git a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx b/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx similarity index 91% rename from packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx rename to packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx index 283eb32c25..8aa5f97d54 100644 --- a/packages/app/src/sections/futures/CrossMarginOnboard/CrossMarginOnboard.tsx +++ b/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx @@ -21,17 +21,17 @@ import { import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' -import CrossMarginFAQ from './CrossMarginFAQ' +import SmartMarginFAQ from './SmartMarginFAQ' type Props = { isOpen: boolean } -export default function CrossMarginOnboard({ isOpen }: Props) { +export default function SmartMarginOnboard({ isOpen }: Props) { const { t } = useTranslation() const dispatch = useAppDispatch() - const crossMarginAvailable = useAppSelector(selectSmartMarginSupportedNetwork) - const crossMarginAccount = useAppSelector(selectSmartMarginAccount) + const smartMarginAvailable = useAppSelector(selectSmartMarginSupportedNetwork) + const smartMarginAccount = useAppSelector(selectSmartMarginAccount) const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) const depositApproved = useAppSelector(selectSmartMarginDepositApproved) const txProcessing = useAppSelector(selectSubmittingFuturesTx) @@ -64,10 +64,10 @@ export default function CrossMarginOnboard({ isOpen }: Props) { } const renderContent = () => { - if (!crossMarginAvailable) { + if (!smartMarginAvailable) { return } - if (!crossMarginAccount && queryStatus.status === FetchStatus.Loading) { + if (!smartMarginAccount && queryStatus.status === FetchStatus.Loading) { return ( @@ -90,13 +90,13 @@ export default function CrossMarginOnboard({ isOpen }: Props) { ) } - if (crossMarginAccount && !depositApproved) { + if (smartMarginAccount && !depositApproved) { return ( <> {t('futures.modals.onboard.step2-intro')}
FAQ: - +
{renderProgress(2)} @@ -141,7 +141,7 @@ export default function CrossMarginOnboard({ isOpen }: Props) { {t('futures.modals.onboard.step1-intro')}
FAQ: - +
{renderProgress(1)} diff --git a/packages/app/src/sections/futures/SmartMarginOnboard/index.tsx b/packages/app/src/sections/futures/SmartMarginOnboard/index.tsx new file mode 100644 index 0000000000..7d287535ec --- /dev/null +++ b/packages/app/src/sections/futures/SmartMarginOnboard/index.tsx @@ -0,0 +1 @@ +export { default } from './SmartMarginOnboard' From f2f4fda8e37d27559f37c283f3d09acf903b643b Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 11 Jul 2023 20:37:27 +0100 Subject: [PATCH 08/43] Fix tests --- packages/app/src/__tests__/pages/market.test.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/app/src/__tests__/pages/market.test.tsx b/packages/app/src/__tests__/pages/market.test.tsx index b4290d3f51..ed22c1f69e 100644 --- a/packages/app/src/__tests__/pages/market.test.tsx +++ b/packages/app/src/__tests__/pages/market.test.tsx @@ -49,7 +49,7 @@ describe('Futures market page - smart margin', () => { test('Calculates correct fees from trade preview', async () => { const { findByTestId, findByText } = render( @@ -69,7 +69,7 @@ describe('Futures market page - smart margin', () => { test('Submits LONG order with correct desired fill price', async () => { const store = setupStore(preloadedStateWithSmartMarginAccount()) const { findByTestId, findByText } = render( - + ) @@ -103,7 +103,7 @@ describe('Futures market page - smart margin', () => { test('Submits SHORT order with correct desired fill price', async () => { const store = setupStore(preloadedStateWithSmartMarginAccount()) const { findByTestId, findByText } = render( - + ) @@ -146,7 +146,7 @@ describe('Futures market page - smart margin', () => { preloadedStateWithSmartMarginAccount(mockSmartMarginAccount('1000000')) ) const { findByTestId, findByText } = render( - + ) @@ -166,7 +166,7 @@ describe('Futures market page - smart margin', () => { sdk.futures.getMarkets = () => Promise.resolve([...SDK_MARKETS] as FuturesMarket[]) const store = setupStore(preloadedStateWithSmartMarginAccount()) const { findByTestId, findByText } = render( - + ) From e94701186c7e25d5df4da9407f40773d49a0eadd Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Thu, 13 Jul 2023 10:19:33 +0100 Subject: [PATCH 09/43] Cross margin deposits --- packages/app/src/pages/market.tsx | 13 +- .../futures/CreatePerpsV3AccountModal.tsx | 104 +- .../SmartMarginOnboard/SmartMarginOnboard.tsx | 8 +- ...dal.tsx => DepositWithdrawCrossMargin.tsx} | 51 +- .../sections/futures/Trade/MarketActions.tsx | 6 +- .../futures/Trade/SmartMarginOnboardModal.tsx | 4 +- .../sections/futures/Trade/TradeBalance.tsx | 4 +- .../futures/Trade/TradeBalanceCrossMargin.tsx | 173 + .../futures/Trade/TradePanelCrossMargin.tsx | 96 + .../ManageKeeperBalanceModal.tsx | 2 +- .../TradeSmartMargin/SmartMarginInfoBox.tsx | 4 +- packages/app/src/state/app/types.ts | 1 + packages/app/src/state/balances/actions.ts | 21 +- packages/app/src/state/balances/reducer.ts | 21 +- packages/app/src/state/balances/selectors.ts | 12 +- packages/app/src/state/balances/types.ts | 5 +- .../src/state/futures/crossMargin/actions.ts | 74 +- .../src/state/futures/crossMargin/reducer.ts | 9 +- .../state/futures/crossMargin/selectors.ts | 37 +- .../src/state/futures/crossMargin/types.ts | 5 +- packages/app/src/state/futures/hooks.ts | 19 +- .../src/state/futures/smartMargin/actions.ts | 8 +- .../state/futures/smartMargin/selectors.ts | 8 +- packages/app/src/state/migrations.ts | 3 +- packages/app/src/state/store.ts | 2 +- packages/app/src/translations/en.json | 10 +- packages/app/src/utils/balances.ts | 48 +- packages/sdk/src/constants/perpsv3.ts | 7 + .../contracts/abis/PerpsV3MarketProxy.json | 13 - packages/sdk/src/contracts/constants.ts | 5 +- packages/sdk/src/contracts/index.ts | 6 + .../sdk/src/contracts/types/BatchClaimer.ts | 218 +- .../src/contracts/types/DappMaintenance.ts | 510 +- packages/sdk/src/contracts/types/ERC20.ts | 816 +- .../sdk/src/contracts/types/ExchangeRates.ts | 2789 ++++--- packages/sdk/src/contracts/types/Exchanger.ts | 1934 +++-- .../sdk/src/contracts/types/FuturesMarket.ts | 2624 +++--- .../src/contracts/types/FuturesMarketData.ts | 1141 +-- .../contracts/types/FuturesMarketSettings.ts | 2503 +++--- .../src/contracts/types/KwentaArrakisVault.ts | 3001 ++++--- .../contracts/types/KwentaStakingRewards.ts | 1456 ++-- .../types/MultipleMerkleDistributor.ts | 858 +- .../types/MultipleMerkleDistributorOp.ts | 807 +- .../types/MultipleMerkleDistributorPerpsV2.ts | 844 +- .../sdk/src/contracts/types/PerpsV2Market.ts | 3560 ++++---- .../src/contracts/types/PerpsV2MarketData.ts | 1290 +-- .../contracts/types/PerpsV2MarketSettings.ts | 4311 +++++----- .../src/contracts/types/PerpsV2MarketViews.ts | 1601 ++-- .../src/contracts/types/PerpsV3MarketProxy.ts | 7222 +++++++++-------- packages/sdk/src/contracts/types/Pyth.ts | 968 ++- .../sdk/src/contracts/types/ReverseRecords.ts | 118 +- .../sdk/src/contracts/types/RewardEscrow.ts | 1955 +++-- .../src/contracts/types/SmartMarginAccount.ts | 1146 +-- .../types/SmartMarginAccountFactory.ts | 733 +- .../sdk/src/contracts/types/StakingRewards.ts | 1234 +-- .../sdk/src/contracts/types/SupplySchedule.ts | 1468 ++-- packages/sdk/src/contracts/types/Synth.ts | 1596 ++-- .../sdk/src/contracts/types/SynthRedeemer.ts | 804 +- packages/sdk/src/contracts/types/SynthSwap.ts | 835 +- packages/sdk/src/contracts/types/SynthUtil.ts | 355 +- packages/sdk/src/contracts/types/Synthetix.ts | 4759 ++++++----- .../sdk/src/contracts/types/SystemSettings.ts | 5588 +++++++------ .../sdk/src/contracts/types/SystemStatus.ts | 3671 +++++---- .../src/contracts/types/VKwentaRedeemer.ts | 183 +- .../src/contracts/types/VeKwentaRedeemer.ts | 247 +- packages/sdk/src/contracts/types/common.ts | 45 +- .../types/factories/BatchClaimer__factory.ts | 115 +- .../factories/DappMaintenance__factory.ts | 426 +- .../types/factories/ERC20__factory.ts | 690 +- .../types/factories/ExchangeRates__factory.ts | 2192 ++--- .../types/factories/Exchanger__factory.ts | 1563 ++-- .../factories/FuturesMarketData__factory.ts | 1850 ++--- .../FuturesMarketSettings__factory.ts | 1759 ++-- .../types/factories/FuturesMarket__factory.ts | 2239 ++--- .../factories/KwentaArrakisVault__factory.ts | 2278 +++--- .../KwentaStakingRewards__factory.ts | 1422 ++-- .../MultipleMerkleDistributorOp__factory.ts | 606 +- ...ltipleMerkleDistributorPerpsV2__factory.ts | 644 +- .../MultipleMerkleDistributor__factory.ts | 655 +- .../factories/PerpsV2MarketData__factory.ts | 2318 +++--- .../PerpsV2MarketSettings__factory.ts | 3305 ++++---- .../factories/PerpsV2MarketViews__factory.ts | 1590 ++-- .../types/factories/PerpsV2Market__factory.ts | 2851 +++---- .../factories/PerpsV3MarketProxy__factory.ts | 6741 ++++++++------- .../types/factories/Pyth__factory.ts | 960 +-- .../factories/ReverseRecords__factory.ts | 88 +- .../types/factories/RewardEscrow__factory.ts | 1345 +-- .../SmartMarginAccountFactory__factory.ts | 573 +- .../factories/SmartMarginAccount__factory.ts | 1226 +-- .../factories/StakingRewards__factory.ts | 1328 +-- .../factories/SupplySchedule__factory.ts | 1302 +-- .../types/factories/SynthRedeemer__factory.ts | 625 +- .../types/factories/SynthSwap__factory.ts | 653 +- .../types/factories/SynthUtil__factory.ts | 283 +- .../types/factories/Synth__factory.ts | 1608 ++-- .../types/factories/Synthetix__factory.ts | 3803 ++++----- .../factories/SystemSettings__factory.ts | 4268 +++++----- .../types/factories/SystemStatus__factory.ts | 2569 +++--- .../factories/VKwentaRedeemer__factory.ts | 164 +- .../factories/VeKwentaRedeemer__factory.ts | 300 +- .../src/contracts/types/factories/index.ts | 68 +- packages/sdk/src/contracts/types/index.ts | 138 +- packages/sdk/src/queries/perpsV3.ts | 8 +- packages/sdk/src/services/perpsV3.ts | 45 +- packages/sdk/src/services/synths.ts | 38 +- packages/sdk/src/types/synths.ts | 12 + 106 files changed, 63956 insertions(+), 54661 deletions(-) rename packages/app/src/sections/futures/Trade/{TransferIsolatedMarginModal.tsx => DepositWithdrawCrossMargin.tsx} (82%) create mode 100644 packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx create mode 100644 packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx create mode 100644 packages/sdk/src/constants/perpsv3.ts diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index 1803722323..ff3b5d62f5 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -21,7 +21,7 @@ import MobileTrade from 'sections/futures/MobileTrade/MobileTrade' import { TRADE_PANEL_WIDTH_LG, TRADE_PANEL_WIDTH_MD } from 'sections/futures/styles' import FuturesUnsupportedNetwork from 'sections/futures/Trade/FuturesUnsupported' import TradePanel from 'sections/futures/Trade/TradePanel' -import TransferIsolatedMarginModal from 'sections/futures/Trade/TransferIsolatedMarginModal' +import DepositWithdrawCrossMarginModal from 'sections/futures/Trade/DepositWithdrawCrossMargin' import DelayedOrderConfirmationModal from 'sections/futures/TradeConfirmation/DelayedOrderConfirmationModal' import TradeConfirmationModalCrossMargin from 'sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin' import WithdrawSmartMargin from 'sections/futures/TradeSmartMargin/WithdrawSmartMargin' @@ -43,6 +43,9 @@ import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { PageContent } from 'styles/common' import media from 'styles/media' +import CreatePerpsV3AccountModal from 'sections/futures/CreatePerpsV3AccountModal' +import { selectShowCrossMarginOnboard } from 'state/futures/crossMargin/selectors' +import TradePanelCrossMargin from 'sections/futures/Trade/TradePanelCrossMargin' type MarketComponent = FC & { getLayout: (page: ReactNode) => JSX.Element } @@ -57,6 +60,7 @@ const Market: MarketComponent = () => { const setCurrentMarket = useAppSelector(selectMarketAsset) const showOnboard = useAppSelector(selectShowSmartMarginOnboard) + const showCrossMarginOnboard = useAppSelector(selectShowCrossMarginOnboard) const openModal = useAppSelector(selectShowModal) const showPositionModal = useAppSelector(selectShowPositionModal) const accountType = useAppSelector(selectFuturesType) @@ -92,10 +96,13 @@ const Market: MarketComponent = () => { } }, [router, setCurrentMarket, dispatch, routerMarketAsset, selectedMarketAsset]) + console.log('openModal', openModal) + return ( <> + {lessThanWidth('lg') ? ( @@ -125,7 +132,7 @@ const Market: MarketComponent = () => { {showPositionModal?.type === 'futures_edit_position_size' && } {showPositionModal?.type === 'futures_edit_position_margin' && } {openModal === 'futures_deposit_withdraw_cross_margin' && ( - dispatch(setOpenModal(null))} /> @@ -166,7 +173,7 @@ function TradePanelDesktop() { ) } - return + return accountType === FuturesMarginType.CROSS_MARGIN ? : } Market.getLayout = (page) => {page} diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index a2c819498e..0fbb0cc71b 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -24,6 +24,7 @@ import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import CrossMarginFAQ from './SmartMarginOnboard/SmartMarginFAQ' +import { createPerpsV3Account } from 'state/futures/crossMargin/actions' type Props = { isOpen: boolean @@ -34,118 +35,23 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { const dispatch = useAppDispatch() const crossMarginAvailable = useAppSelector(selectCrossMarginSupportedNetwork) const perpsV3Account = useAppSelector(selectCrossMarginAccount) - const queryStatus = useAppSelector(selectSmartMarginAccountQueryStatus) - const depositApproved = useAppSelector(selectSmartMarginDepositApproved) const txProcessing = useAppSelector(selectSubmittingFuturesTx) const preview = useAppSelector(selectTradePreview) const onClose = () => dispatch(setOpenModal(null)) - const onComplete = () => { - if (preview) { - dispatch(setOpenModal('futures_confirm_smart_margin_trade')) - } else { - onClose() - } - } - const createAccount = useCallback(async () => { - dispatch(createSmartMarginAccount()) - }, [dispatch]) - - const onClickApprove = useCallback(async () => { - dispatch(approveSmartMargin()) + dispatch(createPerpsV3Account()) }, [dispatch]) - const renderProgress = (step: number, complete?: boolean) => { - return ( - - - - ) - } - const renderContent = () => { if (!crossMarginAvailable) { return } - if (!perpsV3Account && queryStatus.status === FetchStatus.Loading) { - return ( - - - - ) - } - - if (depositApproved) { - return ( - <> - {t('futures.modals.onboard.step3-complete')} - - - - {renderProgress(3, true)} - - Done - - - ) - } - - if (perpsV3Account && !depositApproved) { - return ( - <> - {t('futures.modals.onboard.step2-intro')} -
- FAQ: - -
- {renderProgress(2)} - - {txProcessing ? : 'Approve'} - - - ) - } - - // TODO: Replace with bridge option - - // if (crossMarginAccount) { - // return ( - // <> - // {t('futures.modals.onboard.step3-intro')} - // - // - // {renderProgress(3)} - // {isDepositDisabled && ( - // - // {t('futures.market.trade.margin.modal.deposit.disclaimer')} - // - // )} - // - // {txProcessing ? : 'Deposit sUSD'} - // - // - // ); - // } return ( <> {t('futures.modals.onboard.step1-intro')} -
- FAQ: - -
- {renderProgress(1)} {txProcessing ? : 'Create Account'} @@ -154,7 +60,11 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { } return ( - + {renderContent()} ) diff --git a/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx b/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx index 8aa5f97d54..1c95f3d0dd 100644 --- a/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx +++ b/packages/app/src/sections/futures/SmartMarginOnboard/SmartMarginOnboard.tsx @@ -138,7 +138,7 @@ export default function SmartMarginOnboard({ isOpen }: Props) { return ( <> - {t('futures.modals.onboard.step1-intro')} + {t('futures.modals.onboard.cm-intro')}
FAQ: @@ -152,7 +152,11 @@ export default function SmartMarginOnboard({ isOpen }: Props) { } return ( - + {renderContent()} ) diff --git a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx similarity index 82% rename from packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx rename to packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx index 59f01c3354..e01b0156eb 100644 --- a/packages/app/src/sections/futures/Trade/TransferIsolatedMarginModal.tsx +++ b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx @@ -16,15 +16,21 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivRowCentered } from 'components/layout/flex' import SegmentedControl from 'components/SegmentedControl' import Spacer from 'components/Spacer' -import { selectSusdBalance } from 'state/balances/selectors' -import { depositCrossMarginMargin, withdrawCrossMargin } from 'state/futures/crossMargin/actions' +import { selectSNXUSDBalance } from 'state/balances/selectors' +import { + approveCrossMarginDeposit, + depositCrossMarginMargin, + withdrawCrossMargin, +} from 'state/futures/crossMargin/actions' import { selectAvailableMargin, + selectIsApprovingCrossDeposit, selectIsolatedTransferError, selectIsSubmittingIsolatedTransfer, selectPosition, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' +import { selectDepositAllowances } from 'state/futures/crossMargin/selectors' type Props = { onDismiss(): void @@ -39,15 +45,17 @@ const SocketBridge = dynamic(() => import('../../../components/SocketBridge'), { const PLACEHOLDER = '$0.00' -const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) => { +const DepositWithdrawCrossMarginModal: React.FC = ({ onDismiss, defaultTab }) => { const { t } = useTranslation() const dispatch = useAppDispatch() const position = useAppSelector(selectPosition) const submitting = useAppSelector(selectIsSubmittingIsolatedTransfer) + const approving = useAppSelector(selectIsApprovingCrossDeposit) const txError = useAppSelector(selectIsolatedTransferError) - const susdBalance = useAppSelector(selectSusdBalance) + const usdBalance = useAppSelector(selectSNXUSDBalance) const availableMargin = useAppSelector(selectAvailableMargin) + const allowances = useAppSelector(selectDepositAllowances) const minDeposit = useMemo(() => { const accessibleMargin = position?.accessibleMargin ?? ZERO_WEI @@ -59,18 +67,25 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) const [amount, setAmount] = useState('') const [transferType, setTransferType] = useState(defaultTab === 'deposit' ? 0 : 1) - const susdBal = transferType === 0 ? susdBalance : availableMargin + const susdBal = transferType === 0 ? usdBalance : availableMargin const balanceStatus: BalanceStatus = useMemo( () => - availableMargin.gt(ZERO_WEI) || susdBalance.gt(minDeposit) + availableMargin.gt(ZERO_WEI) || usdBalance.gt(minDeposit) ? 'high_balance' - : susdBalance.eq(ZERO_WEI) + : usdBalance.eq(ZERO_WEI) ? 'no_balance' : 'low_balance', - [availableMargin, minDeposit, susdBalance] + [availableMargin, minDeposit, usdBalance] ) + const requiresApproval = useMemo(() => { + if (transferType === 0) { + return !allowances.SNXUSD?.gt(amount || 0) + } + return false + }, [allowances, amount, transferType]) + useEffect(() => { switch (balanceStatus) { case 'no_balance': @@ -83,7 +98,7 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) }, [balanceStatus]) const isDisabled = useMemo(() => { - if (!amount || submitting) { + if (!amount || submitting || approving) { return true } const amtWei = wei(amount) @@ -91,7 +106,7 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) return true } return false - }, [amount, susdBal, minDeposit, transferType, submitting]) + }, [amount, susdBal, minDeposit, transferType, submitting, approving]) const computedWithdrawAmount = useMemo( () => (availableMargin.eq(wei(amount || 0)) ? availableMargin : wei(amount || 0)), @@ -113,8 +128,12 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) setAmount('') } - const onDeposit = () => { - dispatch(depositCrossMarginMargin(wei(amount))) + const onDepositOrApprove = () => { + if (!allowances.SNXUSD?.gt(amount)) { + dispatch(approveCrossMarginDeposit()) + } else { + dispatch(depositCrossMarginMargin(wei(amount))) + } } const onWithdraw = () => { @@ -178,11 +197,13 @@ const TransferIsolatedMarginModal: React.FC = ({ onDismiss, defaultTab }) data-testid="futures-market-trade-deposit-margin-button" disabled={isDisabled} fullWidth - onClick={transferType === 0 ? onDeposit : onWithdraw} + onClick={transferType === 0 ? onDepositOrApprove : onWithdraw} variant="flat" > {transferType === 0 - ? t('futures.market.trade.margin.modal.deposit.button') + ? requiresApproval + ? t('futures.market.trade.margin.modal.deposit.approve-button') + : t('futures.market.trade.margin.modal.deposit.button') : t('futures.market.trade.margin.modal.withdraw.button')} {txError && ( @@ -262,4 +283,4 @@ const StyledCardHeader = styled(CardHeader)<{ noBorder: boolean }>` cursor: pointer; ` -export default TransferIsolatedMarginModal +export default DepositWithdrawCrossMarginModal diff --git a/packages/app/src/sections/futures/Trade/MarketActions.tsx b/packages/app/src/sections/futures/Trade/MarketActions.tsx index e12aa946ba..20731a5527 100644 --- a/packages/app/src/sections/futures/Trade/MarketActions.tsx +++ b/packages/app/src/sections/futures/Trade/MarketActions.tsx @@ -11,7 +11,7 @@ import { selectShowModal } from 'state/app/selectors' import { selectMarketInfo, selectPosition } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' -import TransferIsolatedMarginModal from './TransferIsolatedMarginModal' +import DepositWithdrawCrossMarginModal from './DepositWithdrawCrossMargin' const MarketActions: React.FC = () => { const { t } = useTranslation() @@ -49,14 +49,14 @@ const MarketActions: React.FC = () => { {openModal === 'futures_deposit_withdraw_cross_margin' && ( - dispatch(setOpenModal(null))} /> )} {openModal === 'futures_deposit_withdraw_cross_margin' && ( - dispatch(setOpenModal(null))} /> diff --git a/packages/app/src/sections/futures/Trade/SmartMarginOnboardModal.tsx b/packages/app/src/sections/futures/Trade/SmartMarginOnboardModal.tsx index ae12dc9580..01b12f3d8f 100644 --- a/packages/app/src/sections/futures/Trade/SmartMarginOnboardModal.tsx +++ b/packages/app/src/sections/futures/Trade/SmartMarginOnboardModal.tsx @@ -7,7 +7,7 @@ import styled from 'styled-components' import BaseModal from 'components/BaseModal' import { FlexDivRowCentered } from 'components/layout/flex' import Spacer from 'components/Spacer' -import { selectSusdBalance } from 'state/balances/selectors' +import { selectSNXUSDBalance } from 'state/balances/selectors' import { useAppSelector } from 'state/hooks' type Props = { @@ -21,7 +21,7 @@ const SocketBridge = dynamic(() => import('../../../components/SocketBridge'), { const SmartMarginOnboardModal: React.FC = memo(({ onDismiss }) => { const { t } = useTranslation() - const susdBalance = useAppSelector(selectSusdBalance) + const susdBalance = useAppSelector(selectSNXUSDBalance) return ( = memo(({ isMobile = false }) => const idleMargin = useAppSelector(selectIdleMargin) const lockedMargin = useAppSelector(selectLockedMarginInMarkets) - const walletBal = useAppSelector(selectSusdBalance) + const walletBal = useAppSelector(selectSNXUSDBalance) const accountType = useAppSelector(selectFuturesType) const availableIsolatedMargin = useAppSelector(selectAvailableMargin) const withdrawable = useAppSelector(selectWithdrawableSmartMargin) diff --git a/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx new file mode 100644 index 0000000000..8f8dc85d36 --- /dev/null +++ b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx @@ -0,0 +1,173 @@ +import { MIN_MARGIN_AMOUNT } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' +import { formatDollars } from '@kwenta/sdk/utils' +import { memo, useMemo, useState } from 'react' +import { useTranslation } from 'react-i18next' +import styled from 'styled-components' + +import Button from 'components/Button' +import { FlexDivCol, FlexDivRow, FlexDivRowCentered } from 'components/layout/flex' +import { StyledCaretDownIcon } from 'components/Select' +import { Body, NumericValue } from 'components/Text' +import useWindowSize from 'hooks/useWindowSize' +import { setOpenModal } from 'state/app/reducer' +import { selectSNXUSDBalance } from 'state/balances/selectors' +import { + selectCrossMarginAccount, + selectWithdrawableCrossMargin, +} from 'state/futures/crossMargin/selectors' +import { selectAvailableMargin, selectFuturesType } from 'state/futures/selectors' +import { useAppDispatch, useAppSelector } from 'state/hooks' + +import PencilButton from '../../../components/Button/PencilButton' + +type TradeBalanceProps = { + isMobile?: boolean +} + +const TradeBalanceCrossMargin: React.FC = memo(({ isMobile = false }) => { + const { t } = useTranslation() + const dispatch = useAppDispatch() + const { deviceType } = useWindowSize() + + const accountType = useAppSelector(selectFuturesType) + const availableCrossMargin = useAppSelector(selectAvailableMargin) + const withdrawable = useAppSelector(selectWithdrawableCrossMargin) + const crossMarginAccount = useAppSelector(selectCrossMarginAccount) + const walletBal = useAppSelector(selectSNXUSDBalance) + + const [expanded, setExpanded] = useState(false) + + const isDepositRequired = useMemo(() => { + return availableCrossMargin.lt(MIN_MARGIN_AMOUNT) + }, [availableCrossMargin]) + + const onClickContainer = () => { + if (accountType === FuturesMarginType.CROSS_MARGIN) return + setExpanded(!expanded) + } + + const content = useMemo(() => { + if (!crossMarginAccount) { + return ( + + ) + } + if (isDepositRequired) { + return ( + + + + + {t('futures.market.trade.trade-balance.no-available-margin')} + + + + + {t('futures.market.trade.trade-balance.min-margin')} + + + + + ) + } + + if (isMobile) { + return ( + + + + {t('futures.market.trade.trade-balance.available-margin')}: + + + {formatDollars(availableCrossMargin)} + + + + ) + } + + return ( + + + + {t('futures.market.trade.trade-balance.available-margin')} + + + {formatDollars(availableCrossMargin)} + + + + ) + }, [crossMarginAccount, isDepositRequired, availableCrossMargin, isMobile, expanded, walletBal]) + + return ( + + + {content} + + {withdrawable.gt(0) && ( + + { + e.stopPropagation() + dispatch(setOpenModal('futures_deposit_withdraw_cross_margin')) + }} + /> + + )} + + + ) +}) + +const DepositContainer = styled(FlexDivRowCentered)` + width: 100%; +` + +const StyledFlexDivCol = styled(FlexDivCol)` + border-left: ${(props) => props.theme.colors.selectedTheme.border}; + padding-left: 10px; +` + +const Container = styled.div<{ mobile?: boolean }>` + width: 100%; + padding: 13px 15px; + border-bottom: ${(props) => (props.mobile ? props.theme.colors.selectedTheme.border : 0)}; +` + +const BalanceContainer = styled(FlexDivRowCentered)<{ clickable: boolean }>` + cursor: ${(props) => (props.clickable ? 'pointer' : 'default')}; + width: 100%; +` + +const DetailsContainer = styled.div` + margin-top: 15px; +` + +export default TradeBalanceCrossMargin diff --git a/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx new file mode 100644 index 0000000000..9d1e03cc16 --- /dev/null +++ b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx @@ -0,0 +1,96 @@ +import { PositionSide } from '@kwenta/sdk/types' +import { FC, memo, useCallback } from 'react' +import styled, { css } from 'styled-components' + +import Error from 'components/ErrorView' +import { changeCrossMarginLeverageSide } from 'state/futures/crossMargin/actions' +import { selectLeverageSide } from 'state/futures/selectors' +import { useAppDispatch, useAppSelector } from 'state/hooks' +import { selectPricesConnectionError } from 'state/prices/selectors' + +import TradePanelFeeInfo from '../FeeInfoBox/TradePanelFeeInfo' +import LeverageInput from '../LeverageInput' +import OrderSizing from '../OrderSizing' +import PositionButtons from '../PositionButtons' + +import CloseOnlyPrompt from './CloseOnlyPrompt' +import ManagePosition from './ManagePosition' +import MarketsDropdown from './MarketsDropdown' +import TradeBalance from './TradeBalance' +import TradeBalanceCrossMargin from './TradeBalanceCrossMargin' + +type Props = { + mobile?: boolean + closeDrawer?: () => void +} + +const TradePanelCrossMargin: FC = memo(({ mobile, closeDrawer }) => { + const dispatch = useAppDispatch() + + const leverageSide = useAppSelector(selectLeverageSide) + const pricesConnectionError = useAppSelector(selectPricesConnectionError) + + const handleChangeSide = useCallback( + (side: PositionSide) => { + dispatch(changeCrossMarginLeverageSide(side)) + }, + [dispatch] + ) + + return ( + + {!mobile && ( + <> + + + + )} + + {process.env.NEXT_PUBLIC_CLOSE_ONLY === 'true' ? ( + + ) : ( + <> + + + + { + // TODO: Share across trade panels + pricesConnectionError && ( + + ) + } + + + + + + + + )} + + ) +}) + +const TradePanelContainer = styled.div<{ $mobile?: boolean }>` + overflow-y: scroll; + height: 100%; + scrollbar-width: none; + border-right: ${(props) => props.theme.colors.selectedTheme.border}; +` + +const MainPanelContent = styled.div<{ $mobile?: boolean }>` + padding: 0 15px; + + ${(props) => + props.$mobile && + css` + padding: 65px 15px 0; + `} +` + +export default TradePanelCrossMargin diff --git a/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx index 61a3207e86..0afbfa6c98 100644 --- a/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/ManageKeeperBalanceModal.tsx @@ -28,7 +28,7 @@ import { BalanceContainer, BalanceText, MaxButton, -} from '../Trade/TransferIsolatedMarginModal' +} from '../Trade/DepositWithdrawCrossMargin' type TransferType = 'deposit' | 'withdraw' diff --git a/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx index 4562556717..372359967b 100644 --- a/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx +++ b/packages/app/src/sections/futures/TradeSmartMargin/SmartMarginInfoBox.tsx @@ -4,7 +4,7 @@ import React, { memo } from 'react' import { InfoBoxRow } from 'components/InfoBox' import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' -import { selectSusdBalance } from 'state/balances/selectors' +import { selectSNXUSDBalance } from 'state/balances/selectors' import { selectAvailableMarginInMarkets, selectSmartMarginBalanceInfo, @@ -22,7 +22,7 @@ function SmartMarginInfoBox() { const openModal = useAppSelector(selectShowModal) const { freeMargin } = useAppSelector(selectSmartMarginBalanceInfo) const idleMarginInMarkets = useAppSelector(selectAvailableMarginInMarkets) - const walletBal = useAppSelector(selectSusdBalance) + const walletBal = useAppSelector(selectSNXUSDBalance) return ( <> diff --git a/packages/app/src/state/app/types.ts b/packages/app/src/state/app/types.ts index 880ef1095f..4aeecb25a1 100644 --- a/packages/app/src/state/app/types.ts +++ b/packages/app/src/state/app/types.ts @@ -10,6 +10,7 @@ export type ModalType = | 'futures_confirm_cross_margin_trade' | 'futures_withdraw_keeper_balance' | 'futures_smart_margin_onboard' + | 'futures_cross_margin_onboard' | 'futures_smart_margin_socket' | null diff --git a/packages/app/src/state/balances/actions.ts b/packages/app/src/state/balances/actions.ts index 4315368e75..4d5e8d2c86 100644 --- a/packages/app/src/state/balances/actions.ts +++ b/packages/app/src/state/balances/actions.ts @@ -1,10 +1,12 @@ +import { SynthV3Asset, SynthV3BalancesAndAllowances } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' import type { ThunkConfig } from 'state/store' -import { serializeBalances } from 'utils/balances' +import { serializeBalances, serializeV3Balances } from 'utils/balances' import { ZERO_BALANCES } from './reducer' import { BalancesActionReturn } from './types' +import { notifyError } from 'components/ErrorNotifier' export const fetchBalances = createAsyncThunk, void, ThunkConfig>( 'balances/fetchBalances', @@ -19,3 +21,20 @@ export const fetchBalances = createAsyncThunk, void return serializeBalances(balancesMap, totalUSDBalance, tokenBalances, susdWalletBalance) } ) + +export const fetchV3BalancesAndAllowances = createAsyncThunk< + Partial> | undefined, + string[], + ThunkConfig +>('balances/fetchV3BalancesAndAllowances', async (spenders, { getState, extra: { sdk } }) => { + const { wallet } = getState() + try { + if (!wallet.walletAddress) return + const res = await sdk.synths.getSynthV3BalancesAndAllowances(wallet.walletAddress, spenders) + console.log('res', res, serializeV3Balances(res)) + return serializeV3Balances(res) + } catch (e) { + notifyError('Error fetching v3 balances', e) + throw e + } +}) diff --git a/packages/app/src/state/balances/reducer.ts b/packages/app/src/state/balances/reducer.ts index 754e70f2ce..52f8bf6a6f 100644 --- a/packages/app/src/state/balances/reducer.ts +++ b/packages/app/src/state/balances/reducer.ts @@ -2,8 +2,9 @@ import { createSlice } from '@reduxjs/toolkit' import { FetchStatus } from 'state/types' -import { fetchBalances } from './actions' +import { fetchBalances, fetchV3BalancesAndAllowances } from './actions' import { BalancesState } from './types' +import { SynthV3Asset } from '@kwenta/sdk/dist/types' export const ZERO_BALANCES = { synthBalances: [], @@ -11,6 +12,7 @@ export const ZERO_BALANCES = { totalUSDBalance: '0', susdWalletBalance: '0', tokenBalances: {}, + synthV3Balances: {}, } export const BALANCES_INITIAL_STATE: BalancesState = { @@ -46,6 +48,23 @@ const balancesSlice = createSlice({ builder.addCase(fetchBalances.rejected, (state) => { state.status = FetchStatus.Error }) + + builder.addCase(fetchV3BalancesAndAllowances.fulfilled, (state, action) => { + if (action.payload) { + Object.keys(action.payload).forEach((asset) => { + const assetKey = asset as SynthV3Asset + if (state.synthV3Balances[assetKey]) { + state.synthV3Balances[assetKey].balance = action.payload![assetKey]!.balance + state.synthV3Balances[assetKey].allowances = action.payload![assetKey]!.allowances + } else { + state.synthV3Balances[assetKey] = { + balance: action.payload![assetKey]!.balance, + allowances: action.payload![assetKey]!.allowances, + } + } + }) + } + }) }, }) diff --git a/packages/app/src/state/balances/selectors.ts b/packages/app/src/state/balances/selectors.ts index 8de2b53df7..22bed2a5d6 100644 --- a/packages/app/src/state/balances/selectors.ts +++ b/packages/app/src/state/balances/selectors.ts @@ -3,7 +3,7 @@ import { createSelector } from '@reduxjs/toolkit' import type { RootState } from 'state/store' import { FetchStatus } from 'state/types' -import { unserializeBalances } from 'utils/balances' +import { unserializeBalances, unserializeV3Balances } from 'utils/balances' export const selectBalancesFetchStatus = (state: RootState) => state.balances.status @@ -22,6 +22,11 @@ export const selectSusdBalance = createSelector( (susdWalletBalance) => toWei(susdWalletBalance) ) +export const selectSNXUSDBalance = createSelector( + (state: RootState) => state.balances.synthV3Balances.SNXUSD?.balance ?? '0', + (bal) => toWei(bal) +) + export const selectBalances = createSelector( (state: RootState) => state.balances, (balances) => { @@ -33,3 +38,8 @@ export const selectBalances = createSelector( ) } ) + +export const selectSynthV3Balances = createSelector( + (state: RootState) => state.balances.synthV3Balances, + (synthV3Balances) => unserializeV3Balances(synthV3Balances) +) diff --git a/packages/app/src/state/balances/types.ts b/packages/app/src/state/balances/types.ts index 886152d500..75da28a0f7 100644 --- a/packages/app/src/state/balances/types.ts +++ b/packages/app/src/state/balances/types.ts @@ -1,8 +1,10 @@ -import { SynthBalance, TokenBalances } from '@kwenta/sdk/types' +import { SynthBalance, SynthV3BalancesAndAllowances, TokenBalances } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' import { FetchStatus } from 'state/types' +// TODO: Separate balances by network and wallet + export type BalancesState = { status: FetchStatus error: string | undefined @@ -11,6 +13,7 @@ export type BalancesState = { totalUSDBalance?: string susdWalletBalance?: string tokenBalances: TokenBalances + synthV3Balances: Partial> } export type BalancesActionReturn = { diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 6bac6bbca5..dfe46bc281 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -4,6 +4,8 @@ import { FuturesPosition, FuturesPositionHistory, NetworkId, + PositionSide, + SynthV3Asset, TransactionStatus, } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' @@ -13,7 +15,7 @@ import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' import { monitorAndAwaitTransaction } from 'state/app/helpers' import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' -import { fetchBalances } from 'state/balances/actions' +import { fetchBalances, fetchV3BalancesAndAllowances } from 'state/balances/actions' import { selectMarketInfo } from 'state/futures/selectors' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -32,13 +34,20 @@ import { DelayedOrderWithDetails, } from '../common/types' -import { setPerpsV3Account } from './reducer' +import { + setCrossMarginLeverageSide, + setPerpsV3Account, + setPerpsV3MarketProxyAddress, +} from './reducer' import { selectCrossMarginAccount, selectCrossMarginSupportedNetwork, + selectCrossMarginTradeInputs, selectOpenDelayedOrdersV3, selectV3Markets, } from './selectors' +import { editCrossMarginTradeSize } from '../smartMargin/actions' +import { AppThunk } from 'state/store' export const fetchMarketsV3 = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, @@ -67,6 +76,7 @@ export const fetchPerpsV3Account = createAsyncThunk< const wallet = selectWallet(getState()) const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) + if (!wallet || !supportedNetwork) return undefined const accounts = getState().crossMargin.accounts @@ -78,6 +88,7 @@ export const fetchPerpsV3Account = createAsyncThunk< try { const owner = await sdk.perpsV3.getAccountOwner(id) + if (owner) { // Account already created if (owner.toLowerCase() !== wallet.toLowerCase()) { @@ -94,6 +105,17 @@ export const fetchPerpsV3Account = createAsyncThunk< } }) +export const fetchPerpsV3Balances = createAsyncThunk( + 'balances/fetchPerpsV3Balances', + async (_, { dispatch, extra: { sdk } }) => { + const spender = sdk.context.contracts.perpsV3MarketProxy?.address + if (spender) { + dispatch(fetchV3BalancesAndAllowances([spender])) + dispatch(setPerpsV3MarketProxyAddress(spender)) + } + } +) + export const fetchCrossMarginPositions = createAsyncThunk< { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, void, @@ -203,6 +225,14 @@ export const fetchMarginTransfersV3 = createAsyncThunk( } ) +export const fetchCrossMarginAccountData = createAsyncThunk( + 'futures/fetchCrossMarginAccountData', + async (_, { dispatch }) => { + dispatch(fetchCrossMarginPositions()) + dispatch(fetchPerpsV3Balances()) + } +) + export const clearTradeInputs = createAsyncThunk( 'futures/clearTradeInputs', async () => { @@ -210,6 +240,14 @@ export const clearTradeInputs = createAsyncThunk( } ) +export const changeCrossMarginLeverageSide = + (side: PositionSide): AppThunk => + (dispatch, getState) => { + const { nativeSizeString } = selectCrossMarginTradeInputs(getState()) + dispatch(setCrossMarginLeverageSide(side)) + dispatch(editCrossMarginTradeSize(nativeSizeString, 'native')) + } + export const createPerpsV3Account = createAsyncThunk< { account: string; wallet: string; network: NetworkId } | undefined, void, @@ -255,17 +293,43 @@ export const createPerpsV3Account = createAsyncThunk< const tx = await sdk.perpsV3.createPerpsV3Account(id) await monitorAndAwaitTransaction(dispatch, tx) dispatch(fetchPerpsV3Account()) + dispatch(setOpenModal(null)) } catch (err) { dispatch(handleTransactionError(err.message)) } } ) +export const approveCrossMarginDeposit = createAsyncThunk( + 'futures/approveCrossMarginDeposit', + async (_, { getState, dispatch, extra: { sdk } }) => { + const marketInfo = selectMarketInfo(getState()) + if (!marketInfo) throw new Error('Market info not found') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'approve_cross_margin', + hash: null, + }) + ) + const tx = await sdk.perpsV3.approveDeposit(SynthV3Asset.SNXUSD) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchPerpsV3Balances()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + export const depositCrossMarginMargin = createAsyncThunk( 'futures/depositCrossMarginMargin', async (amount, { getState, dispatch, extra: { sdk } }) => { const marketInfo = selectMarketInfo(getState()) + const accountId = selectCrossMarginAccount(getState()) if (!marketInfo) throw new Error('Market info not found') + if (!accountId) throw new Error('Account id not found') try { dispatch( setTransaction({ @@ -274,11 +338,11 @@ export const depositCrossMarginMargin = createAsyncThunk hash: null, }) ) - const tx = await sdk.futures.depositIsolatedMargin(marketInfo.market, amount) + const tx = await sdk.perpsV3.depositToMarket(accountId, SynthV3Asset.SNXUSD, amount) await monitorAndAwaitTransaction(dispatch, tx) dispatch(setOpenModal(null)) dispatch(refetchPosition()) - dispatch(fetchBalances()) + dispatch(fetchPerpsV3Balances()) dispatch(fetchMarginTransfersV3()) } catch (err) { dispatch(handleTransactionError(err.message)) @@ -304,7 +368,7 @@ export const withdrawCrossMargin = createAsyncThunk( await monitorAndAwaitTransaction(dispatch, tx) dispatch(refetchPosition()) dispatch(setOpenModal(null)) - dispatch(fetchBalances()) + dispatch(fetchPerpsV3Balances()) dispatch(fetchMarginTransfersV3()) } catch (err) { dispatch(handleTransactionError(err.message)) diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index e95c202fcb..5d3e0d4aa6 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -55,6 +55,7 @@ export const COSS_MARGIN_INITIAL_STATE: CrossMarginState = { nativeSizeDelta: '', }, previewDebounceCount: 0, + perpsV3MarketProxyAddress: undefined, tradeInputs: ZERO_STATE_TRADE_INPUTS, editPositionInputs: { nativeSizeDelta: '', @@ -106,7 +107,7 @@ const crossMarginSlice = createSlice({ setClosePositionSizeDelta: (state, action: PayloadAction) => { state.closePositionOrderInputs.nativeSizeDelta = action.payload }, - setLeverageSide: (state, action) => { + setCrossMarginLeverageSide: (state, action) => { state.leverageSide = action.payload }, setTradeInputs: (state, action: PayloadAction>) => { @@ -127,6 +128,9 @@ const crossMarginSlice = createSlice({ setLeverageInput: (state, action: PayloadAction) => { state.leverageInput = action.payload }, + setPerpsV3MarketProxyAddress: (state, action: PayloadAction) => { + state.perpsV3MarketProxyAddress = action.payload + }, handlePreviewError: ( futuresState, { @@ -342,7 +346,7 @@ export const { handlePreviewError, setMarketAsset, setClosePositionSizeDelta, - setLeverageSide, + setCrossMarginLeverageSide, setLeverageInput, clearAllTradePreviews, setSelectedTrader, @@ -352,6 +356,7 @@ export const { setShowTradeHistory, setSelectedChart, setPerpsV3Account, + setPerpsV3MarketProxyAddress, } = crossMarginSlice.actions const findWalletForAccount = ( diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 5d40aa6039..06513aad5a 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -1,7 +1,7 @@ -import { PositionSide } from '@kwenta/sdk/types' +import { PositionSide, SynthV3Asset } from '@kwenta/sdk/types' import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' -import { wei } from '@synthetixio/wei' +import Wei, { wei } from '@synthetixio/wei' import { selectPrices } from 'state/prices/selectors' import { RootState } from 'state/store' @@ -15,6 +15,7 @@ import { } from 'utils/futures' import { MarkPrices } from './types' +import { selectSynthV3Balances } from 'state/balances/selectors' export const selectV3MarketKey = createSelector( (state: RootState) => state.crossMargin.selectedMarketAsset, @@ -58,6 +59,27 @@ export const selectCrossMarginAccountData = createSelector( } ) +export const selectV3ProxyAddress = createSelector( + (state: RootState) => state.crossMargin, + (crossMargin) => crossMargin.perpsV3MarketProxyAddress +) + +export const selectDepositAllowances = createSelector( + selectV3ProxyAddress, + selectSynthV3Balances, + (proxyAddress, balancesAndAllowances) => { + if (!proxyAddress) return {} + return Object.keys(balancesAndAllowances).reduce>>( + (acc, asset) => { + const key = asset as SynthV3Asset + acc[key] = balancesAndAllowances[key]!.allowances[proxyAddress] + return acc + }, + {} + ) + } +) + export const selectCrossMarginPositionHistory = createSelector( selectCrossMarginAccountData, (accountData) => { @@ -137,3 +159,14 @@ export const selectOpenDelayedOrdersV3 = createSelector(selectCrossMarginAccount // TODO: Hook up pending v3 orders return [] }) + +export const selectShowCrossMarginOnboard = (state: RootState) => + state.app.showModal === 'futures_cross_margin_onboard' + +export const selectWithdrawableCrossMargin = createSelector( + (state: RootState) => state.crossMargin, + (_) => { + // TODO: Hook up withdrawable cross margin + return wei(0) + } +) diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index 65c892e8ae..31029beb75 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -74,7 +74,9 @@ export type FundingRatePeriods = { [key: number]: string } -export type CrossMarginAccountData = FuturesAccountData +export type CrossMarginAccountData = FuturesAccountData & { + balances: { [asset: string]: { balance: Wei; allowance: Wei } } +} export type CrossMarginState = { markets: Record[]> @@ -93,6 +95,7 @@ export type CrossMarginState = { selectedMarketAsset: FuturesMarketAsset leverageInput: string tradeFee: string + perpsV3MarketProxyAddress: string | undefined accounts: Record< FuturesNetwork, { diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index e4481718ee..2a71afdd2e 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -1,11 +1,15 @@ import { FuturesMarginType } from '@kwenta/sdk/types' import { + fetchCrossMarginAccountData, fetchCrossMarginOpenOrders, fetchCrossMarginPositions, fetchPerpsV3Account, } from 'state/futures/crossMargin/actions' -import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' +import { + selectCrossMarginAccount, + selectCrossMarginSupportedNetwork, +} from 'state/futures/crossMargin/selectors' import { useAppSelector, useFetchAction, usePollAction } from 'state/hooks' import { fetchStakingData } from 'state/staking/actions' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -34,13 +38,14 @@ export const usePollMarketFuturesData = () => { const markets = useAppSelector(selectMarkets) const wallet = useAppSelector(selectWallet) const smartMarginAddress = useAppSelector(selectSmartMarginAccount) + const crossMarginAccount = useAppSelector(selectCrossMarginAccount) const selectedAccountType = useAppSelector(selectFuturesType) const networkSupportsSmartMargin = useAppSelector(selectSmartMarginSupportedNetwork) const networkSupportsCrossMargin = useAppSelector(selectCrossMarginSupportedNetwork) useFetchAction(fetchSmartMarginAccount, { - dependencies: [networkId, wallet], + dependencies: [networkId, wallet, selectedAccountType], disabled: !wallet || !networkSupportsSmartMargin || @@ -48,7 +53,7 @@ export const usePollMarketFuturesData = () => { }) useFetchAction(fetchPerpsV3Account, { - dependencies: [networkId, wallet], + dependencies: [networkId, wallet, selectedAccountType], disabled: !wallet || !networkSupportsCrossMargin || @@ -75,6 +80,14 @@ export const usePollMarketFuturesData = () => { !smartMarginAddress || selectedAccountType !== FuturesMarginType.SMART_MARGIN, }) + usePollAction('fetchCrossMarginAccountData', fetchCrossMarginAccountData, { + intervalTime: 30000, + dependencies: [markets.length, crossMarginAccount], + disabled: + !markets.length || + !crossMarginAccount || + selectedAccountType !== FuturesMarginType.CROSS_MARGIN, + }) usePollAction('fetchFuturesPositionHistory', fetchFuturesPositionHistory, { intervalTime: 15000, dependencies: [wallet, smartMarginAddress], diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts index 735dac0c42..7f12219407 100644 --- a/packages/app/src/state/futures/smartMargin/actions.ts +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -101,7 +101,7 @@ import { selectSmartMarginSupportedNetwork, selectIsConditionalOrder, selectKeeperEthBalance, - selectLeverageSide, + selectSmartMarginLeverageSide, selectV2MarketAsset, selectPerpsV2Markets, selectOrderType, @@ -370,7 +370,7 @@ export const fetchSmartMarginTradePreview = createAsyncThunk< : params.marginDelta try { - const leverageSide = selectLeverageSide(getState()) + const leverageSide = selectSmartMarginLeverageSide(getState()) const preview = await sdk.futures.getSmartMarginTradePreview( account || ZERO_ADDRESS, params.market.key, @@ -465,7 +465,7 @@ export const editCrossMarginTradeSize = const marginDelta = selectSmartMarginMarginDelta(getState()) const orderPrice = selectSmartMarginOrderPrice(getState()) const isConditionalOrder = selectIsConditionalOrder(getState()) - const tradeSide = selectLeverageSide(getState()) + const tradeSide = selectSmartMarginLeverageSide(getState()) const marketInfo = selectV2MarketInfo(getState()) const price = isConditionalOrder && Number(orderPrice) > 0 ? wei(orderPrice) : indexPrice @@ -678,7 +678,7 @@ export const editTradeOrderPrice = (dispatch, getState) => { const rate = selectSkewAdjustedPrice(getState()) const orderType = selectOrderType(getState()) - const side = selectLeverageSide(getState()) + const side = selectSmartMarginLeverageSide(getState()) const inputs = selectSmartMarginTradeInputs(getState()) dispatch(setSmartMarginOrderPrice(price)) const invalidLabel = orderPriceInvalidLabel(price, side, rate, orderType) diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts index 46f95d2ec9..60f7a6ba5c 100644 --- a/packages/app/src/state/futures/smartMargin/selectors.ts +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -17,7 +17,7 @@ import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' import { DEFAULT_DELAYED_CANCEL_BUFFER } from 'constants/defaults' -import { selectSusdBalance } from 'state/balances/selectors' +import { selectSNXUSDBalance } from 'state/balances/selectors' import { deserializeWeiObject } from 'state/helpers' import { selectOffchainPricesInfo, @@ -443,7 +443,7 @@ export const selectPosition = createSelector( export const selectOrderFeeCap = (state: RootState) => wei(state.smartMargin.orderFeeCap || '0') -export const selectLeverageSide = createSelector( +export const selectSmartMarginLeverageSide = createSelector( (state: RootState) => state.smartMargin, (smartMargin) => smartMargin.leverageSide ) @@ -528,7 +528,7 @@ export const selectLockedMarginInMarkets = selectMarginInMarkets(true) export const selectIdleMargin = createSelector( selectAvailableMarginInMarkets, selectSmartMarginBalanceInfo, - selectSusdBalance, + selectSNXUSDBalance, (idleInMarkets, { freeMargin }, balance) => { return balance.add(idleInMarkets).add(freeMargin) } @@ -558,7 +558,7 @@ export const selectWithdrawableSmartMargin = createSelector( ) export const selectSmartMarginTradeInputs = createSelector( - selectLeverageSide, + selectSmartMarginLeverageSide, (state: RootState) => state.smartMargin.tradeInputs, (side, tradeInputs) => { const inputs = unserializeTradeInputs(tradeInputs) diff --git a/packages/app/src/state/migrations.ts b/packages/app/src/state/migrations.ts index ebed884b84..426b0411e3 100644 --- a/packages/app/src/state/migrations.ts +++ b/packages/app/src/state/migrations.ts @@ -86,11 +86,12 @@ export const migrations = { futures: FUTURES_INITIAL_STATE, } }, - 32: (state: any) => { + 33: (state: any) => { return { ...state, app: APP_INITIAL_STATE, futures: FUTURES_INITIAL_STATE, + balances: BALANCES_INITIAL_STATE, } }, } diff --git a/packages/app/src/state/store.ts b/packages/app/src/state/store.ts index 1ac55870c6..7be2a18ae5 100644 --- a/packages/app/src/state/store.ts +++ b/packages/app/src/state/store.ts @@ -36,7 +36,7 @@ const LOG_REDUX = false const persistConfig = { key: 'root1', storage, - version: 32, + version: 33, blacklist: ['app', 'wallet'], migrate: createMigrate(migrations, { debug: true }), } diff --git a/packages/app/src/translations/en.json b/packages/app/src/translations/en.json index 58a2ac35d4..e5efa9ec75 100644 --- a/packages/app/src/translations/en.json +++ b/packages/app/src/translations/en.json @@ -890,7 +890,8 @@ "locked-margin": "Locked Margin", "no-available-margin": "No available margin", "min-margin": "Min. $50 sUSD required to trade", - "tooltip": "Margin currently locked in closed markets. It will become available once the market reopens." + "tooltip": "Margin currently locked in closed markets. It will become available once the market reopens.", + "deposit": "Deposit" }, "confirmation": { "modal": { @@ -1124,7 +1125,9 @@ } }, "onboard": { - "title": "Smart Margin", + "sm-title": "Smart Margin", + "cm-title": "Cross Margin", + "cm-intro": "Start by creating your cross margin account", "step1-intro": "Start by creating your smart margin account", "step2-intro": "Now, approve the contract to spend sUSD", "step3-intro": "Lastly, deposit sUSD to begin trading", @@ -1132,7 +1135,8 @@ "faq1": "What is smart margin?", "faq2": "Is smart margin better than isolated margin?", "faq3": "How will a smart margin account affect my trading?", - "unsupported-network": "Smart margin is not supported on this network" + "unsupported-network": "Smart margin is not supported on this network", + "deposit": "Deposit" } } }, diff --git a/packages/app/src/utils/balances.ts b/packages/app/src/utils/balances.ts index 0fb7dbc6a6..86bb132189 100644 --- a/packages/app/src/utils/balances.ts +++ b/packages/app/src/utils/balances.ts @@ -1,4 +1,9 @@ -import { SynthBalance, TokenBalances } from '@kwenta/sdk/types' +import { + SynthBalance, + SynthV3Asset, + SynthV3BalancesAndAllowances, + TokenBalances, +} from '@kwenta/sdk/types' import { notNill } from '@kwenta/sdk/utils' import Wei, { wei } from '@synthetixio/wei' import { orderBy } from 'lodash' @@ -17,6 +22,47 @@ export const sortWei = (a: Wei, b: Wei, order: 'descending' | 'ascending') => { } } +export const serializeV3Balances = ( + v3Balances: SynthV3BalancesAndAllowances +): Partial> => { + return Object.keys(v3Balances).reduce>>( + (acc, asset) => { + const key = asset as SynthV3Asset + acc[key] = { + balance: v3Balances[key].balance.toString(), + allowances: Object.keys(v3Balances[key].allowances).reduce>( + (acc, spender) => { + acc[spender as SynthV3Asset] = v3Balances[key].allowances[spender].toString() + return acc + }, + {} + ), + } + return acc + }, + {} + ) +} + +export const unserializeV3Balances = ( + v3Balances: Partial> +): Partial => { + return Object.keys(v3Balances).reduce>((acc, asset) => { + const key = asset as SynthV3Asset + acc[key] = { + balance: wei(v3Balances[key]!.balance), + allowances: Object.keys(v3Balances[key]!.allowances).reduce>( + (acc, spender) => { + acc[spender as SynthV3Asset] = wei(v3Balances[key]!.allowances[spender]) + return acc + }, + {} + ), + } + return acc + }, {}) +} + export const serializeBalances = ( synthBalancesMap: Record, totalUSDBalance: Wei, diff --git a/packages/sdk/src/constants/perpsv3.ts b/packages/sdk/src/constants/perpsv3.ts new file mode 100644 index 0000000000..1105ad33b5 --- /dev/null +++ b/packages/sdk/src/constants/perpsv3.ts @@ -0,0 +1,7 @@ +// TODO: Make this dynamic + +export const V3_SYNTH_MARKET_IDS = { + SNXUSD: 0, + SNXETH: 2, + SNXBTC: 3, +} diff --git a/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json b/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json index 916b0415bf..d28e943547 100644 --- a/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json +++ b/packages/sdk/src/contracts/abis/PerpsV3MarketProxy.json @@ -186,19 +186,6 @@ "name": "PermissionRevoked", "type": "event" }, - { - "inputs": [], - "name": "createAccount", - "outputs": [ - { - "internalType": "uint128", - "name": "accountId", - "type": "uint128" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { diff --git a/packages/sdk/src/contracts/constants.ts b/packages/sdk/src/contracts/constants.ts index 5639b33f7a..e41f3d86d0 100644 --- a/packages/sdk/src/contracts/constants.ts +++ b/packages/sdk/src/contracts/constants.ts @@ -60,6 +60,9 @@ export const ADDRESSES: Record> = { 10: '0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9', 420: '0xebaeaad9236615542844adc5c149f86c36ad1136', }, + SNXUSD: { + 420: '0xe487Ad4291019b33e2230F8E2FB1fb6490325260', + }, Synthetix: { 1: '0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F', 5: '0x51f44ca59b867E005e48FA573Cb8df83FC7f7597', @@ -140,6 +143,6 @@ export const ADDRESSES: Record> = { 420: '0x4259a2004A1E110A86564ff1441c37F1461F344F', }, PerpsV3MarketProxy: { - 420: '0x54D71285871C5a0914F5B53740b70bA3eDb51Fbb', + 420: '0xd78D47739Ed468a602beb11C34a2A20759bcEf4F', }, } diff --git a/packages/sdk/src/contracts/index.ts b/packages/sdk/src/contracts/index.ts index 1e292942eb..4b225e322e 100644 --- a/packages/sdk/src/contracts/index.ts +++ b/packages/sdk/src/contracts/index.ts @@ -111,6 +111,9 @@ export const getContractsByNetwork = ( SUSD: ADDRESSES.SUSD[networkId] ? ERC20__factory.connect(ADDRESSES.SUSD[networkId], provider) : undefined, + SNXUSD: ADDRESSES.SNXUSD[networkId] + ? ERC20__factory.connect(ADDRESSES.SNXUSD[networkId], provider) + : undefined, SmartMarginAccountFactory: ADDRESSES.SmartMarginAccountFactory[networkId] ? SmartMarginAccountFactory__factory.connect( ADDRESSES.SmartMarginAccountFactory[networkId], @@ -237,6 +240,9 @@ export const getMulticallContractsByNetwork = (networkId: NetworkId) => { DappMaintenance: ADDRESSES.DappMaintenance[networkId] ? new EthCallContract(ADDRESSES.DappMaintenance[networkId], DappMaintenanceABI) : undefined, + SNXUSD: ADDRESSES.SNXUSD[networkId] + ? new EthCallContract(ADDRESSES.SNXUSD[networkId], ERC20ABI) + : undefined, } } diff --git a/packages/sdk/src/contracts/types/BatchClaimer.ts b/packages/sdk/src/contracts/types/BatchClaimer.ts index 2909de7bc8..bfcf9da4f2 100644 --- a/packages/sdk/src/contracts/types/BatchClaimer.ts +++ b/packages/sdk/src/contracts/types/BatchClaimer.ts @@ -2,117 +2,133 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish - account: string - amount: BigNumberish - merkleProof: BytesLike[] - epoch: BigNumberish - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface BatchClaimerInterface extends utils.Interface { - functions: { - 'claimMultiple(address[],tuple[][])': FunctionFragment - } + functions: { + "claimMultiple(address[],tuple[][])": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'claimMultiple'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "claimMultiple"): FunctionFragment; - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [string[], IMultipleMerkleDistributor.ClaimsStruct[][]] - ): string + encodeFunctionData( + functionFragment: "claimMultiple", + values: [string[], IMultipleMerkleDistributor.ClaimsStruct[][]] + ): string; - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; - events: {} + events: {}; } export interface BatchClaimer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: BatchClaimerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise - } - - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise - - callStatic: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: CallOverrides - ): Promise - } - - filters: {} - - estimateGas: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise - } - - populateTransaction: { - claimMultiple( - _distributors: string[], - _claims: IMultipleMerkleDistributor.ClaimsStruct[][], - overrides?: Overrides & { from?: string } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: BatchClaimerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + claimMultiple( + _distributors: string[], + _claims: IMultipleMerkleDistributor.ClaimsStruct[][], + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/DappMaintenance.ts b/packages/sdk/src/contracts/types/DappMaintenance.ts index 0f5383a8fd..30dcae334c 100644 --- a/packages/sdk/src/contracts/types/DappMaintenance.ts +++ b/packages/sdk/src/contracts/types/DappMaintenance.ts @@ -2,286 +2,378 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface DappMaintenanceInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'isPausedSX()': FunctionFragment - 'isPausedStaking()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'setMaintenanceModeAll(bool)': FunctionFragment - 'setMaintenanceModeSX(bool)': FunctionFragment - 'setMaintenanceModeStaking(bool)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'isPausedSX' - | 'isPausedStaking' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'setMaintenanceModeAll' - | 'setMaintenanceModeSX' - | 'setMaintenanceModeStaking' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'isPausedSX', values?: undefined): string - encodeFunctionData(functionFragment: 'isPausedStaking', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'setMaintenanceModeAll', values: [boolean]): string - encodeFunctionData(functionFragment: 'setMaintenanceModeSX', values: [boolean]): string - encodeFunctionData(functionFragment: 'setMaintenanceModeStaking', values: [boolean]): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isPausedSX', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isPausedStaking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeSX', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaintenanceModeStaking', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'SXMaintenance(bool)': EventFragment - 'StakingMaintenance(bool)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SXMaintenance'): EventFragment - getEvent(nameOrSignatureOrTopic: 'StakingMaintenance'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "isPausedSX()": FunctionFragment; + "isPausedStaking()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "setMaintenanceModeAll(bool)": FunctionFragment; + "setMaintenanceModeSX(bool)": FunctionFragment; + "setMaintenanceModeStaking(bool)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "isPausedSX" + | "isPausedStaking" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "setMaintenanceModeAll" + | "setMaintenanceModeSX" + | "setMaintenanceModeStaking" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isPausedSX", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isPausedStaking", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeAll", + values: [boolean] + ): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeSX", + values: [boolean] + ): string; + encodeFunctionData( + functionFragment: "setMaintenanceModeStaking", + values: [boolean] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isPausedSX", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isPausedStaking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeSX", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaintenanceModeStaking", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "SXMaintenance(bool)": EventFragment; + "StakingMaintenance(bool)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SXMaintenance"): EventFragment; + getEvent(nameOrSignatureOrTopic: "StakingMaintenance"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface SXMaintenanceEventObject { - isPaused: boolean + isPaused: boolean; } -export type SXMaintenanceEvent = TypedEvent<[boolean], SXMaintenanceEventObject> +export type SXMaintenanceEvent = TypedEvent< + [boolean], + SXMaintenanceEventObject +>; -export type SXMaintenanceEventFilter = TypedEventFilter +export type SXMaintenanceEventFilter = TypedEventFilter; export interface StakingMaintenanceEventObject { - isPaused: boolean + isPaused: boolean; } -export type StakingMaintenanceEvent = TypedEvent<[boolean], StakingMaintenanceEventObject> +export type StakingMaintenanceEvent = TypedEvent< + [boolean], + StakingMaintenanceEventObject +>; -export type StakingMaintenanceEventFilter = TypedEventFilter +export type StakingMaintenanceEventFilter = + TypedEventFilter; export interface DappMaintenance extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: DappMaintenanceInterface + interface: DappMaintenanceInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise<[boolean]> + isPausedSX(overrides?: CallOverrides): Promise<[boolean]>; - isPausedStaking(overrides?: CallOverrides): Promise<[boolean]> + isPausedStaking(overrides?: CallOverrides): Promise<[boolean]>; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll(isPaused: boolean, overrides?: CallOverrides): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; - setMaintenanceModeSX(isPaused: boolean, overrides?: CallOverrides): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; - setMaintenanceModeStaking(isPaused: boolean, overrides?: CallOverrides): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: CallOverrides + ): Promise; + }; - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'SXMaintenance(bool)'(isPaused?: null): SXMaintenanceEventFilter - SXMaintenance(isPaused?: null): SXMaintenanceEventFilter + "SXMaintenance(bool)"(isPaused?: null): SXMaintenanceEventFilter; + SXMaintenance(isPaused?: null): SXMaintenanceEventFilter; - 'StakingMaintenance(bool)'(isPaused?: null): StakingMaintenanceEventFilter - StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter - } + "StakingMaintenance(bool)"(isPaused?: null): StakingMaintenanceEventFilter; + StakingMaintenance(isPaused?: null): StakingMaintenanceEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - isPausedSX(overrides?: CallOverrides): Promise + isPausedSX(overrides?: CallOverrides): Promise; - isPausedStaking(overrides?: CallOverrides): Promise + isPausedStaking(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setMaintenanceModeAll( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeAll( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeSX( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setMaintenanceModeSX( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setMaintenanceModeStaking( - isPaused: boolean, - overrides?: Overrides & { from?: string } - ): Promise - } + setMaintenanceModeStaking( + isPaused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ERC20.ts b/packages/sdk/src/contracts/types/ERC20.ts index 21d2184639..5a675444d2 100644 --- a/packages/sdk/src/contracts/types/ERC20.ts +++ b/packages/sdk/src/contracts/types/ERC20.ts @@ -2,381 +2,469 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ERC20Interface extends utils.Interface { - functions: { - 'name()': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'mint(uint256)': FunctionFragment - 'totalSupply()': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'decimals()': FunctionFragment - 'increaseAllowance(address,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'symbol()': FunctionFragment - 'decreaseAllowance(address,uint256)': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'allowance(address,address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'name' - | 'approve' - | 'mint' - | 'totalSupply' - | 'transferFrom' - | 'decimals' - | 'increaseAllowance' - | 'balanceOf' - | 'symbol' - | 'decreaseAllowance' - | 'transfer' - | 'allowance' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'mint', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [string, string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData(functionFragment: 'increaseAllowance', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'decreaseAllowance', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string - - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'increaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decreaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - - events: { - 'Transfer(address,address,uint256)': EventFragment - 'Approval(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment + functions: { + "name()": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "mint(uint256)": FunctionFragment; + "totalSupply()": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "decimals()": FunctionFragment; + "increaseAllowance(address,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "symbol()": FunctionFragment; + "decreaseAllowance(address,uint256)": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "allowance(address,address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "name" + | "approve" + | "mint" + | "totalSupply" + | "transferFrom" + | "decimals" + | "increaseAllowance" + | "balanceOf" + | "symbol" + | "decreaseAllowance" + | "transfer" + | "allowance" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "mint", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "increaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "decreaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "increaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "decreaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + + events: { + "Transfer(address,address,uint256)": EventFragment; + "Approval(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; } export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface ERC20 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ERC20Interface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - name(overrides?: CallOverrides): Promise<[string]> - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise<[number]> - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - symbol(overrides?: CallOverrides): Promise<[string]> - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> - } - - name(overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mint(value: BigNumberish, overrides?: Overrides & { from?: string }): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - callStatic: { - name(overrides?: CallOverrides): Promise - - approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise - - mint(value: BigNumberish, overrides?: CallOverrides): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - transfer(recipient: string, amount: BigNumberish, overrides?: CallOverrides): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - } - - filters: { - 'Transfer(address,address,uint256)'( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter - Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter - - 'Approval(address,address,uint256)'( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter - Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter - } - - estimateGas: { - name(overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mint(value: BigNumberish, overrides?: Overrides & { from?: string }): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - } - - populateTransaction: { - name(overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mint( - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ERC20Interface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + name(overrides?: CallOverrides): Promise<[string]>; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise<[number]>; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; + + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + callStatic: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + mint(value: BigNumberish, overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + }; + + estimateGas: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + name(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ExchangeRates.ts b/packages/sdk/src/contracts/types/ExchangeRates.ts index fbedaff85a..9da7ab93fe 100644 --- a/packages/sdk/src/contracts/types/ExchangeRates.ts +++ b/packages/sdk/src/contracts/types/ExchangeRates.ts @@ -2,1221 +2,1632 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IDirectIntegrationManager { - export type ParameterIntegrationSettingsStruct = { - currencyKey: BytesLike - dexPriceAggregator: string - atomicEquivalentForDexPricing: string - atomicExchangeFeeRate: BigNumberish - atomicTwapWindow: BigNumberish - atomicMaxVolumePerBlock: BigNumberish - atomicVolatilityConsiderationWindow: BigNumberish - atomicVolatilityUpdateThreshold: BigNumberish - exchangeFeeRate: BigNumberish - exchangeMaxDynamicFee: BigNumberish - exchangeDynamicFeeRounds: BigNumberish - exchangeDynamicFeeThreshold: BigNumberish - exchangeDynamicFeeWeightDecay: BigNumberish - } - - export type ParameterIntegrationSettingsStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - currencyKey: string - dexPriceAggregator: string - atomicEquivalentForDexPricing: string - atomicExchangeFeeRate: BigNumber - atomicTwapWindow: BigNumber - atomicMaxVolumePerBlock: BigNumber - atomicVolatilityConsiderationWindow: BigNumber - atomicVolatilityUpdateThreshold: BigNumber - exchangeFeeRate: BigNumber - exchangeMaxDynamicFee: BigNumber - exchangeDynamicFeeRounds: BigNumber - exchangeDynamicFeeThreshold: BigNumber - exchangeDynamicFeeWeightDecay: BigNumber - } + export type ParameterIntegrationSettingsStruct = { + currencyKey: BytesLike; + dexPriceAggregator: string; + atomicEquivalentForDexPricing: string; + atomicExchangeFeeRate: BigNumberish; + atomicTwapWindow: BigNumberish; + atomicMaxVolumePerBlock: BigNumberish; + atomicVolatilityConsiderationWindow: BigNumberish; + atomicVolatilityUpdateThreshold: BigNumberish; + exchangeFeeRate: BigNumberish; + exchangeMaxDynamicFee: BigNumberish; + exchangeDynamicFeeRounds: BigNumberish; + exchangeDynamicFeeThreshold: BigNumberish; + exchangeDynamicFeeWeightDecay: BigNumberish; + }; + + export type ParameterIntegrationSettingsStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + currencyKey: string; + dexPriceAggregator: string; + atomicEquivalentForDexPricing: string; + atomicExchangeFeeRate: BigNumber; + atomicTwapWindow: BigNumber; + atomicMaxVolumePerBlock: BigNumber; + atomicVolatilityConsiderationWindow: BigNumber; + atomicVolatilityUpdateThreshold: BigNumber; + exchangeFeeRate: BigNumber; + exchangeMaxDynamicFee: BigNumber; + exchangeDynamicFeeRounds: BigNumber; + exchangeDynamicFeeThreshold: BigNumber; + exchangeDynamicFeeWeightDecay: BigNumber; + }; } export interface ExchangeRatesInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'addAggregator(bytes32,address)': FunctionFragment - 'aggregatorKeys(uint256)': FunctionFragment - 'aggregatorWarningFlags()': FunctionFragment - 'aggregators(bytes32)': FunctionFragment - 'anyRateIsInvalid(bytes32[])': FunctionFragment - 'anyRateIsInvalidAtRound(bytes32[],uint256[])': FunctionFragment - 'currenciesUsingAggregator(address)': FunctionFragment - 'currencyKeyDecimals(bytes32)': FunctionFragment - 'effectiveAtomicValueAndRates(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValue(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValueAndRates(bytes32,uint256,bytes32)': FunctionFragment - 'effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)': FunctionFragment - 'getCurrentRoundId(bytes32)': FunctionFragment - 'getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'lastRateUpdateTimes(bytes32)': FunctionFragment - 'lastRateUpdateTimesForCurrencies(bytes32[])': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rateAndInvalid(bytes32)': FunctionFragment - 'rateAndTimestampAtRound(bytes32,uint256)': FunctionFragment - 'rateAndUpdatedTime(bytes32)': FunctionFragment - 'rateForCurrency(bytes32)': FunctionFragment - 'rateIsFlagged(bytes32)': FunctionFragment - 'rateIsInvalid(bytes32)': FunctionFragment - 'rateIsStale(bytes32)': FunctionFragment - 'rateStalePeriod()': FunctionFragment - 'rateWithSafetyChecks(bytes32)': FunctionFragment - 'ratesAndInvalidForCurrencies(bytes32[])': FunctionFragment - 'ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)': FunctionFragment - 'ratesForCurrencies(bytes32[])': FunctionFragment - 'rebuildCache()': FunctionFragment - 'removeAggregator(bytes32)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'synthTooVolatileForAtomicExchange(bytes32)': FunctionFragment - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'addAggregator' - | 'aggregatorKeys' - | 'aggregatorWarningFlags' - | 'aggregators' - | 'anyRateIsInvalid' - | 'anyRateIsInvalidAtRound' - | 'currenciesUsingAggregator' - | 'currencyKeyDecimals' - | 'effectiveAtomicValueAndRates' - | 'effectiveValue' - | 'effectiveValueAndRates' - | 'effectiveValueAndRatesAtRound' - | 'getCurrentRoundId' - | 'getLastRoundIdBeforeElapsedSecs' - | 'isResolverCached' - | 'lastRateUpdateTimes' - | 'lastRateUpdateTimesForCurrencies' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rateAndInvalid' - | 'rateAndTimestampAtRound' - | 'rateAndUpdatedTime' - | 'rateForCurrency' - | 'rateIsFlagged' - | 'rateIsInvalid' - | 'rateIsStale' - | 'rateStalePeriod' - | 'rateWithSafetyChecks' - | 'ratesAndInvalidForCurrencies' - | 'ratesAndUpdatedTimeForCurrencyLastNRounds' - | 'ratesForCurrencies' - | 'rebuildCache' - | 'removeAggregator' - | 'resolver' - | 'resolverAddressesRequired' - | 'synthTooVolatileForAtomicExchange(bytes32)' - | 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'addAggregator', values: [BytesLike, string]): string - encodeFunctionData(functionFragment: 'aggregatorKeys', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'aggregatorWarningFlags', values?: undefined): string - encodeFunctionData(functionFragment: 'aggregators', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'anyRateIsInvalid', values: [BytesLike[]]): string - encodeFunctionData( - functionFragment: 'anyRateIsInvalidAtRound', - values: [BytesLike[], BigNumberish[]] - ): string - encodeFunctionData(functionFragment: 'currenciesUsingAggregator', values: [string]): string - encodeFunctionData(functionFragment: 'currencyKeyDecimals', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'effectiveAtomicValueAndRates', - values: [BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'effectiveValue', - values: [BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'effectiveValueAndRates', - values: [BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'effectiveValueAndRatesAtRound', - values: [BytesLike, BigNumberish, BytesLike, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getCurrentRoundId', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'getLastRoundIdBeforeElapsedSecs', - values: [BytesLike, BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'lastRateUpdateTimes', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'lastRateUpdateTimesForCurrencies', - values: [BytesLike[]] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rateAndInvalid', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'rateAndTimestampAtRound', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'rateAndUpdatedTime', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rateForCurrency', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rateIsFlagged', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rateIsInvalid', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rateIsStale', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rateStalePeriod', values?: undefined): string - encodeFunctionData(functionFragment: 'rateWithSafetyChecks', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'ratesAndInvalidForCurrencies', - values: [BytesLike[]] - ): string - encodeFunctionData( - functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - values: [BytesLike, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'ratesForCurrencies', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'removeAggregator', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', - values: [BytesLike] - ): string - encodeFunctionData( - functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', - values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregatorKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregatorWarningFlags', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregators', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anyRateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anyRateIsInvalidAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currenciesUsingAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currencyKeyDecimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveAtomicValueAndRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValueAndRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'effectiveValueAndRatesAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getCurrentRoundId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getLastRoundIdBeforeElapsedSecs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastRateUpdateTimes', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'lastRateUpdateTimesForCurrencies', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndTimestampAtRound', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateAndUpdatedTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateForCurrency', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsFlagged', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateIsStale', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateStalePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rateWithSafetyChecks', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'ratesAndInvalidForCurrencies', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'ratesForCurrencies', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeAggregator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'synthTooVolatileForAtomicExchange(bytes32)', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))', - data: BytesLike - ): Result - - events: { - 'AggregatorAdded(bytes32,address)': EventFragment - 'AggregatorRemoved(bytes32,address)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AggregatorAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AggregatorRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "addAggregator(bytes32,address)": FunctionFragment; + "aggregatorKeys(uint256)": FunctionFragment; + "aggregatorWarningFlags()": FunctionFragment; + "aggregators(bytes32)": FunctionFragment; + "anyRateIsInvalid(bytes32[])": FunctionFragment; + "anyRateIsInvalidAtRound(bytes32[],uint256[])": FunctionFragment; + "currenciesUsingAggregator(address)": FunctionFragment; + "currencyKeyDecimals(bytes32)": FunctionFragment; + "effectiveAtomicValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValue(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValueAndRates(bytes32,uint256,bytes32)": FunctionFragment; + "effectiveValueAndRatesAtRound(bytes32,uint256,bytes32,uint256,uint256)": FunctionFragment; + "getCurrentRoundId(bytes32)": FunctionFragment; + "getLastRoundIdBeforeElapsedSecs(bytes32,uint256,uint256,uint256)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "lastRateUpdateTimes(bytes32)": FunctionFragment; + "lastRateUpdateTimesForCurrencies(bytes32[])": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rateAndInvalid(bytes32)": FunctionFragment; + "rateAndTimestampAtRound(bytes32,uint256)": FunctionFragment; + "rateAndUpdatedTime(bytes32)": FunctionFragment; + "rateForCurrency(bytes32)": FunctionFragment; + "rateIsFlagged(bytes32)": FunctionFragment; + "rateIsInvalid(bytes32)": FunctionFragment; + "rateIsStale(bytes32)": FunctionFragment; + "rateStalePeriod()": FunctionFragment; + "rateWithSafetyChecks(bytes32)": FunctionFragment; + "ratesAndInvalidForCurrencies(bytes32[])": FunctionFragment; + "ratesAndUpdatedTimeForCurrencyLastNRounds(bytes32,uint256,uint256)": FunctionFragment; + "ratesForCurrencies(bytes32[])": FunctionFragment; + "rebuildCache()": FunctionFragment; + "removeAggregator(bytes32)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "synthTooVolatileForAtomicExchange(bytes32)": FunctionFragment; + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "addAggregator" + | "aggregatorKeys" + | "aggregatorWarningFlags" + | "aggregators" + | "anyRateIsInvalid" + | "anyRateIsInvalidAtRound" + | "currenciesUsingAggregator" + | "currencyKeyDecimals" + | "effectiveAtomicValueAndRates" + | "effectiveValue" + | "effectiveValueAndRates" + | "effectiveValueAndRatesAtRound" + | "getCurrentRoundId" + | "getLastRoundIdBeforeElapsedSecs" + | "isResolverCached" + | "lastRateUpdateTimes" + | "lastRateUpdateTimesForCurrencies" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rateAndInvalid" + | "rateAndTimestampAtRound" + | "rateAndUpdatedTime" + | "rateForCurrency" + | "rateIsFlagged" + | "rateIsInvalid" + | "rateIsStale" + | "rateStalePeriod" + | "rateWithSafetyChecks" + | "ratesAndInvalidForCurrencies" + | "ratesAndUpdatedTimeForCurrencyLastNRounds" + | "ratesForCurrencies" + | "rebuildCache" + | "removeAggregator" + | "resolver" + | "resolverAddressesRequired" + | "synthTooVolatileForAtomicExchange(bytes32)" + | "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "addAggregator", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "aggregatorKeys", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "aggregatorWarningFlags", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "aggregators", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "anyRateIsInvalid", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "anyRateIsInvalidAtRound", + values: [BytesLike[], BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "currenciesUsingAggregator", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "currencyKeyDecimals", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveAtomicValueAndRates", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValue", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValueAndRates", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "effectiveValueAndRatesAtRound", + values: [BytesLike, BigNumberish, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getCurrentRoundId", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getLastRoundIdBeforeElapsedSecs", + values: [BytesLike, BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastRateUpdateTimes", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "lastRateUpdateTimesForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rateAndInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateAndTimestampAtRound", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rateAndUpdatedTime", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateForCurrency", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsFlagged", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateIsStale", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateStalePeriod", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rateWithSafetyChecks", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "ratesAndInvalidForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", + values: [BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "ratesForCurrencies", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "removeAggregator", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", + values: [IDirectIntegrationManager.ParameterIntegrationSettingsStruct] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addAggregator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregatorKeys", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregatorWarningFlags", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregators", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "anyRateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "anyRateIsInvalidAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currenciesUsingAggregator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currencyKeyDecimals", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveAtomicValueAndRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValueAndRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "effectiveValueAndRatesAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getCurrentRoundId", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLastRoundIdBeforeElapsedSecs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastRateUpdateTimes", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastRateUpdateTimesForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rateAndInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateAndTimestampAtRound", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateAndUpdatedTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateForCurrency", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsFlagged", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateIsStale", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateStalePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateWithSafetyChecks", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesAndInvalidForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesAndUpdatedTimeForCurrencyLastNRounds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "ratesForCurrencies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "removeAggregator", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthTooVolatileForAtomicExchange(bytes32)", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))", + data: BytesLike + ): Result; + + events: { + "AggregatorAdded(bytes32,address)": EventFragment; + "AggregatorRemoved(bytes32,address)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AggregatorAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AggregatorRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface AggregatorAddedEventObject { - currencyKey: string - aggregator: string + currencyKey: string; + aggregator: string; } -export type AggregatorAddedEvent = TypedEvent<[string, string], AggregatorAddedEventObject> +export type AggregatorAddedEvent = TypedEvent< + [string, string], + AggregatorAddedEventObject +>; -export type AggregatorAddedEventFilter = TypedEventFilter +export type AggregatorAddedEventFilter = TypedEventFilter; export interface AggregatorRemovedEventObject { - currencyKey: string - aggregator: string + currencyKey: string; + aggregator: string; } -export type AggregatorRemovedEvent = TypedEvent<[string, string], AggregatorRemovedEventObject> +export type AggregatorRemovedEvent = TypedEvent< + [string, string], + AggregatorRemovedEventObject +>; -export type AggregatorRemovedEventFilter = TypedEventFilter +export type AggregatorRemovedEventFilter = + TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ExchangeRates extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ExchangeRatesInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]> - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]> - - anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise<[boolean]> - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise<[boolean]> - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise<[string[]] & { currencies: string[] }> - - currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise<[number]> - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber] & { value: BigNumber }> - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[]]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]> - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise<[BigNumber[]]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]> - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise<[boolean]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise - - anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise - - currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: CallOverrides - ): Promise - - aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise - - anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise - - currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber] & { - value: BigNumber - systemValue: BigNumber - systemSourceRate: BigNumber - systemDestinationRate: BigNumber - } - > - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - value: BigNumber - sourceRate: BigNumber - destinationRate: BigNumber - } - > - - getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }> - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }> - - rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, boolean, boolean] & { - rate: BigNumber - broken: boolean - staleOrInvalid: boolean - } - > - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean }> - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] }> - - ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - removeAggregator(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AggregatorAdded(bytes32,address)'( - currencyKey?: null, - aggregator?: null - ): AggregatorAddedEventFilter - AggregatorAdded(currencyKey?: null, aggregator?: null): AggregatorAddedEventFilter - - 'AggregatorRemoved(bytes32,address)'( - currencyKey?: null, - aggregator?: null - ): AggregatorRemovedEventFilter - AggregatorRemoved(currencyKey?: null, aggregator?: null): AggregatorRemovedEventFilter - - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise - - anyRateIsInvalid(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator(aggregator: string, overrides?: CallOverrides): Promise - - currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise - - getCurrentRoundId(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise - - rateAndUpdatedTime(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateForCurrency(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise - - ratesForCurrencies(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - addAggregator( - currencyKey: BytesLike, - aggregatorAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - aggregatorKeys(arg0: BigNumberish, overrides?: CallOverrides): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise - - anyRateIsInvalid( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - anyRateIsInvalidAtRound( - currencyKeys: BytesLike[], - roundIds: BigNumberish[], - overrides?: CallOverrides - ): Promise - - currenciesUsingAggregator( - aggregator: string, - overrides?: CallOverrides - ): Promise - - currencyKeyDecimals(arg0: BytesLike, overrides?: CallOverrides): Promise - - effectiveAtomicValueAndRates( - arg0: BytesLike, - arg1: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValue( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRates( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - effectiveValueAndRatesAtRound( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - roundIdForSrc: BigNumberish, - roundIdForDest: BigNumberish, - overrides?: CallOverrides - ): Promise - - getCurrentRoundId( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - getLastRoundIdBeforeElapsedSecs( - currencyKey: BytesLike, - startingRoundId: BigNumberish, - startingTimestamp: BigNumberish, - timediff: BigNumberish, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - lastRateUpdateTimes( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - lastRateUpdateTimesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rateAndInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateAndTimestampAtRound( - currencyKey: BytesLike, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise - - rateAndUpdatedTime( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - rateForCurrency( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - rateIsFlagged(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateIsStale(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - rateStalePeriod(overrides?: CallOverrides): Promise - - rateWithSafetyChecks( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - ratesAndInvalidForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - ratesAndUpdatedTimeForCurrencyLastNRounds( - currencyKey: BytesLike, - numRounds: BigNumberish, - roundId: BigNumberish, - overrides?: CallOverrides - ): Promise - - ratesForCurrencies( - currencyKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - removeAggregator( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - 'synthTooVolatileForAtomicExchange(bytes32)'( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise - - 'synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))'( - arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ExchangeRatesInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]>; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]>; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[boolean]>; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise<[boolean]>; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise<[string[]] & { currencies: string[] }>; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[number]>; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { value: BigNumber }>; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]>; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise<[boolean]>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: CallOverrides + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + systemValue: BigNumber; + systemSourceRate: BigNumber; + systemDestinationRate: BigNumber; + } + >; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + value: BigNumber; + sourceRate: BigNumber; + destinationRate: BigNumber; + } + >; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { rate: BigNumber; isInvalid: boolean }>; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { rate: BigNumber; time: BigNumber }>; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean, boolean] & { + rate: BigNumber; + broken: boolean; + staleOrInvalid: boolean; + } + >; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [BigNumber[], boolean] & { rates: BigNumber[]; anyRateInvalid: boolean } + >; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber[], BigNumber[]] & { rates: BigNumber[]; times: BigNumber[] } + >; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AggregatorAdded(bytes32,address)"( + currencyKey?: null, + aggregator?: null + ): AggregatorAddedEventFilter; + AggregatorAdded( + currencyKey?: null, + aggregator?: null + ): AggregatorAddedEventFilter; + + "AggregatorRemoved(bytes32,address)"( + currencyKey?: null, + aggregator?: null + ): AggregatorRemovedEventFilter; + AggregatorRemoved( + currencyKey?: null, + aggregator?: null + ): AggregatorRemovedEventFilter; + + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + aggregators(arg0: BytesLike, overrides?: CallOverrides): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + addAggregator( + currencyKey: BytesLike, + aggregatorAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorKeys( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + aggregatorWarningFlags( + overrides?: CallOverrides + ): Promise; + + aggregators( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalid( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + anyRateIsInvalidAtRound( + currencyKeys: BytesLike[], + roundIds: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + currenciesUsingAggregator( + aggregator: string, + overrides?: CallOverrides + ): Promise; + + currencyKeyDecimals( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveAtomicValueAndRates( + arg0: BytesLike, + arg1: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValue( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRates( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + effectiveValueAndRatesAtRound( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + roundIdForSrc: BigNumberish, + roundIdForDest: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getCurrentRoundId( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getLastRoundIdBeforeElapsedSecs( + currencyKey: BytesLike, + startingRoundId: BigNumberish, + startingTimestamp: BigNumberish, + timediff: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + lastRateUpdateTimes( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastRateUpdateTimesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rateAndInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateAndTimestampAtRound( + currencyKey: BytesLike, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + rateAndUpdatedTime( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateForCurrency( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsFlagged( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateIsStale( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rateWithSafetyChecks( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + ratesAndInvalidForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + ratesAndUpdatedTimeForCurrencyLastNRounds( + currencyKey: BytesLike, + numRounds: BigNumberish, + roundId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + ratesForCurrencies( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + removeAggregator( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange(bytes32)"( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + "synthTooVolatileForAtomicExchange((bytes32,address,address,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))"( + arg0: IDirectIntegrationManager.ParameterIntegrationSettingsStruct, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Exchanger.ts b/packages/sdk/src/contracts/types/Exchanger.ts index c59747049a..d73b36420d 100644 --- a/packages/sdk/src/contracts/types/Exchanger.ts +++ b/packages/sdk/src/contracts/types/Exchanger.ts @@ -2,882 +2,1110 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ExchangerInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'calculateAmountAfterSettlement(address,bytes32,uint256,uint256)': FunctionFragment - 'dynamicFeeRateForExchange(bytes32,bytes32)': FunctionFragment - 'exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)': FunctionFragment - 'exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)': FunctionFragment - 'feeRateForExchange(bytes32,bytes32)': FunctionFragment - 'getAmountsForExchange(uint256,bytes32,bytes32)': FunctionFragment - 'hasWaitingPeriodOrSettlementOwing(address,bytes32)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'isSynthRateInvalid(bytes32)': FunctionFragment - 'lastExchangeRate(bytes32)': FunctionFragment - 'maxSecsLeftInWaitingPeriod(address,bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'priceDeviationThresholdFactor()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'settle(address,bytes32)': FunctionFragment - 'settlementOwing(address,bytes32)': FunctionFragment - 'tradingRewardsEnabled()': FunctionFragment - 'waitingPeriodSecs()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'calculateAmountAfterSettlement' - | 'dynamicFeeRateForExchange' - | 'exchange' - | 'exchangeAtomically' - | 'feeRateForExchange' - | 'getAmountsForExchange' - | 'hasWaitingPeriodOrSettlementOwing' - | 'isResolverCached' - | 'isSynthRateInvalid' - | 'lastExchangeRate' - | 'maxSecsLeftInWaitingPeriod' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'priceDeviationThresholdFactor' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'settle' - | 'settlementOwing' - | 'tradingRewardsEnabled' - | 'waitingPeriodSecs' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'calculateAmountAfterSettlement', - values: [string, BytesLike, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'dynamicFeeRateForExchange', - values: [BytesLike, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchange', - values: [string, string, BytesLike, BigNumberish, BytesLike, string, boolean, string, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeAtomically', - values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'feeRateForExchange', values: [BytesLike, BytesLike]): string - encodeFunctionData( - functionFragment: 'getAmountsForExchange', - values: [BigNumberish, BytesLike, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'hasWaitingPeriodOrSettlementOwing', - values: [string, BytesLike] - ): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'isSynthRateInvalid', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'lastExchangeRate', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'maxSecsLeftInWaitingPeriod', - values: [string, BytesLike] - ): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'priceDeviationThresholdFactor', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'settle', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'settlementOwing', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'tradingRewardsEnabled', values?: undefined): string - encodeFunctionData(functionFragment: 'waitingPeriodSecs', values?: undefined): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'calculateAmountAfterSettlement', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'dynamicFeeRateForExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'feeRateForExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAmountsForExchange', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'hasWaitingPeriodOrSettlementOwing', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isSynthRateInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastExchangeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxSecsLeftInWaitingPeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'priceDeviationThresholdFactor', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settlementOwing', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tradingRewardsEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'waitingPeriodSecs', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)': EventFragment - 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeEntryAppended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeEntrySettled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "calculateAmountAfterSettlement(address,bytes32,uint256,uint256)": FunctionFragment; + "dynamicFeeRateForExchange(bytes32,bytes32)": FunctionFragment; + "exchange(address,address,bytes32,uint256,bytes32,address,bool,address,bytes32)": FunctionFragment; + "exchangeAtomically(address,bytes32,uint256,bytes32,address,bytes32,uint256)": FunctionFragment; + "feeRateForExchange(bytes32,bytes32)": FunctionFragment; + "getAmountsForExchange(uint256,bytes32,bytes32)": FunctionFragment; + "hasWaitingPeriodOrSettlementOwing(address,bytes32)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "isSynthRateInvalid(bytes32)": FunctionFragment; + "lastExchangeRate(bytes32)": FunctionFragment; + "maxSecsLeftInWaitingPeriod(address,bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "priceDeviationThresholdFactor()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "settle(address,bytes32)": FunctionFragment; + "settlementOwing(address,bytes32)": FunctionFragment; + "tradingRewardsEnabled()": FunctionFragment; + "waitingPeriodSecs()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "calculateAmountAfterSettlement" + | "dynamicFeeRateForExchange" + | "exchange" + | "exchangeAtomically" + | "feeRateForExchange" + | "getAmountsForExchange" + | "hasWaitingPeriodOrSettlementOwing" + | "isResolverCached" + | "isSynthRateInvalid" + | "lastExchangeRate" + | "maxSecsLeftInWaitingPeriod" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "priceDeviationThresholdFactor" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "settle" + | "settlementOwing" + | "tradingRewardsEnabled" + | "waitingPeriodSecs" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "calculateAmountAfterSettlement", + values: [string, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "dynamicFeeRateForExchange", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchange", + values: [ + string, + string, + BytesLike, + BigNumberish, + BytesLike, + string, + boolean, + string, + BytesLike + ] + ): string; + encodeFunctionData( + functionFragment: "exchangeAtomically", + values: [ + string, + BytesLike, + BigNumberish, + BytesLike, + string, + BytesLike, + BigNumberish + ] + ): string; + encodeFunctionData( + functionFragment: "feeRateForExchange", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getAmountsForExchange", + values: [BigNumberish, BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "hasWaitingPeriodOrSettlementOwing", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isSynthRateInvalid", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "lastExchangeRate", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxSecsLeftInWaitingPeriod", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "priceDeviationThresholdFactor", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "settle", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "settlementOwing", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "tradingRewardsEnabled", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "waitingPeriodSecs", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "calculateAmountAfterSettlement", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "dynamicFeeRateForExchange", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "exchangeAtomically", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "feeRateForExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAmountsForExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "hasWaitingPeriodOrSettlementOwing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isSynthRateInvalid", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastExchangeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxSecsLeftInWaitingPeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "priceDeviationThresholdFactor", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "settlementOwing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tradingRewardsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "waitingPeriodSecs", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)": EventFragment; + "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeEntryAppended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeEntrySettled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface ExchangeEntryAppendedEventObject { - account: string - src: string - amount: BigNumber - dest: string - amountReceived: BigNumber - exchangeFeeRate: BigNumber - roundIdForSrc: BigNumber - roundIdForDest: BigNumber + account: string; + src: string; + amount: BigNumber; + dest: string; + amountReceived: BigNumber; + exchangeFeeRate: BigNumber; + roundIdForSrc: BigNumber; + roundIdForDest: BigNumber; } export type ExchangeEntryAppendedEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber], - ExchangeEntryAppendedEventObject -> - -export type ExchangeEntryAppendedEventFilter = TypedEventFilter + [ + string, + string, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + ExchangeEntryAppendedEventObject +>; + +export type ExchangeEntryAppendedEventFilter = + TypedEventFilter; export interface ExchangeEntrySettledEventObject { - from: string - src: string - amount: BigNumber - dest: string - reclaim: BigNumber - rebate: BigNumber - srcRoundIdAtPeriodEnd: BigNumber - destRoundIdAtPeriodEnd: BigNumber - exchangeTimestamp: BigNumber + from: string; + src: string; + amount: BigNumber; + dest: string; + reclaim: BigNumber; + rebate: BigNumber; + srcRoundIdAtPeriodEnd: BigNumber; + destRoundIdAtPeriodEnd: BigNumber; + exchangeTimestamp: BigNumber; } export type ExchangeEntrySettledEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - ExchangeEntrySettledEventObject -> - -export type ExchangeEntrySettledEventFilter = TypedEventFilter + [ + string, + string, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + ExchangeEntrySettledEventObject +>; + +export type ExchangeEntrySettledEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface Exchanger extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: ExchangerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }> - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise<[BigNumber]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]> - - waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean }> - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: CallOverrides - ): Promise - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amountReceived: BigNumber - fee: BigNumber - exchangeFeeRate: BigNumber - } - > - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber - refunded: BigNumber - numEntriesSettled: BigNumber - } - > - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimAmount: BigNumber - rebateAmount: BigNumber - numEntries: BigNumber - } - > - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)'( - account?: string | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter - ExchangeEntryAppended( - account?: string | null, - src?: null, - amount?: null, - dest?: null, - amountReceived?: null, - exchangeFeeRate?: null, - roundIdForSrc?: null, - roundIdForDest?: null - ): ExchangeEntryAppendedEventFilter - - 'ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)'( - from?: string | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter - ExchangeEntrySettled( - from?: string | null, - src?: null, - amount?: null, - dest?: null, - reclaim?: null, - rebate?: null, - srcRoundIdAtPeriodEnd?: null, - destRoundIdAtPeriodEnd?: null, - exchangeTimestamp?: null - ): ExchangeEntrySettledEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - lastExchangeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - calculateAmountAfterSettlement( - from: string, - currencyKey: BytesLike, - amount: BigNumberish, - refunded: BigNumberish, - overrides?: CallOverrides - ): Promise - - dynamicFeeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - exchange( - exchangeForAddress: string, - from: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - destinationAddress: string, - virtualSynth: boolean, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - arg0: string, - arg1: BytesLike, - arg2: BigNumberish, - arg3: BytesLike, - arg4: string, - arg5: BytesLike, - arg6: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - feeRateForExchange( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - getAmountsForExchange( - sourceAmount: BigNumberish, - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - hasWaitingPeriodOrSettlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isSynthRateInvalid( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - lastExchangeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxSecsLeftInWaitingPeriod( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - settle( - from: string, - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - settlementOwing( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: ExchangerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { amountAfterSettlement: BigNumber }>; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]>; + + waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { feeRate: BigNumber; tooVolatile: boolean } + >; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } + >; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: CallOverrides + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amountReceived: BigNumber; + fee: BigNumber; + exchangeFeeRate: BigNumber; + } + >; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber; + refunded: BigNumber; + numEntriesSettled: BigNumber; + } + >; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimAmount: BigNumber; + rebateAmount: BigNumber; + numEntries: BigNumber; + } + >; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "ExchangeEntryAppended(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256)"( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter; + ExchangeEntryAppended( + account?: string | null, + src?: null, + amount?: null, + dest?: null, + amountReceived?: null, + exchangeFeeRate?: null, + roundIdForSrc?: null, + roundIdForDest?: null + ): ExchangeEntryAppendedEventFilter; + + "ExchangeEntrySettled(address,bytes32,uint256,bytes32,uint256,uint256,uint256,uint256,uint256)"( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter; + ExchangeEntrySettled( + from?: string | null, + src?: null, + amount?: null, + dest?: null, + reclaim?: null, + rebate?: null, + srcRoundIdAtPeriodEnd?: null, + destRoundIdAtPeriodEnd?: null, + exchangeTimestamp?: null + ): ExchangeEntrySettledEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + calculateAmountAfterSettlement( + from: string, + currencyKey: BytesLike, + amount: BigNumberish, + refunded: BigNumberish, + overrides?: CallOverrides + ): Promise; + + dynamicFeeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchange( + exchangeForAddress: string, + from: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + destinationAddress: string, + virtualSynth: boolean, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + arg0: string, + arg1: BytesLike, + arg2: BigNumberish, + arg3: BytesLike, + arg4: string, + arg5: BytesLike, + arg6: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + feeRateForExchange( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAmountsForExchange( + sourceAmount: BigNumberish, + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + hasWaitingPeriodOrSettlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isSynthRateInvalid( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + lastExchangeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxSecsLeftInWaitingPeriod( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + settle( + from: string, + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + settlementOwing( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + tradingRewardsEnabled( + overrides?: CallOverrides + ): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarket.ts b/packages/sdk/src/contracts/types/FuturesMarket.ts index 1b4d602966..dc4be5c5d5 100644 --- a/packages/sdk/src/contracts/types/FuturesMarket.ts +++ b/packages/sdk/src/contracts/types/FuturesMarket.ts @@ -2,1188 +2,1574 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface FuturesMarketInterface extends utils.Interface { - functions: { - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'cancelNextPriceOrder(address)': FunctionFragment - 'closePosition()': FunctionFragment - 'closePositionWithTracking(bytes32)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'executeNextPriceOrder(address)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'liquidatePosition(address)': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'modifyPosition(int256)': FunctionFragment - 'modifyPositionWithTracking(int256,bytes32)': FunctionFragment - 'nextPriceOrders(address)': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256)': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'recomputeFunding()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'submitNextPriceOrder(int256)': FunctionFragment - 'submitNextPriceOrderWithTracking(int256,bytes32)': FunctionFragment - 'transferMargin(int256)': FunctionFragment - 'unrecordedFunding()': FunctionFragment - 'withdrawAllMargin()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'cancelNextPriceOrder' - | 'closePosition' - | 'closePositionWithTracking' - | 'currentFundingRate' - | 'executeNextPriceOrder' - | 'fundingLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isResolverCached' - | 'liquidatePosition' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'modifyPosition' - | 'modifyPositionWithTracking' - | 'nextPriceOrders' - | 'notionalValue' - | 'orderFee' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'rebuildCache' - | 'recomputeFunding' - | 'remainingMargin' - | 'resolver' - | 'resolverAddressesRequired' - | 'submitNextPriceOrder' - | 'submitNextPriceOrderWithTracking' - | 'transferMargin' - | 'unrecordedFunding' - | 'withdrawAllMargin' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string - encodeFunctionData(functionFragment: 'cancelNextPriceOrder', values: [string]): string - encodeFunctionData(functionFragment: 'closePosition', values?: undefined): string - encodeFunctionData(functionFragment: 'closePositionWithTracking', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData(functionFragment: 'executeNextPriceOrder', values: [string]): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidatePosition', values: [string]): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData(functionFragment: 'modifyPosition', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'modifyPositionWithTracking', - values: [BigNumberish, BytesLike] - ): string - encodeFunctionData(functionFragment: 'nextPriceOrders', values: [string]): string - encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string - encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'positions', values: [string]): string - encodeFunctionData(functionFragment: 'postTradeDetails', values: [BigNumberish, string]): string - encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'submitNextPriceOrder', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'submitNextPriceOrderWithTracking', - values: [BigNumberish, BytesLike] - ): string - encodeFunctionData(functionFragment: 'transferMargin', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string - - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelNextPriceOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeNextPriceOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextPriceOrders', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitNextPriceOrder', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitNextPriceOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'FundingRecomputed(int256,uint256,uint256)': EventFragment - 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment - 'MarginTransferred(address,int256)': EventFragment - 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)': EventFragment - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'NextPriceOrderRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'NextPriceOrderSubmitted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment + functions: { + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "cancelNextPriceOrder(address)": FunctionFragment; + "closePosition()": FunctionFragment; + "closePositionWithTracking(bytes32)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "executeNextPriceOrder(address)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "liquidatePosition(address)": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "modifyPosition(int256)": FunctionFragment; + "modifyPositionWithTracking(int256,bytes32)": FunctionFragment; + "nextPriceOrders(address)": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256)": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "recomputeFunding()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "submitNextPriceOrder(int256)": FunctionFragment; + "submitNextPriceOrderWithTracking(int256,bytes32)": FunctionFragment; + "transferMargin(int256)": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + "withdrawAllMargin()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "cancelNextPriceOrder" + | "closePosition" + | "closePositionWithTracking" + | "currentFundingRate" + | "executeNextPriceOrder" + | "fundingLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isResolverCached" + | "liquidatePosition" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "modifyPosition" + | "modifyPositionWithTracking" + | "nextPriceOrders" + | "notionalValue" + | "orderFee" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "rebuildCache" + | "recomputeFunding" + | "remainingMargin" + | "resolver" + | "resolverAddressesRequired" + | "submitNextPriceOrder" + | "submitNextPriceOrderWithTracking" + | "transferMargin" + | "unrecordedFunding" + | "withdrawAllMargin" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelNextPriceOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "closePosition", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "closePositionWithTracking", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "executeNextPriceOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "modifyPosition", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyPositionWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nextPriceOrders", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recomputeFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "submitNextPriceOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitNextPriceOrderWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "transferMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "withdrawAllMargin", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "modifyPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyPositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextPriceOrders", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recomputeFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitNextPriceOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitNextPriceOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawAllMargin", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "FundingRecomputed(int256,uint256,uint256)": EventFragment; + "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; + "MarginTransferred(address,int256)": EventFragment; + "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "PositionLiquidated(uint256,address,address,int256,uint256,uint256)": EventFragment; + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "NextPriceOrderRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "NextPriceOrderSubmitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface FundingRecomputedEventObject { - funding: BigNumber - index: BigNumber - timestamp: BigNumber + funding: BigNumber; + index: BigNumber; + timestamp: BigNumber; } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject -> + [BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +>; -export type FundingRecomputedEventFilter = TypedEventFilter +export type FundingRecomputedEventFilter = + TypedEventFilter; export interface FuturesTrackingEventObject { - trackingCode: string - baseAsset: string - marketKey: string - sizeDelta: BigNumber - fee: BigNumber + trackingCode: string; + baseAsset: string; + marketKey: string; + sizeDelta: BigNumber; + fee: BigNumber; } export type FuturesTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - FuturesTrackingEventObject -> + [string, string, string, BigNumber, BigNumber], + FuturesTrackingEventObject +>; -export type FuturesTrackingEventFilter = TypedEventFilter +export type FuturesTrackingEventFilter = TypedEventFilter; export interface MarginTransferredEventObject { - account: string - marginDelta: BigNumber + account: string; + marginDelta: BigNumber; } -export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> +export type MarginTransferredEvent = TypedEvent< + [string, BigNumber], + MarginTransferredEventObject +>; -export type MarginTransferredEventFilter = TypedEventFilter +export type MarginTransferredEventFilter = + TypedEventFilter; export interface NextPriceOrderRemovedEventObject { - account: string - currentRoundId: BigNumber - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + currentRoundId: BigNumber; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type NextPriceOrderRemovedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderRemovedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderRemovedEventObject +>; -export type NextPriceOrderRemovedEventFilter = TypedEventFilter +export type NextPriceOrderRemovedEventFilter = + TypedEventFilter; export interface NextPriceOrderSubmittedEventObject { - account: string - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type NextPriceOrderSubmittedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber, string], - NextPriceOrderSubmittedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber, string], + NextPriceOrderSubmittedEventObject +>; -export type NextPriceOrderSubmittedEventFilter = TypedEventFilter +export type NextPriceOrderSubmittedEventFilter = + TypedEventFilter; export interface PositionLiquidatedEventObject { - id: BigNumber - account: string - liquidator: string - size: BigNumber - price: BigNumber - fee: BigNumber + id: BigNumber; + account: string; + liquidator: string; + size: BigNumber; + price: BigNumber; + fee: BigNumber; } export type PositionLiquidatedEvent = TypedEvent< - [BigNumber, string, string, BigNumber, BigNumber, BigNumber], - PositionLiquidatedEventObject -> + [BigNumber, string, string, BigNumber, BigNumber, BigNumber], + PositionLiquidatedEventObject +>; -export type PositionLiquidatedEventFilter = TypedEventFilter +export type PositionLiquidatedEventFilter = + TypedEventFilter; export interface PositionModifiedEventObject { - id: BigNumber - account: string - margin: BigNumber - size: BigNumber - tradeSize: BigNumber - lastPrice: BigNumber - fundingIndex: BigNumber - fee: BigNumber + id: BigNumber; + account: string; + margin: BigNumber; + size: BigNumber; + tradeSize: BigNumber; + lastPrice: BigNumber; + fundingIndex: BigNumber; + fee: BigNumber; } export type PositionModifiedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionModifiedEventObject -> - -export type PositionModifiedEventFilter = TypedEventFilter + [ + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionModifiedEventObject +>; + +export type PositionModifiedEventFilter = + TypedEventFilter; export interface FuturesMarket extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: FuturesMarketInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string]> - - canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition(overrides?: Overrides & { from?: string }): Promise - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> - - fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string]> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition(overrides?: Overrides & { from?: string }): Promise - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - - callStatic: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelNextPriceOrder(account: string, overrides?: CallOverrides): Promise - - closePosition(overrides?: CallOverrides): Promise - - closePositionWithTracking(trackingCode: BytesLike, overrides?: CallOverrides): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder(account: string, overrides?: CallOverrides): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition(account: string, overrides?: CallOverrides): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - nextPriceOrders( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, string] & { - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string - } - > - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - arg0: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } - > - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache(overrides?: CallOverrides): Promise - - recomputeFunding(overrides?: CallOverrides): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - transferMargin(marginDelta: BigNumberish, overrides?: CallOverrides): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'FundingRecomputed(int256,uint256,uint256)'( - funding?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - FundingRecomputed(funding?: null, index?: null, timestamp?: null): FundingRecomputedEventFilter - - 'FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)'( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter - FuturesTracking( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): FuturesTrackingEventFilter - - 'MarginTransferred(address,int256)'( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter - MarginTransferred(account?: string | null, marginDelta?: null): MarginTransferredEventFilter - - 'NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)'( - account?: string | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter - NextPriceOrderRemoved( - account?: string | null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderRemovedEventFilter - - 'NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)'( - account?: string | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter - NextPriceOrderSubmitted( - account?: string | null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): NextPriceOrderSubmittedEventFilter - - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256)'( - id?: BigNumberish | null, - account?: string | null, - liquidator?: string | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter - PositionLiquidated( - id?: BigNumberish | null, - account?: string | null, - liquidator?: string | null, - size?: null, - price?: null, - fee?: null - ): PositionLiquidatedEventFilter - - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)'( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter - PositionModified( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null - ): PositionModifiedEventFilter - } - - estimateGas: { - accessibleMargin(account: string, overrides?: CallOverrides): Promise - - accruedFunding(account: string, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition(overrides?: Overrides & { from?: string }): Promise - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice(account: string, overrides?: CallOverrides): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nextPriceOrders(arg0: string, overrides?: CallOverrides): Promise - - notionalValue(account: string, overrides?: CallOverrides): Promise - - orderFee(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - - positions(arg0: string, overrides?: CallOverrides): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise - - profitLoss(account: string, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin(account: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } - - populateTransaction: { - accessibleMargin(account: string, overrides?: CallOverrides): Promise - - accruedFunding(account: string, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition(overrides?: Overrides & { from?: string }): Promise - - closePositionWithTracking( - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - executeNextPriceOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(arg0: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice(account: string, overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: FuturesMarketInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string]>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string]>; + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + closePosition(overrides?: CallOverrides): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, string] & { + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; + } + >; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + } + >; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + rebuildCache(overrides?: CallOverrides): Promise; + + recomputeFunding(overrides?: CallOverrides): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin(overrides?: CallOverrides): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "FundingRecomputed(int256,uint256,uint256)"( + funding?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + FundingRecomputed( + funding?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + + "FuturesTracking(bytes32,bytes32,bytes32,int256,uint256)"( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter; + FuturesTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): FuturesTrackingEventFilter; + + "MarginTransferred(address,int256)"( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + MarginTransferred( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + + "NextPriceOrderRemoved(address,uint256,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter; + NextPriceOrderRemoved( + account?: string | null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderRemovedEventFilter; + + "NextPriceOrderSubmitted(address,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter; + NextPriceOrderSubmitted( + account?: string | null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): NextPriceOrderSubmittedEventFilter; + + "PositionLiquidated(uint256,address,address,int256,uint256,uint256)"( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter; + PositionLiquidated( + id?: BigNumberish | null, + account?: string | null, + liquidator?: string | null, + size?: null, + price?: null, + fee?: null + ): PositionLiquidatedEventFilter; + + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256)"( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter; + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null + ): PositionModifiedEventFilter; + }; + + estimateGas: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - marketKey(overrides?: CallOverrides): Promise + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - marketSize(overrides?: CallOverrides): Promise + positions(arg0: string, overrides?: CallOverrides): Promise; - marketSizes(overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - marketSkew(overrides?: CallOverrides): Promise + profitLoss(account: string, overrides?: CallOverrides): Promise; - modifyPosition( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - modifyPositionWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; - nextPriceOrders(arg0: string, overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - notionalValue(account: string, overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - orderFee(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - positions(arg0: string, overrides?: CallOverrides): Promise + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - postTradeDetails( - sizeDelta: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - profitLoss(account: string, overrides?: CallOverrides): Promise + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + unrecordedFunding(overrides?: CallOverrides): Promise; - recomputeFunding(overrides?: Overrides & { from?: string }): Promise + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; - remainingMargin(account: string, overrides?: CallOverrides): Promise + populateTransaction: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - submitNextPriceOrder( - sizeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + baseAsset(overrides?: CallOverrides): Promise; - submitNextPriceOrderWithTracking( - sizeDelta: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + cancelNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise; + + executeNextPriceOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise + fundingSequence( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nextPriceOrders( + arg0: string, + overrides?: CallOverrides + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions( + arg0: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + submitNextPriceOrder( + sizeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitNextPriceOrderWithTracking( + sizeDelta: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarketData.ts b/packages/sdk/src/contracts/types/FuturesMarketData.ts index e64a14b500..62511c5ad3 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketData.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketData.ts @@ -2,535 +2,642 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace FuturesMarketData { - export type FeeRatesStruct = { - takerFee: BigNumberish - makerFee: BigNumberish - takerFeeNextPrice: BigNumberish - makerFeeNextPrice: BigNumberish - } - - export type FeeRatesStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - } - - export type MarketSummaryStruct = { - market: string - asset: BytesLike - key: BytesLike - maxLeverage: BigNumberish - price: BigNumberish - marketSize: BigNumberish - marketSkew: BigNumberish - marketDebt: BigNumberish - currentFundingRate: BigNumberish - feeRates: FuturesMarketData.FeeRatesStruct - } - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - FuturesMarketData.FeeRatesStructOutput - ] & { - market: string - asset: string - key: string - maxLeverage: BigNumber - price: BigNumber - marketSize: BigNumber - marketSkew: BigNumber - marketDebt: BigNumber - currentFundingRate: BigNumber - feeRates: FuturesMarketData.FeeRatesStructOutput - } - - export type FuturesGlobalsStruct = { - minInitialMargin: BigNumberish - liquidationFeeRatio: BigNumberish - liquidationBufferRatio: BigNumberish - minKeeperFee: BigNumberish - } - - export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - minInitialMargin: BigNumber - liquidationFeeRatio: BigNumber - liquidationBufferRatio: BigNumber - minKeeperFee: BigNumber - } - - export type MarketLimitsStruct = { - maxLeverage: BigNumberish - maxMarketValueUSD: BigNumberish - } - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - } - - export type FundingParametersStruct = { - maxFundingRate: BigNumberish - skewScaleUSD: BigNumberish - } - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } - - export type SidesStruct = { long: BigNumberish; short: BigNumberish } - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber - short: BigNumber - } - - export type MarketSizeDetailsStruct = { - marketSize: BigNumberish - sides: FuturesMarketData.SidesStruct - marketDebt: BigNumberish - marketSkew: BigNumberish - } - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - FuturesMarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber - sides: FuturesMarketData.SidesStructOutput - marketDebt: BigNumber - marketSkew: BigNumber - } - - export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean } - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber - invalid: boolean - } - - export type MarketDataStruct = { - market: string - baseAsset: BytesLike - marketKey: BytesLike - feeRates: FuturesMarketData.FeeRatesStruct - limits: FuturesMarketData.MarketLimitsStruct - fundingParameters: FuturesMarketData.FundingParametersStruct - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct - priceDetails: FuturesMarketData.PriceDetailsStruct - } - - export type MarketDataStructOutput = [ - string, - string, - string, - FuturesMarketData.FeeRatesStructOutput, - FuturesMarketData.MarketLimitsStructOutput, - FuturesMarketData.FundingParametersStructOutput, - FuturesMarketData.MarketSizeDetailsStructOutput, - FuturesMarketData.PriceDetailsStructOutput - ] & { - market: string - baseAsset: string - marketKey: string - feeRates: FuturesMarketData.FeeRatesStructOutput - limits: FuturesMarketData.MarketLimitsStructOutput - fundingParameters: FuturesMarketData.FundingParametersStructOutput - marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput - priceDetails: FuturesMarketData.PriceDetailsStructOutput - } - - export type PositionDataStruct = { - position: IFuturesMarketBaseTypes.PositionStruct - notionalValue: BigNumberish - profitLoss: BigNumberish - accruedFunding: BigNumberish - remainingMargin: BigNumberish - accessibleMargin: BigNumberish - liquidationPrice: BigNumberish - canLiquidatePosition: boolean - } - - export type PositionDataStructOutput = [ - IFuturesMarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IFuturesMarketBaseTypes.PositionStructOutput - notionalValue: BigNumber - profitLoss: BigNumber - accruedFunding: BigNumber - remainingMargin: BigNumber - accessibleMargin: BigNumber - liquidationPrice: BigNumber - canLiquidatePosition: boolean - } + export type FeeRatesStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeNextPrice: BigNumberish; + makerFeeNextPrice: BigNumberish; + }; + + export type FeeRatesStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + }; + + export type MarketSummaryStruct = { + market: string; + asset: BytesLike; + key: BytesLike; + maxLeverage: BigNumberish; + price: BigNumberish; + marketSize: BigNumberish; + marketSkew: BigNumberish; + marketDebt: BigNumberish; + currentFundingRate: BigNumberish; + feeRates: FuturesMarketData.FeeRatesStruct; + }; + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + FuturesMarketData.FeeRatesStructOutput + ] & { + market: string; + asset: string; + key: string; + maxLeverage: BigNumber; + price: BigNumber; + marketSize: BigNumber; + marketSkew: BigNumber; + marketDebt: BigNumber; + currentFundingRate: BigNumber; + feeRates: FuturesMarketData.FeeRatesStructOutput; + }; + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish; + liquidationFeeRatio: BigNumberish; + liquidationBufferRatio: BigNumberish; + minKeeperFee: BigNumberish; + }; + + export type FuturesGlobalsStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + minInitialMargin: BigNumber; + liquidationFeeRatio: BigNumber; + liquidationBufferRatio: BigNumber; + minKeeperFee: BigNumber; + }; + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish; + maxMarketValueUSD: BigNumberish; + }; + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + }; + + export type FundingParametersStruct = { + maxFundingRate: BigNumberish; + skewScaleUSD: BigNumberish; + }; + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + }; + + export type SidesStruct = { long: BigNumberish; short: BigNumberish }; + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber; + short: BigNumber; + }; + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish; + sides: FuturesMarketData.SidesStruct; + marketDebt: BigNumberish; + marketSkew: BigNumberish; + }; + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + FuturesMarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber; + sides: FuturesMarketData.SidesStructOutput; + marketDebt: BigNumber; + marketSkew: BigNumber; + }; + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber; + invalid: boolean; + }; + + export type MarketDataStruct = { + market: string; + baseAsset: BytesLike; + marketKey: BytesLike; + feeRates: FuturesMarketData.FeeRatesStruct; + limits: FuturesMarketData.MarketLimitsStruct; + fundingParameters: FuturesMarketData.FundingParametersStruct; + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStruct; + priceDetails: FuturesMarketData.PriceDetailsStruct; + }; + + export type MarketDataStructOutput = [ + string, + string, + string, + FuturesMarketData.FeeRatesStructOutput, + FuturesMarketData.MarketLimitsStructOutput, + FuturesMarketData.FundingParametersStructOutput, + FuturesMarketData.MarketSizeDetailsStructOutput, + FuturesMarketData.PriceDetailsStructOutput + ] & { + market: string; + baseAsset: string; + marketKey: string; + feeRates: FuturesMarketData.FeeRatesStructOutput; + limits: FuturesMarketData.MarketLimitsStructOutput; + fundingParameters: FuturesMarketData.FundingParametersStructOutput; + marketSizeDetails: FuturesMarketData.MarketSizeDetailsStructOutput; + priceDetails: FuturesMarketData.PriceDetailsStructOutput; + }; + + export type PositionDataStruct = { + position: IFuturesMarketBaseTypes.PositionStruct; + notionalValue: BigNumberish; + profitLoss: BigNumberish; + accruedFunding: BigNumberish; + remainingMargin: BigNumberish; + accessibleMargin: BigNumberish; + liquidationPrice: BigNumberish; + canLiquidatePosition: boolean; + }; + + export type PositionDataStructOutput = [ + IFuturesMarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IFuturesMarketBaseTypes.PositionStructOutput; + notionalValue: BigNumber; + profitLoss: BigNumber; + accruedFunding: BigNumber; + remainingMargin: BigNumber; + accessibleMargin: BigNumber; + liquidationPrice: BigNumber; + canLiquidatePosition: boolean; + }; } export declare namespace IFuturesMarketSettings { - export type ParametersStruct = { - takerFee: BigNumberish - makerFee: BigNumberish - takerFeeNextPrice: BigNumberish - makerFeeNextPrice: BigNumberish - nextPriceConfirmWindow: BigNumberish - maxLeverage: BigNumberish - maxMarketValueUSD: BigNumberish - maxFundingRate: BigNumberish - skewScaleUSD: BigNumberish - } - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - nextPriceConfirmWindow: BigNumber - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } + export type ParametersStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeNextPrice: BigNumberish; + makerFeeNextPrice: BigNumberish; + nextPriceConfirmWindow: BigNumberish; + maxLeverage: BigNumberish; + maxMarketValueUSD: BigNumberish; + maxFundingRate: BigNumberish; + skewScaleUSD: BigNumberish; + }; + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + nextPriceConfirmWindow: BigNumber; + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + }; } export declare namespace IFuturesMarketBaseTypes { - export type PositionStruct = { - id: BigNumberish - lastFundingIndex: BigNumberish - margin: BigNumberish - lastPrice: BigNumberish - size: BigNumberish - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface FuturesMarketDataInterface extends utils.Interface { - functions: { - 'allMarketSummaries()': FunctionFragment - 'globals()': FunctionFragment - 'marketDetails(address)': FunctionFragment - 'marketDetailsForKey(bytes32)': FunctionFragment - 'marketSummaries(address[])': FunctionFragment - 'marketSummariesForKeys(bytes32[])': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'positionDetails(address,address)': FunctionFragment - 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment - 'resolverProxy()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'allMarketSummaries' - | 'globals' - | 'marketDetails' - | 'marketDetailsForKey' - | 'marketSummaries' - | 'marketSummariesForKeys' - | 'parameters' - | 'positionDetails' - | 'positionDetailsForMarketKey' - | 'resolverProxy' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'globals', values?: undefined): string - encodeFunctionData(functionFragment: 'marketDetails', values: [string]): string - encodeFunctionData(functionFragment: 'marketDetailsForKey', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'marketSummaries', values: [string[]]): string - encodeFunctionData(functionFragment: 'marketSummariesForKeys', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'positionDetails', values: [string, string]): string - encodeFunctionData( - functionFragment: 'positionDetailsForMarketKey', - values: [BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string - - decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result - - events: {} + functions: { + "allMarketSummaries()": FunctionFragment; + "globals()": FunctionFragment; + "marketDetails(address)": FunctionFragment; + "marketDetailsForKey(bytes32)": FunctionFragment; + "marketSummaries(address[])": FunctionFragment; + "marketSummariesForKeys(bytes32[])": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "positionDetails(address,address)": FunctionFragment; + "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; + "resolverProxy()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "allMarketSummaries" + | "globals" + | "marketDetails" + | "marketDetailsForKey" + | "marketSummaries" + | "marketSummariesForKeys" + | "parameters" + | "positionDetails" + | "positionDetailsForMarketKey" + | "resolverProxy" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "allMarketSummaries", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "globals", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketDetails", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDetailsForKey", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "marketSummaries", + values: [string[]] + ): string; + encodeFunctionData( + functionFragment: "marketSummariesForKeys", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "positionDetails", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "positionDetailsForMarketKey", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "resolverProxy", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "allMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketDetailsForKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummariesForKeys", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "positionDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "positionDetailsForMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resolverProxy", + data: BytesLike + ): Result; + + events: {}; } export interface FuturesMarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: FuturesMarketDataInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - globals(overrides?: CallOverrides): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]> - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]> - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketDataStructOutput]> - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]> - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[IFuturesMarketSettings.ParametersStructOutput]> - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]> - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[FuturesMarketData.PositionDataStructOutput]> - - resolverProxy(overrides?: CallOverrides): Promise<[string]> - } - - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - filters: {} - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: string, overrides?: CallOverrides): Promise - - marketDetailsForKey(marketKey: BytesLike, overrides?: CallOverrides): Promise - - marketSummaries(markets: string[], overrides?: CallOverrides): Promise - - marketSummariesForKeys(marketKeys: BytesLike[], overrides?: CallOverrides): Promise - - parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise - - positionDetails(market: string, account: string, overrides?: CallOverrides): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - populateTransaction: { - allMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: string, overrides?: CallOverrides): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries(markets: string[], overrides?: CallOverrides): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: FuturesMarketDataInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + globals( + overrides?: CallOverrides + ): Promise<[FuturesMarketData.FuturesGlobalsStructOutput]>; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]>; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketDataStructOutput]>; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[FuturesMarketData.MarketSummaryStructOutput[]]>; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IFuturesMarketSettings.ParametersStructOutput]>; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]>; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[FuturesMarketData.PositionDataStructOutput]>; + + resolverProxy(overrides?: CallOverrides): Promise<[string]>; + }; + + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + filters: {}; + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts index 2a7686c976..64463fd873 100644 --- a/packages/sdk/src/contracts/types/FuturesMarketSettings.ts +++ b/packages/sdk/src/contracts/types/FuturesMarketSettings.ts @@ -2,1108 +2,1489 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface FuturesMarketSettingsInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'liquidationBufferRatio()': FunctionFragment - 'liquidationFeeRatio()': FunctionFragment - 'makerFee(bytes32)': FunctionFragment - 'makerFeeNextPrice(bytes32)': FunctionFragment - 'maxFundingRate(bytes32)': FunctionFragment - 'maxLeverage(bytes32)': FunctionFragment - 'maxMarketValueUSD(bytes32)': FunctionFragment - 'minInitialMargin()': FunctionFragment - 'minKeeperFee()': FunctionFragment - 'nextPriceConfirmWindow(bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'setLiquidationBufferRatio(uint256)': FunctionFragment - 'setLiquidationFeeRatio(uint256)': FunctionFragment - 'setMakerFee(bytes32,uint256)': FunctionFragment - 'setMakerFeeNextPrice(bytes32,uint256)': FunctionFragment - 'setMaxFundingRate(bytes32,uint256)': FunctionFragment - 'setMaxLeverage(bytes32,uint256)': FunctionFragment - 'setMaxMarketValueUSD(bytes32,uint256)': FunctionFragment - 'setMinInitialMargin(uint256)': FunctionFragment - 'setMinKeeperFee(uint256)': FunctionFragment - 'setNextPriceConfirmWindow(bytes32,uint256)': FunctionFragment - 'setParameters(bytes32,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)': FunctionFragment - 'setSkewScaleUSD(bytes32,uint256)': FunctionFragment - 'setTakerFee(bytes32,uint256)': FunctionFragment - 'setTakerFeeNextPrice(bytes32,uint256)': FunctionFragment - 'skewScaleUSD(bytes32)': FunctionFragment - 'takerFee(bytes32)': FunctionFragment - 'takerFeeNextPrice(bytes32)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'isResolverCached' - | 'liquidationBufferRatio' - | 'liquidationFeeRatio' - | 'makerFee' - | 'makerFeeNextPrice' - | 'maxFundingRate' - | 'maxLeverage' - | 'maxMarketValueUSD' - | 'minInitialMargin' - | 'minKeeperFee' - | 'nextPriceConfirmWindow' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'parameters' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'setLiquidationBufferRatio' - | 'setLiquidationFeeRatio' - | 'setMakerFee' - | 'setMakerFeeNextPrice' - | 'setMaxFundingRate' - | 'setMaxLeverage' - | 'setMaxMarketValueUSD' - | 'setMinInitialMargin' - | 'setMinKeeperFee' - | 'setNextPriceConfirmWindow' - | 'setParameters' - | 'setSkewScaleUSD' - | 'setTakerFee' - | 'setTakerFeeNextPrice' - | 'skewScaleUSD' - | 'takerFee' - | 'takerFeeNextPrice' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationBufferRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationFeeRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'makerFee', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'makerFeeNextPrice', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxFundingRate', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxLeverage', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxMarketValueUSD', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'minInitialMargin', values?: undefined): string - encodeFunctionData(functionFragment: 'minKeeperFee', values?: undefined): string - encodeFunctionData(functionFragment: 'nextPriceConfirmWindow', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'setLiquidationBufferRatio', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setLiquidationFeeRatio', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setMakerFee', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setMakerFeeNextPrice', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxFundingRate', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMaxLeverage', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setMaxMarketValueUSD', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMinInitialMargin', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setMinKeeperFee', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setNextPriceConfirmWindow', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setParameters', - values: [ - BytesLike, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish, - BigNumberish - ] - ): string - encodeFunctionData(functionFragment: 'setSkewScaleUSD', values: [BytesLike, BigNumberish]): string - encodeFunctionData(functionFragment: 'setTakerFee', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setTakerFeeNextPrice', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'skewScaleUSD', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'takerFee', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'takerFeeNextPrice', values: [BytesLike]): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationBufferRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFeeRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'makerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'makerFeeNextPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxLeverage', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxMarketValueUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minInitialMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextPriceConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationBufferRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationFeeRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMakerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMakerFeeNextPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxLeverage', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxMarketValueUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinInitialMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setNextPriceConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSkewScaleUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTakerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTakerFeeNextPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'skewScaleUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'takerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'takerFeeNextPrice', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'LiquidationBufferRatioUpdated(uint256)': EventFragment - 'LiquidationFeeRatioUpdated(uint256)': EventFragment - 'MinInitialMarginUpdated(uint256)': EventFragment - 'MinKeeperFeeUpdated(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ParameterUpdated(bytes32,bytes32,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationBufferRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationFeeRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinInitialMarginUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinKeeperFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ParameterUpdated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "liquidationBufferRatio()": FunctionFragment; + "liquidationFeeRatio()": FunctionFragment; + "makerFee(bytes32)": FunctionFragment; + "makerFeeNextPrice(bytes32)": FunctionFragment; + "maxFundingRate(bytes32)": FunctionFragment; + "maxLeverage(bytes32)": FunctionFragment; + "maxMarketValueUSD(bytes32)": FunctionFragment; + "minInitialMargin()": FunctionFragment; + "minKeeperFee()": FunctionFragment; + "nextPriceConfirmWindow(bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "setLiquidationBufferRatio(uint256)": FunctionFragment; + "setLiquidationFeeRatio(uint256)": FunctionFragment; + "setMakerFee(bytes32,uint256)": FunctionFragment; + "setMakerFeeNextPrice(bytes32,uint256)": FunctionFragment; + "setMaxFundingRate(bytes32,uint256)": FunctionFragment; + "setMaxLeverage(bytes32,uint256)": FunctionFragment; + "setMaxMarketValueUSD(bytes32,uint256)": FunctionFragment; + "setMinInitialMargin(uint256)": FunctionFragment; + "setMinKeeperFee(uint256)": FunctionFragment; + "setNextPriceConfirmWindow(bytes32,uint256)": FunctionFragment; + "setParameters(bytes32,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)": FunctionFragment; + "setSkewScaleUSD(bytes32,uint256)": FunctionFragment; + "setTakerFee(bytes32,uint256)": FunctionFragment; + "setTakerFeeNextPrice(bytes32,uint256)": FunctionFragment; + "skewScaleUSD(bytes32)": FunctionFragment; + "takerFee(bytes32)": FunctionFragment; + "takerFeeNextPrice(bytes32)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "isResolverCached" + | "liquidationBufferRatio" + | "liquidationFeeRatio" + | "makerFee" + | "makerFeeNextPrice" + | "maxFundingRate" + | "maxLeverage" + | "maxMarketValueUSD" + | "minInitialMargin" + | "minKeeperFee" + | "nextPriceConfirmWindow" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "parameters" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "setLiquidationBufferRatio" + | "setLiquidationFeeRatio" + | "setMakerFee" + | "setMakerFeeNextPrice" + | "setMaxFundingRate" + | "setMaxLeverage" + | "setMaxMarketValueUSD" + | "setMinInitialMargin" + | "setMinKeeperFee" + | "setNextPriceConfirmWindow" + | "setParameters" + | "setSkewScaleUSD" + | "setTakerFee" + | "setTakerFeeNextPrice" + | "skewScaleUSD" + | "takerFee" + | "takerFeeNextPrice" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationBufferRatio", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationFeeRatio", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "makerFee", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "makerFeeNextPrice", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxFundingRate", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxLeverage", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxMarketValueUSD", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "minInitialMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "minKeeperFee", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nextPriceConfirmWindow", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setLiquidationBufferRatio", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationFeeRatio", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMakerFee", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMakerFeeNextPrice", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxFundingRate", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxLeverage", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxMarketValueUSD", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinInitialMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinKeeperFee", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setNextPriceConfirmWindow", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setParameters", + values: [ + BytesLike, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish + ] + ): string; + encodeFunctionData( + functionFragment: "setSkewScaleUSD", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTakerFee", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTakerFeeNextPrice", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "skewScaleUSD", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "takerFee", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "takerFeeNextPrice", + values: [BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationBufferRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFeeRatio", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "makerFee", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "makerFeeNextPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxLeverage", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxMarketValueUSD", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minInitialMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextPriceConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationBufferRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationFeeRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMakerFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMakerFeeNextPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxLeverage", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxMarketValueUSD", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMinInitialMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMinKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setNextPriceConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSkewScaleUSD", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTakerFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTakerFeeNextPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "skewScaleUSD", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "takerFee", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "takerFeeNextPrice", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "LiquidationBufferRatioUpdated(uint256)": EventFragment; + "LiquidationFeeRatioUpdated(uint256)": EventFragment; + "MinInitialMarginUpdated(uint256)": EventFragment; + "MinKeeperFeeUpdated(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ParameterUpdated(bytes32,bytes32,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "LiquidationBufferRatioUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationFeeRatioUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinInitialMarginUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinKeeperFeeUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ParameterUpdated"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface LiquidationBufferRatioUpdatedEventObject { - bps: BigNumber + bps: BigNumber; } export type LiquidationBufferRatioUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationBufferRatioUpdatedEventObject -> + [BigNumber], + LiquidationBufferRatioUpdatedEventObject +>; export type LiquidationBufferRatioUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface LiquidationFeeRatioUpdatedEventObject { - bps: BigNumber + bps: BigNumber; } export type LiquidationFeeRatioUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationFeeRatioUpdatedEventObject -> + [BigNumber], + LiquidationFeeRatioUpdatedEventObject +>; export type LiquidationFeeRatioUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface MinInitialMarginUpdatedEventObject { - minMargin: BigNumber + minMargin: BigNumber; } export type MinInitialMarginUpdatedEvent = TypedEvent< - [BigNumber], - MinInitialMarginUpdatedEventObject -> + [BigNumber], + MinInitialMarginUpdatedEventObject +>; -export type MinInitialMarginUpdatedEventFilter = TypedEventFilter +export type MinInitialMarginUpdatedEventFilter = + TypedEventFilter; export interface MinKeeperFeeUpdatedEventObject { - sUSD: BigNumber + sUSD: BigNumber; } -export type MinKeeperFeeUpdatedEvent = TypedEvent<[BigNumber], MinKeeperFeeUpdatedEventObject> +export type MinKeeperFeeUpdatedEvent = TypedEvent< + [BigNumber], + MinKeeperFeeUpdatedEventObject +>; -export type MinKeeperFeeUpdatedEventFilter = TypedEventFilter +export type MinKeeperFeeUpdatedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ParameterUpdatedEventObject { - marketKey: string - parameter: string - value: BigNumber + marketKey: string; + parameter: string; + value: BigNumber; } export type ParameterUpdatedEvent = TypedEvent< - [string, string, BigNumber], - ParameterUpdatedEventObject -> + [string, string, BigNumber], + ParameterUpdatedEventObject +>; -export type ParameterUpdatedEventFilter = TypedEventFilter +export type ParameterUpdatedEventFilter = + TypedEventFilter; export interface FuturesMarketSettings extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: FuturesMarketSettingsInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - liquidationBufferRatio(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]> - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]> - - minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - nextPriceConfirmWindow: BigNumber - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } - > - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - setLiquidationBufferRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeNextPrice( - _marketKey: BytesLike, - _makerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingRate( - _marketKey: BytesLike, - _maxFundingRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValueUSD( - _marketKey: BytesLike, - _maxMarketValueUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _takerFee: BigNumberish, - _makerFee: BigNumberish, - _takerFeeNextPrice: BigNumberish, - _makerFeeNextPrice: BigNumberish, - _nextPriceConfirmWindow: BigNumberish, - _maxLeverage: BigNumberish, - _maxMarketValueUSD: BigNumberish, - _maxFundingRate: BigNumberish, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScaleUSD( - _marketKey: BytesLike, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeNextPrice( - _marketKey: BytesLike, - _takerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationBufferRatio(overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - nextPriceConfirmWindow: BigNumber - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } - > - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setLiquidationBufferRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeNextPrice( - _marketKey: BytesLike, - _makerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingRate( - _marketKey: BytesLike, - _maxFundingRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValueUSD( - _marketKey: BytesLike, - _maxMarketValueUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _takerFee: BigNumberish, - _makerFee: BigNumberish, - _takerFeeNextPrice: BigNumberish, - _makerFeeNextPrice: BigNumberish, - _nextPriceConfirmWindow: BigNumberish, - _maxLeverage: BigNumberish, - _maxMarketValueUSD: BigNumberish, - _maxFundingRate: BigNumberish, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScaleUSD( - _marketKey: BytesLike, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeNextPrice( - _marketKey: BytesLike, - _takerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationBufferRatio(overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeNextPrice: BigNumber - makerFeeNextPrice: BigNumber - nextPriceConfirmWindow: BigNumber - maxLeverage: BigNumber - maxMarketValueUSD: BigNumber - maxFundingRate: BigNumber - skewScaleUSD: BigNumber - } - > - - rebuildCache(overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setLiquidationBufferRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise - - setLiquidationFeeRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMakerFeeNextPrice( - _marketKey: BytesLike, - _makerFeeNextPrice: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxFundingRate( - _marketKey: BytesLike, - _maxFundingRate: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxMarketValueUSD( - _marketKey: BytesLike, - _maxMarketValueUSD: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMinInitialMargin(_minMargin: BigNumberish, overrides?: CallOverrides): Promise - - setMinKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: CallOverrides - ): Promise - - setParameters( - _marketKey: BytesLike, - _takerFee: BigNumberish, - _makerFee: BigNumberish, - _takerFeeNextPrice: BigNumberish, - _makerFeeNextPrice: BigNumberish, - _nextPriceConfirmWindow: BigNumberish, - _maxLeverage: BigNumberish, - _maxMarketValueUSD: BigNumberish, - _maxFundingRate: BigNumberish, - _skewScaleUSD: BigNumberish, - overrides?: CallOverrides - ): Promise - - setSkewScaleUSD( - _marketKey: BytesLike, - _skewScaleUSD: BigNumberish, - overrides?: CallOverrides - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: CallOverrides - ): Promise - - setTakerFeeNextPrice( - _marketKey: BytesLike, - _takerFeeNextPrice: BigNumberish, - overrides?: CallOverrides - ): Promise - - skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'LiquidationBufferRatioUpdated(uint256)'(bps?: null): LiquidationBufferRatioUpdatedEventFilter - LiquidationBufferRatioUpdated(bps?: null): LiquidationBufferRatioUpdatedEventFilter - - 'LiquidationFeeRatioUpdated(uint256)'(bps?: null): LiquidationFeeRatioUpdatedEventFilter - LiquidationFeeRatioUpdated(bps?: null): LiquidationFeeRatioUpdatedEventFilter - - 'MinInitialMarginUpdated(uint256)'(minMargin?: null): MinInitialMarginUpdatedEventFilter - MinInitialMarginUpdated(minMargin?: null): MinInitialMarginUpdatedEventFilter - - 'MinKeeperFeeUpdated(uint256)'(sUSD?: null): MinKeeperFeeUpdatedEventFilter - MinKeeperFeeUpdated(sUSD?: null): MinKeeperFeeUpdatedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'ParameterUpdated(bytes32,bytes32,uint256)'( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedEventFilter - ParameterUpdated( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationBufferRatio(overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValueUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setLiquidationBufferRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeNextPrice( - _marketKey: BytesLike, - _makerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingRate( - _marketKey: BytesLike, - _maxFundingRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValueUSD( - _marketKey: BytesLike, - _maxMarketValueUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _takerFee: BigNumberish, - _makerFee: BigNumberish, - _takerFeeNextPrice: BigNumberish, - _makerFeeNextPrice: BigNumberish, - _nextPriceConfirmWindow: BigNumberish, - _maxLeverage: BigNumberish, - _maxMarketValueUSD: BigNumberish, - _maxFundingRate: BigNumberish, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScaleUSD( - _marketKey: BytesLike, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeNextPrice( - _marketKey: BytesLike, - _takerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeNextPrice(_marketKey: BytesLike, overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationBufferRatio(overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeNextPrice( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxFundingRate(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValueUSD( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setLiquidationBufferRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeNextPrice( - _marketKey: BytesLike, - _makerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingRate( - _marketKey: BytesLike, - _maxFundingRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValueUSD( - _marketKey: BytesLike, - _maxMarketValueUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _takerFee: BigNumberish, - _makerFee: BigNumberish, - _takerFeeNextPrice: BigNumberish, - _makerFeeNextPrice: BigNumberish, - _nextPriceConfirmWindow: BigNumberish, - _maxLeverage: BigNumberish, - _maxMarketValueUSD: BigNumberish, - _maxFundingRate: BigNumberish, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScaleUSD( - _marketKey: BytesLike, - _skewScaleUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeNextPrice( - _marketKey: BytesLike, - _takerFeeNextPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScaleUSD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeNextPrice( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: FuturesMarketSettingsInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + liquidationBufferRatio(overrides?: CallOverrides): Promise<[BigNumber]>; + + liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]>; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + makerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxFundingRate( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxMarketValueUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]>; + + minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]>; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + nextPriceConfirmWindow: BigNumber; + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + } + >; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + setLiquidationBufferRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeNextPrice( + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingRate( + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValueUSD( + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScaleUSD( + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeNextPrice( + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScaleUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + takerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationBufferRatio(overrides?: CallOverrides): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingRate( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValueUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + nextPriceConfirmWindow: BigNumber; + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + } + >; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setLiquidationBufferRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeNextPrice( + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingRate( + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValueUSD( + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScaleUSD( + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeNextPrice( + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScaleUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationBufferRatio(overrides?: CallOverrides): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingRate( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValueUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeNextPrice: BigNumber; + makerFeeNextPrice: BigNumber; + nextPriceConfirmWindow: BigNumber; + maxLeverage: BigNumber; + maxMarketValueUSD: BigNumber; + maxFundingRate: BigNumber; + skewScaleUSD: BigNumber; + } + >; + + rebuildCache(overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setLiquidationBufferRatio( + _ratio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMakerFeeNextPrice( + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxFundingRate( + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxMarketValueUSD( + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setParameters( + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSkewScaleUSD( + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTakerFeeNextPrice( + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + skewScaleUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "LiquidationBufferRatioUpdated(uint256)"( + bps?: null + ): LiquidationBufferRatioUpdatedEventFilter; + LiquidationBufferRatioUpdated( + bps?: null + ): LiquidationBufferRatioUpdatedEventFilter; + + "LiquidationFeeRatioUpdated(uint256)"( + bps?: null + ): LiquidationFeeRatioUpdatedEventFilter; + LiquidationFeeRatioUpdated( + bps?: null + ): LiquidationFeeRatioUpdatedEventFilter; + + "MinInitialMarginUpdated(uint256)"( + minMargin?: null + ): MinInitialMarginUpdatedEventFilter; + MinInitialMarginUpdated( + minMargin?: null + ): MinInitialMarginUpdatedEventFilter; + + "MinKeeperFeeUpdated(uint256)"(sUSD?: null): MinKeeperFeeUpdatedEventFilter; + MinKeeperFeeUpdated(sUSD?: null): MinKeeperFeeUpdatedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "ParameterUpdated(bytes32,bytes32,uint256)"( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedEventFilter; + ParameterUpdated( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationBufferRatio(overrides?: CallOverrides): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingRate( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValueUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setLiquidationBufferRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeNextPrice( + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingRate( + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValueUSD( + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScaleUSD( + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeNextPrice( + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScaleUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationBufferRatio( + overrides?: CallOverrides + ): Promise; + + liquidationFeeRatio( + overrides?: CallOverrides + ): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingRate( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValueUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + setLiquidationBufferRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeNextPrice( + _marketKey: BytesLike, + _makerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingRate( + _marketKey: BytesLike, + _maxFundingRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValueUSD( + _marketKey: BytesLike, + _maxMarketValueUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _takerFee: BigNumberish, + _makerFee: BigNumberish, + _takerFeeNextPrice: BigNumberish, + _makerFeeNextPrice: BigNumberish, + _nextPriceConfirmWindow: BigNumberish, + _maxLeverage: BigNumberish, + _maxMarketValueUSD: BigNumberish, + _maxFundingRate: BigNumberish, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScaleUSD( + _marketKey: BytesLike, + _skewScaleUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeNextPrice( + _marketKey: BytesLike, + _takerFeeNextPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScaleUSD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeNextPrice( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts index ce22700ddf..dd6e4bcad3 100644 --- a/packages/sdk/src/contracts/types/KwentaArrakisVault.ts +++ b/packages/sdk/src/contracts/types/KwentaArrakisVault.ts @@ -2,1420 +2,1715 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface KwentaArrakisVaultInterface extends utils.Interface { - functions: { - 'GELATO()': FunctionFragment - 'RESTRICTED_MINT_ENABLED()': FunctionFragment - 'allowance(address,address)': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'arrakisBalance0()': FunctionFragment - 'arrakisBalance1()': FunctionFragment - 'arrakisFeeBPS()': FunctionFragment - 'arrakisTreasury()': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'burn(uint256,address)': FunctionFragment - 'decimals()': FunctionFragment - 'decreaseAllowance(address,uint256)': FunctionFragment - 'executiveRebalance(int24,int24,uint160,uint256,bool)': FunctionFragment - 'gelatoRebalanceBPS()': FunctionFragment - 'gelatoSlippageBPS()': FunctionFragment - 'gelatoSlippageInterval()': FunctionFragment - 'getMintAmounts(uint256,uint256)': FunctionFragment - 'getPositionID()': FunctionFragment - 'getUnderlyingBalances()': FunctionFragment - 'getUnderlyingBalancesAtPrice(uint160)': FunctionFragment - 'increaseAllowance(address,uint256)': FunctionFragment - 'initialize(string,string,address,uint16,int24,int24,address)': FunctionFragment - 'lowerTick()': FunctionFragment - 'manager()': FunctionFragment - 'managerBalance0()': FunctionFragment - 'managerBalance1()': FunctionFragment - 'managerFeeBPS()': FunctionFragment - 'managerTreasury()': FunctionFragment - 'mint(uint256,address)': FunctionFragment - 'name()': FunctionFragment - 'pool()': FunctionFragment - 'rebalance(uint160,uint256,bool,uint256,address)': FunctionFragment - 'renounceOwnership()': FunctionFragment - 'restrictedMintToggle()': FunctionFragment - 'symbol()': FunctionFragment - 'toggleRestrictMint()': FunctionFragment - 'token0()': FunctionFragment - 'token1()': FunctionFragment - 'totalSupply()': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'transferOwnership(address)': FunctionFragment - 'uniswapV3MintCallback(uint256,uint256,bytes)': FunctionFragment - 'uniswapV3SwapCallback(int256,int256,bytes)': FunctionFragment - 'updateManagerParams(int16,address,int16,int16,int32)': FunctionFragment - 'upperTick()': FunctionFragment - 'version()': FunctionFragment - 'withdrawArrakisBalance()': FunctionFragment - 'withdrawManagerBalance()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'GELATO' - | 'RESTRICTED_MINT_ENABLED' - | 'allowance' - | 'approve' - | 'arrakisBalance0' - | 'arrakisBalance1' - | 'arrakisFeeBPS' - | 'arrakisTreasury' - | 'balanceOf' - | 'burn' - | 'decimals' - | 'decreaseAllowance' - | 'executiveRebalance' - | 'gelatoRebalanceBPS' - | 'gelatoSlippageBPS' - | 'gelatoSlippageInterval' - | 'getMintAmounts' - | 'getPositionID' - | 'getUnderlyingBalances' - | 'getUnderlyingBalancesAtPrice' - | 'increaseAllowance' - | 'initialize' - | 'lowerTick' - | 'manager' - | 'managerBalance0' - | 'managerBalance1' - | 'managerFeeBPS' - | 'managerTreasury' - | 'mint' - | 'name' - | 'pool' - | 'rebalance' - | 'renounceOwnership' - | 'restrictedMintToggle' - | 'symbol' - | 'toggleRestrictMint' - | 'token0' - | 'token1' - | 'totalSupply' - | 'transfer' - | 'transferFrom' - | 'transferOwnership' - | 'uniswapV3MintCallback' - | 'uniswapV3SwapCallback' - | 'updateManagerParams' - | 'upperTick' - | 'version' - | 'withdrawArrakisBalance' - | 'withdrawManagerBalance' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'GELATO', values?: undefined): string - encodeFunctionData(functionFragment: 'RESTRICTED_MINT_ENABLED', values?: undefined): string - encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string - encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'arrakisBalance0', values?: undefined): string - encodeFunctionData(functionFragment: 'arrakisBalance1', values?: undefined): string - encodeFunctionData(functionFragment: 'arrakisFeeBPS', values?: undefined): string - encodeFunctionData(functionFragment: 'arrakisTreasury', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'burn', values: [BigNumberish, string]): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData(functionFragment: 'decreaseAllowance', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'executiveRebalance', - values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, boolean] - ): string - encodeFunctionData(functionFragment: 'gelatoRebalanceBPS', values?: undefined): string - encodeFunctionData(functionFragment: 'gelatoSlippageBPS', values?: undefined): string - encodeFunctionData(functionFragment: 'gelatoSlippageInterval', values?: undefined): string - encodeFunctionData( - functionFragment: 'getMintAmounts', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getPositionID', values?: undefined): string - encodeFunctionData(functionFragment: 'getUnderlyingBalances', values?: undefined): string - encodeFunctionData( - functionFragment: 'getUnderlyingBalancesAtPrice', - values: [BigNumberish] - ): string - encodeFunctionData(functionFragment: 'increaseAllowance', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'initialize', - values: [string, string, string, BigNumberish, BigNumberish, BigNumberish, string] - ): string - encodeFunctionData(functionFragment: 'lowerTick', values?: undefined): string - encodeFunctionData(functionFragment: 'manager', values?: undefined): string - encodeFunctionData(functionFragment: 'managerBalance0', values?: undefined): string - encodeFunctionData(functionFragment: 'managerBalance1', values?: undefined): string - encodeFunctionData(functionFragment: 'managerFeeBPS', values?: undefined): string - encodeFunctionData(functionFragment: 'managerTreasury', values?: undefined): string - encodeFunctionData(functionFragment: 'mint', values: [BigNumberish, string]): string - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'pool', values?: undefined): string - encodeFunctionData( - functionFragment: 'rebalance', - values: [BigNumberish, BigNumberish, boolean, BigNumberish, string] - ): string - encodeFunctionData(functionFragment: 'renounceOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'restrictedMintToggle', values?: undefined): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'toggleRestrictMint', values?: undefined): string - encodeFunctionData(functionFragment: 'token0', values?: undefined): string - encodeFunctionData(functionFragment: 'token1', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [string, string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string - encodeFunctionData( - functionFragment: 'uniswapV3MintCallback', - values: [BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'uniswapV3SwapCallback', - values: [BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'updateManagerParams', - values: [BigNumberish, string, BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'upperTick', values?: undefined): string - encodeFunctionData(functionFragment: 'version', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawArrakisBalance', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawManagerBalance', values?: undefined): string - - decodeFunctionResult(functionFragment: 'GELATO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'RESTRICTED_MINT_ENABLED', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'arrakisBalance0', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'arrakisBalance1', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'arrakisFeeBPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'arrakisTreasury', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burn', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decreaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executiveRebalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'gelatoRebalanceBPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'gelatoSlippageBPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'gelatoSlippageInterval', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getMintAmounts', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPositionID', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getUnderlyingBalances', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getUnderlyingBalancesAtPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'increaseAllowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'initialize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lowerTick', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'manager', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'managerBalance0', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'managerBalance1', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'managerFeeBPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'managerTreasury', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'pool', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'renounceOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'restrictedMintToggle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'toggleRestrictMint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token0', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token1', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapV3MintCallback', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapV3SwapCallback', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateManagerParams', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'upperTick', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'version', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawArrakisBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawManagerBalance', data: BytesLike): Result - - events: { - 'Approval(address,address,uint256)': EventFragment - 'Burned(address,uint256,uint256,uint256,uint128)': EventFragment - 'FeesEarned(uint256,uint256)': EventFragment - 'Minted(address,uint256,uint256,uint256,uint128)': EventFragment - 'OwnershipTransferred(address,address)': EventFragment - 'Rebalance(int24,int24,uint128,uint128)': EventFragment - 'Transfer(address,address,uint256)': EventFragment - 'UpdateManagerParams(uint16,address,uint16,uint16,uint32)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Burned'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeesEarned'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Minted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Rebalance'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment - getEvent(nameOrSignatureOrTopic: 'UpdateManagerParams'): EventFragment + functions: { + "GELATO()": FunctionFragment; + "RESTRICTED_MINT_ENABLED()": FunctionFragment; + "allowance(address,address)": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "arrakisBalance0()": FunctionFragment; + "arrakisBalance1()": FunctionFragment; + "arrakisFeeBPS()": FunctionFragment; + "arrakisTreasury()": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burn(uint256,address)": FunctionFragment; + "decimals()": FunctionFragment; + "decreaseAllowance(address,uint256)": FunctionFragment; + "executiveRebalance(int24,int24,uint160,uint256,bool)": FunctionFragment; + "gelatoRebalanceBPS()": FunctionFragment; + "gelatoSlippageBPS()": FunctionFragment; + "gelatoSlippageInterval()": FunctionFragment; + "getMintAmounts(uint256,uint256)": FunctionFragment; + "getPositionID()": FunctionFragment; + "getUnderlyingBalances()": FunctionFragment; + "getUnderlyingBalancesAtPrice(uint160)": FunctionFragment; + "increaseAllowance(address,uint256)": FunctionFragment; + "initialize(string,string,address,uint16,int24,int24,address)": FunctionFragment; + "lowerTick()": FunctionFragment; + "manager()": FunctionFragment; + "managerBalance0()": FunctionFragment; + "managerBalance1()": FunctionFragment; + "managerFeeBPS()": FunctionFragment; + "managerTreasury()": FunctionFragment; + "mint(uint256,address)": FunctionFragment; + "name()": FunctionFragment; + "pool()": FunctionFragment; + "rebalance(uint160,uint256,bool,uint256,address)": FunctionFragment; + "renounceOwnership()": FunctionFragment; + "restrictedMintToggle()": FunctionFragment; + "symbol()": FunctionFragment; + "toggleRestrictMint()": FunctionFragment; + "token0()": FunctionFragment; + "token1()": FunctionFragment; + "totalSupply()": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "transferOwnership(address)": FunctionFragment; + "uniswapV3MintCallback(uint256,uint256,bytes)": FunctionFragment; + "uniswapV3SwapCallback(int256,int256,bytes)": FunctionFragment; + "updateManagerParams(int16,address,int16,int16,int32)": FunctionFragment; + "upperTick()": FunctionFragment; + "version()": FunctionFragment; + "withdrawArrakisBalance()": FunctionFragment; + "withdrawManagerBalance()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "GELATO" + | "RESTRICTED_MINT_ENABLED" + | "allowance" + | "approve" + | "arrakisBalance0" + | "arrakisBalance1" + | "arrakisFeeBPS" + | "arrakisTreasury" + | "balanceOf" + | "burn" + | "decimals" + | "decreaseAllowance" + | "executiveRebalance" + | "gelatoRebalanceBPS" + | "gelatoSlippageBPS" + | "gelatoSlippageInterval" + | "getMintAmounts" + | "getPositionID" + | "getUnderlyingBalances" + | "getUnderlyingBalancesAtPrice" + | "increaseAllowance" + | "initialize" + | "lowerTick" + | "manager" + | "managerBalance0" + | "managerBalance1" + | "managerFeeBPS" + | "managerTreasury" + | "mint" + | "name" + | "pool" + | "rebalance" + | "renounceOwnership" + | "restrictedMintToggle" + | "symbol" + | "toggleRestrictMint" + | "token0" + | "token1" + | "totalSupply" + | "transfer" + | "transferFrom" + | "transferOwnership" + | "uniswapV3MintCallback" + | "uniswapV3SwapCallback" + | "updateManagerParams" + | "upperTick" + | "version" + | "withdrawArrakisBalance" + | "withdrawManagerBalance" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "GELATO", values?: undefined): string; + encodeFunctionData( + functionFragment: "RESTRICTED_MINT_ENABLED", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "arrakisBalance0", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "arrakisBalance1", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "arrakisFeeBPS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "arrakisTreasury", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "burn", + values: [BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "decreaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "executiveRebalance", + values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, boolean] + ): string; + encodeFunctionData( + functionFragment: "gelatoRebalanceBPS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "gelatoSlippageBPS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "gelatoSlippageInterval", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getMintAmounts", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getPositionID", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getUnderlyingBalances", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getUnderlyingBalancesAtPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "increaseAllowance", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "initialize", + values: [ + string, + string, + string, + BigNumberish, + BigNumberish, + BigNumberish, + string + ] + ): string; + encodeFunctionData(functionFragment: "lowerTick", values?: undefined): string; + encodeFunctionData(functionFragment: "manager", values?: undefined): string; + encodeFunctionData( + functionFragment: "managerBalance0", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "managerBalance1", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "managerFeeBPS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "managerTreasury", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "mint", + values: [BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData(functionFragment: "pool", values?: undefined): string; + encodeFunctionData( + functionFragment: "rebalance", + values: [BigNumberish, BigNumberish, boolean, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "renounceOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "restrictedMintToggle", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "toggleRestrictMint", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "token0", values?: undefined): string; + encodeFunctionData(functionFragment: "token1", values?: undefined): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferOwnership", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "uniswapV3MintCallback", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "uniswapV3SwapCallback", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "updateManagerParams", + values: [BigNumberish, string, BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "upperTick", values?: undefined): string; + encodeFunctionData(functionFragment: "version", values?: undefined): string; + encodeFunctionData( + functionFragment: "withdrawArrakisBalance", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "withdrawManagerBalance", + values?: undefined + ): string; + + decodeFunctionResult(functionFragment: "GELATO", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "RESTRICTED_MINT_ENABLED", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "arrakisBalance0", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "arrakisBalance1", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "arrakisFeeBPS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "arrakisTreasury", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "decreaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executiveRebalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "gelatoRebalanceBPS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "gelatoSlippageBPS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "gelatoSlippageInterval", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMintAmounts", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getPositionID", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getUnderlyingBalances", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getUnderlyingBalancesAtPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "increaseAllowance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "lowerTick", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "manager", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "managerBalance0", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "managerBalance1", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "managerFeeBPS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "managerTreasury", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pool", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rebalance", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "renounceOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "restrictedMintToggle", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "toggleRestrictMint", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token0", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "token1", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "uniswapV3MintCallback", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "uniswapV3SwapCallback", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateManagerParams", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "upperTick", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "version", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "withdrawArrakisBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawManagerBalance", + data: BytesLike + ): Result; + + events: { + "Approval(address,address,uint256)": EventFragment; + "Burned(address,uint256,uint256,uint256,uint128)": EventFragment; + "FeesEarned(uint256,uint256)": EventFragment; + "Minted(address,uint256,uint256,uint256,uint128)": EventFragment; + "OwnershipTransferred(address,address)": EventFragment; + "Rebalance(int24,int24,uint128,uint128)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + "UpdateManagerParams(uint16,address,uint16,uint16,uint32)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Burned"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeesEarned"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Minted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Rebalance"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; + getEvent(nameOrSignatureOrTopic: "UpdateManagerParams"): EventFragment; } export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface BurnedEventObject { - receiver: string - burnAmount: BigNumber - amount0Out: BigNumber - amount1Out: BigNumber - liquidityBurned: BigNumber + receiver: string; + burnAmount: BigNumber; + amount0Out: BigNumber; + amount1Out: BigNumber; + liquidityBurned: BigNumber; } export type BurnedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber], - BurnedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber], + BurnedEventObject +>; -export type BurnedEventFilter = TypedEventFilter +export type BurnedEventFilter = TypedEventFilter; export interface FeesEarnedEventObject { - feesEarned0: BigNumber - feesEarned1: BigNumber + feesEarned0: BigNumber; + feesEarned1: BigNumber; } -export type FeesEarnedEvent = TypedEvent<[BigNumber, BigNumber], FeesEarnedEventObject> +export type FeesEarnedEvent = TypedEvent< + [BigNumber, BigNumber], + FeesEarnedEventObject +>; -export type FeesEarnedEventFilter = TypedEventFilter +export type FeesEarnedEventFilter = TypedEventFilter; export interface MintedEventObject { - receiver: string - mintAmount: BigNumber - amount0In: BigNumber - amount1In: BigNumber - liquidityMinted: BigNumber + receiver: string; + mintAmount: BigNumber; + amount0In: BigNumber; + amount1In: BigNumber; + liquidityMinted: BigNumber; } export type MintedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber, BigNumber], - MintedEventObject -> + [string, BigNumber, BigNumber, BigNumber, BigNumber], + MintedEventObject +>; -export type MintedEventFilter = TypedEventFilter +export type MintedEventFilter = TypedEventFilter; export interface OwnershipTransferredEventObject { - previousManager: string - newManager: string + previousManager: string; + newManager: string; } export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject -> + [string, string], + OwnershipTransferredEventObject +>; -export type OwnershipTransferredEventFilter = TypedEventFilter +export type OwnershipTransferredEventFilter = + TypedEventFilter; export interface RebalanceEventObject { - lowerTick_: number - upperTick_: number - liquidityBefore: BigNumber - liquidityAfter: BigNumber + lowerTick_: number; + upperTick_: number; + liquidityBefore: BigNumber; + liquidityAfter: BigNumber; } export type RebalanceEvent = TypedEvent< - [number, number, BigNumber, BigNumber], - RebalanceEventObject -> + [number, number, BigNumber, BigNumber], + RebalanceEventObject +>; -export type RebalanceEventFilter = TypedEventFilter +export type RebalanceEventFilter = TypedEventFilter; export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface UpdateManagerParamsEventObject { - managerFeeBPS: number - managerTreasury: string - gelatoRebalanceBPS: number - gelatoSlippageBPS: number - gelatoSlippageInterval: number + managerFeeBPS: number; + managerTreasury: string; + gelatoRebalanceBPS: number; + gelatoSlippageBPS: number; + gelatoSlippageInterval: number; } export type UpdateManagerParamsEvent = TypedEvent< - [number, string, number, number, number], - UpdateManagerParamsEventObject -> + [number, string, number, number, number], + UpdateManagerParamsEventObject +>; -export type UpdateManagerParamsEventFilter = TypedEventFilter +export type UpdateManagerParamsEventFilter = + TypedEventFilter; export interface KwentaArrakisVault extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: KwentaArrakisVaultInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - GELATO(overrides?: CallOverrides): Promise<[string]> - - RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise<[number]> - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> - - approve( - spender: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - arrakisBalance0(overrides?: CallOverrides): Promise<[BigNumber]> - - arrakisBalance1(overrides?: CallOverrides): Promise<[BigNumber]> - - arrakisFeeBPS(overrides?: CallOverrides): Promise<[number]> - - arrakisTreasury(overrides?: CallOverrides): Promise<[string]> - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - burn( - burnAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise<[number]> - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - executiveRebalance( - newLowerTick: BigNumberish, - newUpperTick: BigNumberish, - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - gelatoRebalanceBPS(overrides?: CallOverrides): Promise<[number]> - - gelatoSlippageBPS(overrides?: CallOverrides): Promise<[number]> - - gelatoSlippageInterval(overrides?: CallOverrides): Promise<[number]> - - getMintAmounts( - amount0Max: BigNumberish, - amount1Max: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amount0: BigNumber - amount1: BigNumber - mintAmount: BigNumber - } - > - - getPositionID(overrides?: CallOverrides): Promise<[string] & { positionID: string }> - - getUnderlyingBalances(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - getUnderlyingBalancesAtPrice( - sqrtRatioX96: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - initialize( - _name: string, - _symbol: string, - _pool: string, - _managerFeeBPS: BigNumberish, - _lowerTick: BigNumberish, - _upperTick: BigNumberish, - _manager_: string, - overrides?: Overrides & { from?: string } - ): Promise - - lowerTick(overrides?: CallOverrides): Promise<[number]> - - manager(overrides?: CallOverrides): Promise<[string]> - - managerBalance0(overrides?: CallOverrides): Promise<[BigNumber]> - - managerBalance1(overrides?: CallOverrides): Promise<[BigNumber]> - - managerFeeBPS(overrides?: CallOverrides): Promise<[number]> - - managerTreasury(overrides?: CallOverrides): Promise<[string]> - - mint( - mintAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise<[string]> - - pool(overrides?: CallOverrides): Promise<[string]> - - rebalance( - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - feeAmount: BigNumberish, - paymentToken: string, - overrides?: Overrides & { from?: string } - ): Promise - - renounceOwnership(overrides?: Overrides & { from?: string }): Promise - - restrictedMintToggle(overrides?: CallOverrides): Promise<[number]> - - symbol(overrides?: CallOverrides): Promise<[string]> - - toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise - - token0(overrides?: CallOverrides): Promise<[string]> - - token1(overrides?: CallOverrides): Promise<[string]> - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3MintCallback( - amount0Owed: BigNumberish, - amount1Owed: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3SwapCallback( - amount0Delta: BigNumberish, - amount1Delta: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - updateManagerParams( - newManagerFeeBPS: BigNumberish, - newManagerTreasury: string, - newRebalanceBPS: BigNumberish, - newSlippageBPS: BigNumberish, - newSlippageInterval: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - upperTick(overrides?: CallOverrides): Promise<[number]> - - version(overrides?: CallOverrides): Promise<[string]> - - withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - - withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise - } - - GELATO(overrides?: CallOverrides): Promise - - RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - approve( - spender: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - arrakisBalance0(overrides?: CallOverrides): Promise - - arrakisBalance1(overrides?: CallOverrides): Promise - - arrakisFeeBPS(overrides?: CallOverrides): Promise - - arrakisTreasury(overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burn( - burnAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - executiveRebalance( - newLowerTick: BigNumberish, - newUpperTick: BigNumberish, - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - gelatoRebalanceBPS(overrides?: CallOverrides): Promise - - gelatoSlippageBPS(overrides?: CallOverrides): Promise - - gelatoSlippageInterval(overrides?: CallOverrides): Promise - - getMintAmounts( - amount0Max: BigNumberish, - amount1Max: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amount0: BigNumber - amount1: BigNumber - mintAmount: BigNumber - } - > - - getPositionID(overrides?: CallOverrides): Promise - - getUnderlyingBalances(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - getUnderlyingBalancesAtPrice( - sqrtRatioX96: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - initialize( - _name: string, - _symbol: string, - _pool: string, - _managerFeeBPS: BigNumberish, - _lowerTick: BigNumberish, - _upperTick: BigNumberish, - _manager_: string, - overrides?: Overrides & { from?: string } - ): Promise - - lowerTick(overrides?: CallOverrides): Promise - - manager(overrides?: CallOverrides): Promise - - managerBalance0(overrides?: CallOverrides): Promise - - managerBalance1(overrides?: CallOverrides): Promise - - managerFeeBPS(overrides?: CallOverrides): Promise - - managerTreasury(overrides?: CallOverrides): Promise - - mint( - mintAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise - - pool(overrides?: CallOverrides): Promise - - rebalance( - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - feeAmount: BigNumberish, - paymentToken: string, - overrides?: Overrides & { from?: string } - ): Promise - - renounceOwnership(overrides?: Overrides & { from?: string }): Promise - - restrictedMintToggle(overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise - - token0(overrides?: CallOverrides): Promise - - token1(overrides?: CallOverrides): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3MintCallback( - amount0Owed: BigNumberish, - amount1Owed: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3SwapCallback( - amount0Delta: BigNumberish, - amount1Delta: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - updateManagerParams( - newManagerFeeBPS: BigNumberish, - newManagerTreasury: string, - newRebalanceBPS: BigNumberish, - newSlippageBPS: BigNumberish, - newSlippageInterval: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - upperTick(overrides?: CallOverrides): Promise - - version(overrides?: CallOverrides): Promise - - withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - - withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise - - callStatic: { - GELATO(overrides?: CallOverrides): Promise - - RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - approve(spender: string, amount: BigNumberish, overrides?: CallOverrides): Promise - - arrakisBalance0(overrides?: CallOverrides): Promise - - arrakisBalance1(overrides?: CallOverrides): Promise - - arrakisFeeBPS(overrides?: CallOverrides): Promise - - arrakisTreasury(overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burn( - burnAmount: BigNumberish, - receiver: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amount0: BigNumber - amount1: BigNumber - liquidityBurned: BigNumber - } - > - - decimals(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - executiveRebalance( - newLowerTick: BigNumberish, - newUpperTick: BigNumberish, - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - overrides?: CallOverrides - ): Promise - - gelatoRebalanceBPS(overrides?: CallOverrides): Promise - - gelatoSlippageBPS(overrides?: CallOverrides): Promise - - gelatoSlippageInterval(overrides?: CallOverrides): Promise - - getMintAmounts( - amount0Max: BigNumberish, - amount1Max: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amount0: BigNumber - amount1: BigNumber - mintAmount: BigNumber - } - > - - getPositionID(overrides?: CallOverrides): Promise - - getUnderlyingBalances(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - getUnderlyingBalancesAtPrice( - sqrtRatioX96: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - amount0Current: BigNumber - amount1Current: BigNumber - } - > - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - initialize( - _name: string, - _symbol: string, - _pool: string, - _managerFeeBPS: BigNumberish, - _lowerTick: BigNumberish, - _upperTick: BigNumberish, - _manager_: string, - overrides?: CallOverrides - ): Promise - - lowerTick(overrides?: CallOverrides): Promise - - manager(overrides?: CallOverrides): Promise - - managerBalance0(overrides?: CallOverrides): Promise - - managerBalance1(overrides?: CallOverrides): Promise - - managerFeeBPS(overrides?: CallOverrides): Promise - - managerTreasury(overrides?: CallOverrides): Promise - - mint( - mintAmount: BigNumberish, - receiver: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - amount0: BigNumber - amount1: BigNumber - liquidityMinted: BigNumber - } - > - - name(overrides?: CallOverrides): Promise - - pool(overrides?: CallOverrides): Promise - - rebalance( - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - feeAmount: BigNumberish, - paymentToken: string, - overrides?: CallOverrides - ): Promise - - renounceOwnership(overrides?: CallOverrides): Promise - - restrictedMintToggle(overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - toggleRestrictMint(overrides?: CallOverrides): Promise - - token0(overrides?: CallOverrides): Promise - - token1(overrides?: CallOverrides): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer(recipient: string, amount: BigNumberish, overrides?: CallOverrides): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - transferOwnership(newOwner: string, overrides?: CallOverrides): Promise - - uniswapV3MintCallback( - amount0Owed: BigNumberish, - amount1Owed: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise - - uniswapV3SwapCallback( - amount0Delta: BigNumberish, - amount1Delta: BigNumberish, - arg2: BytesLike, - overrides?: CallOverrides - ): Promise - - updateManagerParams( - newManagerFeeBPS: BigNumberish, - newManagerTreasury: string, - newRebalanceBPS: BigNumberish, - newSlippageBPS: BigNumberish, - newSlippageInterval: BigNumberish, - overrides?: CallOverrides - ): Promise - - upperTick(overrides?: CallOverrides): Promise - - version(overrides?: CallOverrides): Promise - - withdrawArrakisBalance(overrides?: CallOverrides): Promise - - withdrawManagerBalance(overrides?: CallOverrides): Promise - } - - filters: { - 'Approval(address,address,uint256)'( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter - Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter - - 'Burned(address,uint256,uint256,uint256,uint128)'( - receiver?: null, - burnAmount?: null, - amount0Out?: null, - amount1Out?: null, - liquidityBurned?: null - ): BurnedEventFilter - Burned( - receiver?: null, - burnAmount?: null, - amount0Out?: null, - amount1Out?: null, - liquidityBurned?: null - ): BurnedEventFilter - - 'FeesEarned(uint256,uint256)'(feesEarned0?: null, feesEarned1?: null): FeesEarnedEventFilter - FeesEarned(feesEarned0?: null, feesEarned1?: null): FeesEarnedEventFilter - - 'Minted(address,uint256,uint256,uint256,uint128)'( - receiver?: null, - mintAmount?: null, - amount0In?: null, - amount1In?: null, - liquidityMinted?: null - ): MintedEventFilter - Minted( - receiver?: null, - mintAmount?: null, - amount0In?: null, - amount1In?: null, - liquidityMinted?: null - ): MintedEventFilter - - 'OwnershipTransferred(address,address)'( - previousManager?: string | null, - newManager?: string | null - ): OwnershipTransferredEventFilter - OwnershipTransferred( - previousManager?: string | null, - newManager?: string | null - ): OwnershipTransferredEventFilter - - 'Rebalance(int24,int24,uint128,uint128)'( - lowerTick_?: null, - upperTick_?: null, - liquidityBefore?: null, - liquidityAfter?: null - ): RebalanceEventFilter - Rebalance( - lowerTick_?: null, - upperTick_?: null, - liquidityBefore?: null, - liquidityAfter?: null - ): RebalanceEventFilter - - 'Transfer(address,address,uint256)'( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter - Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter - - 'UpdateManagerParams(uint16,address,uint16,uint16,uint32)'( - managerFeeBPS?: null, - managerTreasury?: null, - gelatoRebalanceBPS?: null, - gelatoSlippageBPS?: null, - gelatoSlippageInterval?: null - ): UpdateManagerParamsEventFilter - UpdateManagerParams( - managerFeeBPS?: null, - managerTreasury?: null, - gelatoRebalanceBPS?: null, - gelatoSlippageBPS?: null, - gelatoSlippageInterval?: null - ): UpdateManagerParamsEventFilter - } - - estimateGas: { - GELATO(overrides?: CallOverrides): Promise - - RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - approve( - spender: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - arrakisBalance0(overrides?: CallOverrides): Promise - - arrakisBalance1(overrides?: CallOverrides): Promise - - arrakisFeeBPS(overrides?: CallOverrides): Promise - - arrakisTreasury(overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burn( - burnAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - executiveRebalance( - newLowerTick: BigNumberish, - newUpperTick: BigNumberish, - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - gelatoRebalanceBPS(overrides?: CallOverrides): Promise - - gelatoSlippageBPS(overrides?: CallOverrides): Promise - - gelatoSlippageInterval(overrides?: CallOverrides): Promise - - getMintAmounts( - amount0Max: BigNumberish, - amount1Max: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPositionID(overrides?: CallOverrides): Promise - - getUnderlyingBalances(overrides?: CallOverrides): Promise - - getUnderlyingBalancesAtPrice( - sqrtRatioX96: BigNumberish, - overrides?: CallOverrides - ): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - initialize( - _name: string, - _symbol: string, - _pool: string, - _managerFeeBPS: BigNumberish, - _lowerTick: BigNumberish, - _upperTick: BigNumberish, - _manager_: string, - overrides?: Overrides & { from?: string } - ): Promise - - lowerTick(overrides?: CallOverrides): Promise - - manager(overrides?: CallOverrides): Promise - - managerBalance0(overrides?: CallOverrides): Promise - - managerBalance1(overrides?: CallOverrides): Promise - - managerFeeBPS(overrides?: CallOverrides): Promise - - managerTreasury(overrides?: CallOverrides): Promise - - mint( - mintAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise - - pool(overrides?: CallOverrides): Promise - - rebalance( - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - feeAmount: BigNumberish, - paymentToken: string, - overrides?: Overrides & { from?: string } - ): Promise - - renounceOwnership(overrides?: Overrides & { from?: string }): Promise - - restrictedMintToggle(overrides?: CallOverrides): Promise - - symbol(overrides?: CallOverrides): Promise - - toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise - - token0(overrides?: CallOverrides): Promise - - token1(overrides?: CallOverrides): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3MintCallback( - amount0Owed: BigNumberish, - amount1Owed: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapV3SwapCallback( - amount0Delta: BigNumberish, - amount1Delta: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - updateManagerParams( - newManagerFeeBPS: BigNumberish, - newManagerTreasury: string, - newRebalanceBPS: BigNumberish, - newSlippageBPS: BigNumberish, - newSlippageInterval: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - upperTick(overrides?: CallOverrides): Promise - - version(overrides?: CallOverrides): Promise - - withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise - - withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise - } - - populateTransaction: { - GELATO(overrides?: CallOverrides): Promise - - RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise - - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise - - approve( - spender: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - arrakisBalance0(overrides?: CallOverrides): Promise - - arrakisBalance1(overrides?: CallOverrides): Promise - - arrakisFeeBPS(overrides?: CallOverrides): Promise - - arrakisTreasury(overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burn( - burnAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise - - decimals(overrides?: CallOverrides): Promise - - decreaseAllowance( - spender: string, - subtractedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - executiveRebalance( - newLowerTick: BigNumberish, - newUpperTick: BigNumberish, - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - gelatoRebalanceBPS(overrides?: CallOverrides): Promise - - gelatoSlippageBPS(overrides?: CallOverrides): Promise - - gelatoSlippageInterval(overrides?: CallOverrides): Promise - - getMintAmounts( - amount0Max: BigNumberish, - amount1Max: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPositionID(overrides?: CallOverrides): Promise - - getUnderlyingBalances(overrides?: CallOverrides): Promise - - getUnderlyingBalancesAtPrice( - sqrtRatioX96: BigNumberish, - overrides?: CallOverrides - ): Promise - - increaseAllowance( - spender: string, - addedValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - initialize( - _name: string, - _symbol: string, - _pool: string, - _managerFeeBPS: BigNumberish, - _lowerTick: BigNumberish, - _upperTick: BigNumberish, - _manager_: string, - overrides?: Overrides & { from?: string } - ): Promise - - lowerTick(overrides?: CallOverrides): Promise - - manager(overrides?: CallOverrides): Promise - - managerBalance0(overrides?: CallOverrides): Promise - - managerBalance1(overrides?: CallOverrides): Promise - - managerFeeBPS(overrides?: CallOverrides): Promise - - managerTreasury(overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: KwentaArrakisVaultInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + GELATO(overrides?: CallOverrides): Promise<[string]>; + + RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise<[number]>; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + approve( + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + arrakisBalance0(overrides?: CallOverrides): Promise<[BigNumber]>; + + arrakisBalance1(overrides?: CallOverrides): Promise<[BigNumber]>; + + arrakisFeeBPS(overrides?: CallOverrides): Promise<[number]>; + + arrakisTreasury(overrides?: CallOverrides): Promise<[string]>; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + burn( + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise<[number]>; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + executiveRebalance( + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + gelatoRebalanceBPS(overrides?: CallOverrides): Promise<[number]>; + + gelatoSlippageBPS(overrides?: CallOverrides): Promise<[number]>; + + gelatoSlippageInterval(overrides?: CallOverrides): Promise<[number]>; + + getMintAmounts( + amount0Max: BigNumberish, + amount1Max: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amount0: BigNumber; + amount1: BigNumber; + mintAmount: BigNumber; + } + >; + + getPositionID( + overrides?: CallOverrides + ): Promise<[string] & { positionID: string }>; + + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + getUnderlyingBalancesAtPrice( + sqrtRatioX96: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + initialize( + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } + ): Promise; + + lowerTick(overrides?: CallOverrides): Promise<[number]>; + + manager(overrides?: CallOverrides): Promise<[string]>; + + managerBalance0(overrides?: CallOverrides): Promise<[BigNumber]>; + + managerBalance1(overrides?: CallOverrides): Promise<[BigNumber]>; + + managerFeeBPS(overrides?: CallOverrides): Promise<[number]>; + + managerTreasury(overrides?: CallOverrides): Promise<[string]>; + + mint( + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise<[string]>; + + pool(overrides?: CallOverrides): Promise<[string]>; + + rebalance( + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } + ): Promise; + + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + restrictedMintToggle(overrides?: CallOverrides): Promise<[number]>; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + toggleRestrictMint( + overrides?: Overrides & { from?: string } + ): Promise; + + token0(overrides?: CallOverrides): Promise<[string]>; + + token1(overrides?: CallOverrides): Promise<[string]>; + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3MintCallback( + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3SwapCallback( + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + updateManagerParams( + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + upperTick(overrides?: CallOverrides): Promise<[number]>; + + version(overrides?: CallOverrides): Promise<[string]>; + + withdrawArrakisBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + withdrawManagerBalance( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + GELATO(overrides?: CallOverrides): Promise; + + RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + arrakisBalance0(overrides?: CallOverrides): Promise; + + arrakisBalance1(overrides?: CallOverrides): Promise; + + arrakisFeeBPS(overrides?: CallOverrides): Promise; + + arrakisTreasury(overrides?: CallOverrides): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burn( + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + executiveRebalance( + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + gelatoRebalanceBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageInterval(overrides?: CallOverrides): Promise; + + getMintAmounts( + amount0Max: BigNumberish, + amount1Max: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amount0: BigNumber; + amount1: BigNumber; + mintAmount: BigNumber; + } + >; + + getPositionID(overrides?: CallOverrides): Promise; + + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + getUnderlyingBalancesAtPrice( + sqrtRatioX96: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + initialize( + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } + ): Promise; + + lowerTick(overrides?: CallOverrides): Promise; + + manager(overrides?: CallOverrides): Promise; + + managerBalance0(overrides?: CallOverrides): Promise; + + managerBalance1(overrides?: CallOverrides): Promise; + + managerFeeBPS(overrides?: CallOverrides): Promise; + + managerTreasury(overrides?: CallOverrides): Promise; + + mint( + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + pool(overrides?: CallOverrides): Promise; + + rebalance( + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } + ): Promise; + + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + restrictedMintToggle(overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + toggleRestrictMint( + overrides?: Overrides & { from?: string } + ): Promise; + + token0(overrides?: CallOverrides): Promise; + + token1(overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3MintCallback( + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3SwapCallback( + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + updateManagerParams( + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + upperTick(overrides?: CallOverrides): Promise; + + version(overrides?: CallOverrides): Promise; + + withdrawArrakisBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + withdrawManagerBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + GELATO(overrides?: CallOverrides): Promise; + + RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + arrakisBalance0(overrides?: CallOverrides): Promise; + + arrakisBalance1(overrides?: CallOverrides): Promise; + + arrakisFeeBPS(overrides?: CallOverrides): Promise; + + arrakisTreasury(overrides?: CallOverrides): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burn( + burnAmount: BigNumberish, + receiver: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amount0: BigNumber; + amount1: BigNumber; + liquidityBurned: BigNumber; + } + >; + + decimals(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + executiveRebalance( + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: CallOverrides + ): Promise; + + gelatoRebalanceBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageInterval(overrides?: CallOverrides): Promise; + + getMintAmounts( + amount0Max: BigNumberish, + amount1Max: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amount0: BigNumber; + amount1: BigNumber; + mintAmount: BigNumber; + } + >; + + getPositionID(overrides?: CallOverrides): Promise; + + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + getUnderlyingBalancesAtPrice( + sqrtRatioX96: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + amount0Current: BigNumber; + amount1Current: BigNumber; + } + >; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + initialize( + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: CallOverrides + ): Promise; + + lowerTick(overrides?: CallOverrides): Promise; + + manager(overrides?: CallOverrides): Promise; + + managerBalance0(overrides?: CallOverrides): Promise; + + managerBalance1(overrides?: CallOverrides): Promise; + + managerFeeBPS(overrides?: CallOverrides): Promise; + + managerTreasury(overrides?: CallOverrides): Promise; + + mint( + mintAmount: BigNumberish, + receiver: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + amount0: BigNumber; + amount1: BigNumber; + liquidityMinted: BigNumber; + } + >; + + name(overrides?: CallOverrides): Promise; + + pool(overrides?: CallOverrides): Promise; + + rebalance( + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: CallOverrides + ): Promise; + + renounceOwnership(overrides?: CallOverrides): Promise; + + restrictedMintToggle(overrides?: CallOverrides): Promise; + + symbol(overrides?: CallOverrides): Promise; + + toggleRestrictMint(overrides?: CallOverrides): Promise; + + token0(overrides?: CallOverrides): Promise; + + token1(overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: CallOverrides + ): Promise; + + uniswapV3MintCallback( + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + uniswapV3SwapCallback( + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: CallOverrides + ): Promise; + + updateManagerParams( + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: CallOverrides + ): Promise; + + upperTick(overrides?: CallOverrides): Promise; + + version(overrides?: CallOverrides): Promise; + + withdrawArrakisBalance(overrides?: CallOverrides): Promise; + + withdrawManagerBalance(overrides?: CallOverrides): Promise; + }; + + filters: { + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + + "Burned(address,uint256,uint256,uint256,uint128)"( + receiver?: null, + burnAmount?: null, + amount0Out?: null, + amount1Out?: null, + liquidityBurned?: null + ): BurnedEventFilter; + Burned( + receiver?: null, + burnAmount?: null, + amount0Out?: null, + amount1Out?: null, + liquidityBurned?: null + ): BurnedEventFilter; + + "FeesEarned(uint256,uint256)"( + feesEarned0?: null, + feesEarned1?: null + ): FeesEarnedEventFilter; + FeesEarned(feesEarned0?: null, feesEarned1?: null): FeesEarnedEventFilter; + + "Minted(address,uint256,uint256,uint256,uint128)"( + receiver?: null, + mintAmount?: null, + amount0In?: null, + amount1In?: null, + liquidityMinted?: null + ): MintedEventFilter; + Minted( + receiver?: null, + mintAmount?: null, + amount0In?: null, + amount1In?: null, + liquidityMinted?: null + ): MintedEventFilter; + + "OwnershipTransferred(address,address)"( + previousManager?: string | null, + newManager?: string | null + ): OwnershipTransferredEventFilter; + OwnershipTransferred( + previousManager?: string | null, + newManager?: string | null + ): OwnershipTransferredEventFilter; + + "Rebalance(int24,int24,uint128,uint128)"( + lowerTick_?: null, + upperTick_?: null, + liquidityBefore?: null, + liquidityAfter?: null + ): RebalanceEventFilter; + Rebalance( + lowerTick_?: null, + upperTick_?: null, + liquidityBefore?: null, + liquidityAfter?: null + ): RebalanceEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + + "UpdateManagerParams(uint16,address,uint16,uint16,uint32)"( + managerFeeBPS?: null, + managerTreasury?: null, + gelatoRebalanceBPS?: null, + gelatoSlippageBPS?: null, + gelatoSlippageInterval?: null + ): UpdateManagerParamsEventFilter; + UpdateManagerParams( + managerFeeBPS?: null, + managerTreasury?: null, + gelatoRebalanceBPS?: null, + gelatoSlippageBPS?: null, + gelatoSlippageInterval?: null + ): UpdateManagerParamsEventFilter; + }; + + estimateGas: { + GELATO(overrides?: CallOverrides): Promise; + + RESTRICTED_MINT_ENABLED(overrides?: CallOverrides): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + arrakisBalance0(overrides?: CallOverrides): Promise; + + arrakisBalance1(overrides?: CallOverrides): Promise; + + arrakisFeeBPS(overrides?: CallOverrides): Promise; + + arrakisTreasury(overrides?: CallOverrides): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burn( + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + executiveRebalance( + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + gelatoRebalanceBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageInterval(overrides?: CallOverrides): Promise; + + getMintAmounts( + amount0Max: BigNumberish, + amount1Max: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPositionID(overrides?: CallOverrides): Promise; + + getUnderlyingBalances(overrides?: CallOverrides): Promise; + + getUnderlyingBalancesAtPrice( + sqrtRatioX96: BigNumberish, + overrides?: CallOverrides + ): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + initialize( + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } + ): Promise; + + lowerTick(overrides?: CallOverrides): Promise; + + manager(overrides?: CallOverrides): Promise; - mint( - mintAmount: BigNumberish, - receiver: string, - overrides?: Overrides & { from?: string } - ): Promise + managerBalance0(overrides?: CallOverrides): Promise; - name(overrides?: CallOverrides): Promise + managerBalance1(overrides?: CallOverrides): Promise; - pool(overrides?: CallOverrides): Promise + managerFeeBPS(overrides?: CallOverrides): Promise; - rebalance( - swapThresholdPrice: BigNumberish, - swapAmountBPS: BigNumberish, - zeroForOne: boolean, - feeAmount: BigNumberish, - paymentToken: string, - overrides?: Overrides & { from?: string } - ): Promise + managerTreasury(overrides?: CallOverrides): Promise; - renounceOwnership(overrides?: Overrides & { from?: string }): Promise + mint( + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; - restrictedMintToggle(overrides?: CallOverrides): Promise + name(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + pool(overrides?: CallOverrides): Promise; - toggleRestrictMint(overrides?: Overrides & { from?: string }): Promise + rebalance( + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } + ): Promise; - token0(overrides?: CallOverrides): Promise + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - token1(overrides?: CallOverrides): Promise + restrictedMintToggle(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - transfer( - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + toggleRestrictMint( + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - sender: string, - recipient: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + token0(overrides?: CallOverrides): Promise; - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise + token1(overrides?: CallOverrides): Promise; - uniswapV3MintCallback( - amount0Owed: BigNumberish, - amount1Owed: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - uniswapV3SwapCallback( - amount0Delta: BigNumberish, - amount1Delta: BigNumberish, - arg2: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - updateManagerParams( - newManagerFeeBPS: BigNumberish, - newManagerTreasury: string, - newRebalanceBPS: BigNumberish, - newSlippageBPS: BigNumberish, - newSlippageInterval: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3MintCallback( + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - upperTick(overrides?: CallOverrides): Promise + uniswapV3SwapCallback( + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + updateManagerParams( + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + upperTick(overrides?: CallOverrides): Promise; + + version(overrides?: CallOverrides): Promise; + + withdrawArrakisBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + withdrawManagerBalance( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + GELATO(overrides?: CallOverrides): Promise; + + RESTRICTED_MINT_ENABLED( + overrides?: CallOverrides + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + arrakisBalance0(overrides?: CallOverrides): Promise; + + arrakisBalance1(overrides?: CallOverrides): Promise; + + arrakisFeeBPS(overrides?: CallOverrides): Promise; + + arrakisTreasury(overrides?: CallOverrides): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + burn( + burnAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + decreaseAllowance( + spender: string, + subtractedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + executiveRebalance( + newLowerTick: BigNumberish, + newUpperTick: BigNumberish, + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + gelatoRebalanceBPS( + overrides?: CallOverrides + ): Promise; + + gelatoSlippageBPS(overrides?: CallOverrides): Promise; + + gelatoSlippageInterval( + overrides?: CallOverrides + ): Promise; + + getMintAmounts( + amount0Max: BigNumberish, + amount1Max: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPositionID(overrides?: CallOverrides): Promise; + + getUnderlyingBalances( + overrides?: CallOverrides + ): Promise; + + getUnderlyingBalancesAtPrice( + sqrtRatioX96: BigNumberish, + overrides?: CallOverrides + ): Promise; + + increaseAllowance( + spender: string, + addedValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + initialize( + _name: string, + _symbol: string, + _pool: string, + _managerFeeBPS: BigNumberish, + _lowerTick: BigNumberish, + _upperTick: BigNumberish, + _manager_: string, + overrides?: Overrides & { from?: string } + ): Promise; + + lowerTick(overrides?: CallOverrides): Promise; + + manager(overrides?: CallOverrides): Promise; + + managerBalance0(overrides?: CallOverrides): Promise; + + managerBalance1(overrides?: CallOverrides): Promise; + + managerFeeBPS(overrides?: CallOverrides): Promise; + + managerTreasury(overrides?: CallOverrides): Promise; + + mint( + mintAmount: BigNumberish, + receiver: string, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + pool(overrides?: CallOverrides): Promise; + + rebalance( + swapThresholdPrice: BigNumberish, + swapAmountBPS: BigNumberish, + zeroForOne: boolean, + feeAmount: BigNumberish, + paymentToken: string, + overrides?: Overrides & { from?: string } + ): Promise; + + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + restrictedMintToggle( + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + toggleRestrictMint( + overrides?: Overrides & { from?: string } + ): Promise; + + token0(overrides?: CallOverrides): Promise; + + token1(overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + sender: string, + recipient: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3MintCallback( + amount0Owed: BigNumberish, + amount1Owed: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapV3SwapCallback( + amount0Delta: BigNumberish, + amount1Delta: BigNumberish, + arg2: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + updateManagerParams( + newManagerFeeBPS: BigNumberish, + newManagerTreasury: string, + newRebalanceBPS: BigNumberish, + newSlippageBPS: BigNumberish, + newSlippageInterval: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + upperTick(overrides?: CallOverrides): Promise; - version(overrides?: CallOverrides): Promise + version(overrides?: CallOverrides): Promise; - withdrawArrakisBalance(overrides?: Overrides & { from?: string }): Promise + withdrawArrakisBalance( + overrides?: Overrides & { from?: string } + ): Promise; - withdrawManagerBalance(overrides?: Overrides & { from?: string }): Promise - } + withdrawManagerBalance( + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts index 7581d4b0db..743af98c61 100644 --- a/packages/sdk/src/contracts/types/KwentaStakingRewards.ts +++ b/packages/sdk/src/contracts/types/KwentaStakingRewards.ts @@ -2,811 +2,1139 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface KwentaStakingRewardsInterface extends utils.Interface { - functions: { - '_totalSupply()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'earned(address)': FunctionFragment - 'escrowedBalanceOf(address)': FunctionFragment - 'exit()': FunctionFragment - 'getReward()': FunctionFragment - 'getRewardForDuration()': FunctionFragment - 'lastTimeRewardApplicable()': FunctionFragment - 'lastUpdateTime()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'nonEscrowedBalanceOf(address)': FunctionFragment - 'notifyRewardAmount(uint256)': FunctionFragment - 'owner()': FunctionFragment - 'pauseStakingRewards()': FunctionFragment - 'paused()': FunctionFragment - 'periodFinish()': FunctionFragment - 'recoverERC20(address,uint256)': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'rewardPerToken()': FunctionFragment - 'rewardPerTokenStored()': FunctionFragment - 'rewardRate()': FunctionFragment - 'rewards(address)': FunctionFragment - 'rewardsDuration()': FunctionFragment - 'setRewardsDuration(uint256)': FunctionFragment - 'stake(uint256)': FunctionFragment - 'stakeEscrow(address,uint256)': FunctionFragment - 'supplySchedule()': FunctionFragment - 'token()': FunctionFragment - 'totalSupply()': FunctionFragment - 'unpauseStakingRewards()': FunctionFragment - 'unstake(uint256)': FunctionFragment - 'unstakeEscrow(address,uint256)': FunctionFragment - 'userRewardPerTokenPaid(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | '_totalSupply' - | 'acceptOwnership' - | 'balanceOf' - | 'earned' - | 'escrowedBalanceOf' - | 'exit' - | 'getReward' - | 'getRewardForDuration' - | 'lastTimeRewardApplicable' - | 'lastUpdateTime' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'nonEscrowedBalanceOf' - | 'notifyRewardAmount' - | 'owner' - | 'pauseStakingRewards' - | 'paused' - | 'periodFinish' - | 'recoverERC20' - | 'rewardEscrow' - | 'rewardPerToken' - | 'rewardPerTokenStored' - | 'rewardRate' - | 'rewards' - | 'rewardsDuration' - | 'setRewardsDuration' - | 'stake' - | 'stakeEscrow' - | 'supplySchedule' - | 'token' - | 'totalSupply' - | 'unpauseStakingRewards' - | 'unstake' - | 'unstakeEscrow' - | 'userRewardPerTokenPaid' - ): FunctionFragment - - encodeFunctionData(functionFragment: '_totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'earned', values: [string]): string - encodeFunctionData(functionFragment: 'escrowedBalanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'exit', values?: undefined): string - encodeFunctionData(functionFragment: 'getReward', values?: undefined): string - encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string - encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'nonEscrowedBalanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'notifyRewardAmount', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'pauseStakingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'paused', values?: undefined): string - encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string - encodeFunctionData(functionFragment: 'recoverERC20', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string - encodeFunctionData(functionFragment: 'rewards', values: [string]): string - encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'setRewardsDuration', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stake', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stakeEscrow', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'supplySchedule', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'unpauseStakingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'unstake', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'unstakeEscrow', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'userRewardPerTokenPaid', values: [string]): string - - decodeFunctionResult(functionFragment: '_totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'escrowedBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nonEscrowedBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'pauseStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supplySchedule', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unpauseStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result - - events: { - 'EscrowStaked(address,uint256)': EventFragment - 'EscrowUnstaked(address,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'Paused(address)': EventFragment - 'Recovered(address,uint256)': EventFragment - 'RewardAdded(uint256)': EventFragment - 'RewardPaid(address,uint256)': EventFragment - 'RewardsDurationUpdated(uint256)': EventFragment - 'Staked(address,uint256)': EventFragment - 'Unpaused(address)': EventFragment - 'Unstaked(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'EscrowStaked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EscrowUnstaked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Paused'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Unpaused'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Unstaked'): EventFragment + functions: { + "_totalSupply()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "earned(address)": FunctionFragment; + "escrowedBalanceOf(address)": FunctionFragment; + "exit()": FunctionFragment; + "getReward()": FunctionFragment; + "getRewardForDuration()": FunctionFragment; + "lastTimeRewardApplicable()": FunctionFragment; + "lastUpdateTime()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "nonEscrowedBalanceOf(address)": FunctionFragment; + "notifyRewardAmount(uint256)": FunctionFragment; + "owner()": FunctionFragment; + "pauseStakingRewards()": FunctionFragment; + "paused()": FunctionFragment; + "periodFinish()": FunctionFragment; + "recoverERC20(address,uint256)": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "rewardPerToken()": FunctionFragment; + "rewardPerTokenStored()": FunctionFragment; + "rewardRate()": FunctionFragment; + "rewards(address)": FunctionFragment; + "rewardsDuration()": FunctionFragment; + "setRewardsDuration(uint256)": FunctionFragment; + "stake(uint256)": FunctionFragment; + "stakeEscrow(address,uint256)": FunctionFragment; + "supplySchedule()": FunctionFragment; + "token()": FunctionFragment; + "totalSupply()": FunctionFragment; + "unpauseStakingRewards()": FunctionFragment; + "unstake(uint256)": FunctionFragment; + "unstakeEscrow(address,uint256)": FunctionFragment; + "userRewardPerTokenPaid(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "_totalSupply" + | "acceptOwnership" + | "balanceOf" + | "earned" + | "escrowedBalanceOf" + | "exit" + | "getReward" + | "getRewardForDuration" + | "lastTimeRewardApplicable" + | "lastUpdateTime" + | "nominateNewOwner" + | "nominatedOwner" + | "nonEscrowedBalanceOf" + | "notifyRewardAmount" + | "owner" + | "pauseStakingRewards" + | "paused" + | "periodFinish" + | "recoverERC20" + | "rewardEscrow" + | "rewardPerToken" + | "rewardPerTokenStored" + | "rewardRate" + | "rewards" + | "rewardsDuration" + | "setRewardsDuration" + | "stake" + | "stakeEscrow" + | "supplySchedule" + | "token" + | "totalSupply" + | "unpauseStakingRewards" + | "unstake" + | "unstakeEscrow" + | "userRewardPerTokenPaid" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "_totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "earned", values: [string]): string; + encodeFunctionData( + functionFragment: "escrowedBalanceOf", + values: [string] + ): string; + encodeFunctionData(functionFragment: "exit", values?: undefined): string; + encodeFunctionData(functionFragment: "getReward", values?: undefined): string; + encodeFunctionData( + functionFragment: "getRewardForDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastTimeRewardApplicable", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastUpdateTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nonEscrowedBalanceOf", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "notifyRewardAmount", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "pauseStakingRewards", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData( + functionFragment: "periodFinish", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recoverERC20", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerTokenStored", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardRate", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "rewards", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardsDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setRewardsDuration", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "stakeEscrow", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "supplySchedule", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unpauseStakingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unstake", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unstakeEscrow", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "userRewardPerTokenPaid", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "_totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "escrowedBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getRewardForDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastTimeRewardApplicable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastUpdateTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nonEscrowedBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyRewardAmount", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "pauseStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "periodFinish", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recoverERC20", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerTokenStored", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setRewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "stakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supplySchedule", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unpauseStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "unstake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "unstakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "userRewardPerTokenPaid", + data: BytesLike + ): Result; + + events: { + "EscrowStaked(address,uint256)": EventFragment; + "EscrowUnstaked(address,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Paused(address)": EventFragment; + "Recovered(address,uint256)": EventFragment; + "RewardAdded(uint256)": EventFragment; + "RewardPaid(address,uint256)": EventFragment; + "RewardsDurationUpdated(uint256)": EventFragment; + "Staked(address,uint256)": EventFragment; + "Unpaused(address)": EventFragment; + "Unstaked(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "EscrowStaked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "EscrowUnstaked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Unstaked"): EventFragment; } export interface EscrowStakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type EscrowStakedEvent = TypedEvent<[string, BigNumber], EscrowStakedEventObject> +export type EscrowStakedEvent = TypedEvent< + [string, BigNumber], + EscrowStakedEventObject +>; -export type EscrowStakedEventFilter = TypedEventFilter +export type EscrowStakedEventFilter = TypedEventFilter; export interface EscrowUnstakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type EscrowUnstakedEvent = TypedEvent<[string, BigNumber], EscrowUnstakedEventObject> +export type EscrowUnstakedEvent = TypedEvent< + [string, BigNumber], + EscrowUnstakedEventObject +>; -export type EscrowUnstakedEventFilter = TypedEventFilter +export type EscrowUnstakedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PausedEventObject { - account: string + account: string; } -export type PausedEvent = TypedEvent<[string], PausedEventObject> +export type PausedEvent = TypedEvent<[string], PausedEventObject>; -export type PausedEventFilter = TypedEventFilter +export type PausedEventFilter = TypedEventFilter; export interface RecoveredEventObject { - token: string - amount: BigNumber + token: string; + amount: BigNumber; } -export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> +export type RecoveredEvent = TypedEvent< + [string, BigNumber], + RecoveredEventObject +>; -export type RecoveredEventFilter = TypedEventFilter +export type RecoveredEventFilter = TypedEventFilter; export interface RewardAddedEventObject { - reward: BigNumber + reward: BigNumber; } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; -export type RewardAddedEventFilter = TypedEventFilter +export type RewardAddedEventFilter = TypedEventFilter; export interface RewardPaidEventObject { - user: string - reward: BigNumber + user: string; + reward: BigNumber; } -export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> +export type RewardPaidEvent = TypedEvent< + [string, BigNumber], + RewardPaidEventObject +>; -export type RewardPaidEventFilter = TypedEventFilter +export type RewardPaidEventFilter = TypedEventFilter; export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber + newDuration: BigNumber; } -export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> +export type RewardsDurationUpdatedEvent = TypedEvent< + [BigNumber], + RewardsDurationUpdatedEventObject +>; -export type RewardsDurationUpdatedEventFilter = TypedEventFilter +export type RewardsDurationUpdatedEventFilter = + TypedEventFilter; export interface StakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; -export type StakedEventFilter = TypedEventFilter +export type StakedEventFilter = TypedEventFilter; export interface UnpausedEventObject { - account: string + account: string; } -export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject> +export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject>; -export type UnpausedEventFilter = TypedEventFilter +export type UnpausedEventFilter = TypedEventFilter; export interface UnstakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type UnstakedEvent = TypedEvent<[string, BigNumber], UnstakedEventObject> +export type UnstakedEvent = TypedEvent< + [string, BigNumber], + UnstakedEventObject +>; -export type UnstakedEventFilter = TypedEventFilter +export type UnstakedEventFilter = TypedEventFilter; export interface KwentaStakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: KwentaStakingRewardsInterface + interface: KwentaStakingRewardsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + functions: { + _totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - exit(overrides?: Overrides & { from?: string }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise<[boolean]> + paused(overrides?: CallOverrides): Promise<[boolean]>; - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise<[string]> + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; - rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise<[string]> + supplySchedule(overrides?: CallOverrides): Promise<[string]>; - token(overrides?: CallOverrides): Promise<[string]> + token(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; - _totalSupply(overrides?: CallOverrides): Promise + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - callStatic: { - _totalSupply(overrides?: CallOverrides): Promise + callStatic: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: CallOverrides): Promise + acceptOwnership(overrides?: CallOverrides): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: CallOverrides): Promise + exit(overrides?: CallOverrides): Promise; - getReward(overrides?: CallOverrides): Promise + getReward(overrides?: CallOverrides): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount(reward: BigNumberish, overrides?: CallOverrides): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards(overrides?: CallOverrides): Promise + pauseStakingRewards(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: CallOverrides - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration(_rewardsDuration: BigNumberish, overrides?: CallOverrides): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: CallOverrides + ): Promise; - stake(amount: BigNumberish, overrides?: CallOverrides): Promise + stake(amount: BigNumberish, overrides?: CallOverrides): Promise; - stakeEscrow(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards(overrides?: CallOverrides): Promise + unpauseStakingRewards(overrides?: CallOverrides): Promise; - unstake(amount: BigNumberish, overrides?: CallOverrides): Promise + unstake(amount: BigNumberish, overrides?: CallOverrides): Promise; - unstakeEscrow(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; - filters: { - 'EscrowStaked(address,uint256)'(user?: string | null, amount?: null): EscrowStakedEventFilter - EscrowStaked(user?: string | null, amount?: null): EscrowStakedEventFilter + filters: { + "EscrowStaked(address,uint256)"( + user?: string | null, + amount?: null + ): EscrowStakedEventFilter; + EscrowStaked(user?: string | null, amount?: null): EscrowStakedEventFilter; - 'EscrowUnstaked(address,uint256)'(user?: null, amount?: null): EscrowUnstakedEventFilter - EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter + "EscrowUnstaked(address,uint256)"( + user?: null, + amount?: null + ): EscrowUnstakedEventFilter; + EscrowUnstaked(user?: null, amount?: null): EscrowUnstakedEventFilter; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'Paused(address)'(account?: null): PausedEventFilter - Paused(account?: null): PausedEventFilter + "Paused(address)"(account?: null): PausedEventFilter; + Paused(account?: null): PausedEventFilter; - 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter - Recovered(token?: null, amount?: null): RecoveredEventFilter + "Recovered(address,uint256)"( + token?: null, + amount?: null + ): RecoveredEventFilter; + Recovered(token?: null, amount?: null): RecoveredEventFilter; - 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter - RewardAdded(reward?: null): RewardAddedEventFilter + "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; + RewardAdded(reward?: null): RewardAddedEventFilter; - 'RewardPaid(address,uint256)'(user?: string | null, reward?: null): RewardPaidEventFilter - RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter + "RewardPaid(address,uint256)"( + user?: string | null, + reward?: null + ): RewardPaidEventFilter; + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; - 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter - RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter + "RewardsDurationUpdated(uint256)"( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; + RewardsDurationUpdated( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; - 'Staked(address,uint256)'(user?: string | null, amount?: null): StakedEventFilter - Staked(user?: string | null, amount?: null): StakedEventFilter + "Staked(address,uint256)"( + user?: string | null, + amount?: null + ): StakedEventFilter; + Staked(user?: string | null, amount?: null): StakedEventFilter; - 'Unpaused(address)'(account?: null): UnpausedEventFilter - Unpaused(account?: null): UnpausedEventFilter + "Unpaused(address)"(account?: null): UnpausedEventFilter; + Unpaused(account?: null): UnpausedEventFilter; - 'Unstaked(address,uint256)'(user?: string | null, amount?: null): UnstakedEventFilter - Unstaked(user?: string | null, amount?: null): UnstakedEventFilter - } + "Unstaked(address,uint256)"( + user?: string | null, + amount?: null + ): UnstakedEventFilter; + Unstaked(user?: string | null, amount?: null): UnstakedEventFilter; + }; - estimateGas: { - _totalSupply(overrides?: CallOverrides): Promise + estimateGas: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward(overrides?: Overrides & { from?: string }): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; - populateTransaction: { - _totalSupply(overrides?: CallOverrides): Promise + populateTransaction: { + _totalSupply(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned( + account: string, + overrides?: CallOverrides + ): Promise; - escrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + escrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration( + overrides?: CallOverrides + ): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable( + overrides?: CallOverrides + ): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - nonEscrowedBalanceOf(account: string, overrides?: CallOverrides): Promise + nonEscrowedBalanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - pauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + pauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored( + overrides?: CallOverrides + ): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards( + arg0: string, + overrides?: CallOverrides + ): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - supplySchedule(overrides?: CallOverrides): Promise + supplySchedule(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - unpauseStakingRewards(overrides?: Overrides & { from?: string }): Promise + unpauseStakingRewards( + overrides?: Overrides & { from?: string } + ): Promise; - unstake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - unstakeEscrow( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + unstakeEscrow( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise - } + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts index c4e5ef3ecc..4996cd20f4 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributor.ts @@ -2,399 +2,515 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish - account: string - amount: BigNumberish - merkleProof: BytesLike[] - epoch: BigNumberish - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface MultipleMerkleDistributorInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'distributionEpoch()': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'newMerkleRoot(bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'distributionEpoch' - | 'isClaimed' - | 'merkleRoots' - | 'newMerkleRoot' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rewardEscrow' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData(functionFragment: 'distributionEpoch', values?: undefined): string - encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'newMerkleRoot', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'distributionEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'newMerkleRoot', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootAdded(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "distributionEpoch()": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "newMerkleRoot(bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "distributionEpoch" + | "isClaimed" + | "merkleRoots" + | "newMerkleRoot" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rewardEscrow" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "distributionEpoch", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "newMerkleRoot", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "distributionEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "newMerkleRoot", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootAdded(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootAddedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootAddedEvent = TypedEvent<[BigNumber], MerkleRootAddedEventObject> +export type MerkleRootAddedEvent = TypedEvent< + [BigNumber], + MerkleRootAddedEventObject +>; -export type MerkleRootAddedEventFilter = TypedEventFilter +export type MerkleRootAddedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributor extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]> - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rewardEscrow(overrides?: CallOverrides): Promise<[string]> - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - newMerkleRoot(_merkleRoot: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootAdded(uint256)'(epoch?: null): MerkleRootAddedEventFilter - MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - distributionEpoch(overrides?: CallOverrides): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - newMerkleRoot( - _merkleRoot: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise<[BigNumber]>; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootAdded(uint256)"(epoch?: null): MerkleRootAddedEventFilter; + MerkleRootAdded(epoch?: null): MerkleRootAddedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + distributionEpoch(overrides?: CallOverrides): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + newMerkleRoot( + _merkleRoot: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts index 82fbe0569b..87616c572c 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorOp.ts @@ -2,382 +2,481 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish - account: string - amount: BigNumberish - merkleProof: BytesLike[] - epoch: BigNumberish - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } export interface MultipleMerkleDistributorOpInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'isClaimed' - | 'merkleRoots' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'setMerkleRootForEpoch' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData( - functionFragment: 'setMerkleRootForEpoch', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootModified(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "isClaimed" + | "merkleRoots" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "setMerkleRootForEpoch" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMerkleRootForEpoch", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMerkleRootForEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootModified(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootModifiedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> +export type MerkleRootModifiedEvent = TypedEvent< + [BigNumber], + MerkleRootModifiedEventObject +>; -export type MerkleRootModifiedEventFilter = TypedEventFilter +export type MerkleRootModifiedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributorOp extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorOpInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorOpInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts index a9967ab9bb..ba84317629 100644 --- a/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts +++ b/packages/sdk/src/contracts/types/MultipleMerkleDistributorPerpsV2.ts @@ -2,396 +2,502 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IMultipleMerkleDistributor { - export type ClaimsStruct = { - index: BigNumberish - account: string - amount: BigNumberish - merkleProof: BytesLike[] - epoch: BigNumberish - } - - export type ClaimsStructOutput = [BigNumber, string, BigNumber, string[], BigNumber] & { - index: BigNumber - account: string - amount: BigNumber - merkleProof: string[] - epoch: BigNumber - } + export type ClaimsStruct = { + index: BigNumberish; + account: string; + amount: BigNumberish; + merkleProof: BytesLike[]; + epoch: BigNumberish; + }; + + export type ClaimsStructOutput = [ + BigNumber, + string, + BigNumber, + string[], + BigNumber + ] & { + index: BigNumber; + account: string; + amount: BigNumber; + merkleProof: string[]; + epoch: BigNumber; + }; } -export interface MultipleMerkleDistributorPerpsV2Interface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'claim(uint256,address,uint256,bytes32[],uint256)': FunctionFragment - 'claimMultiple((uint256,address,uint256,bytes32[],uint256)[])': FunctionFragment - 'isClaimed(uint256,uint256)': FunctionFragment - 'merkleRoots(uint256)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'setMerkleRootForEpoch(bytes32,uint256)': FunctionFragment - 'token()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'claim' - | 'claimMultiple' - | 'isClaimed' - | 'merkleRoots' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rewardEscrow' - | 'setMerkleRootForEpoch' - | 'token' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'claim', - values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'claimMultiple', - values: [IMultipleMerkleDistributor.ClaimsStruct[]] - ): string - encodeFunctionData(functionFragment: 'isClaimed', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'merkleRoots', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData( - functionFragment: 'setMerkleRootForEpoch', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'claimMultiple', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isClaimed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'merkleRoots', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMerkleRootForEpoch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - - events: { - 'Claimed(uint256,address,uint256,uint256)': EventFragment - 'MerkleRootModified(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Claimed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MerkleRootModified'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment +export interface MultipleMerkleDistributorPerpsV2Interface + extends utils.Interface { + functions: { + "acceptOwnership()": FunctionFragment; + "claim(uint256,address,uint256,bytes32[],uint256)": FunctionFragment; + "claimMultiple((uint256,address,uint256,bytes32[],uint256)[])": FunctionFragment; + "isClaimed(uint256,uint256)": FunctionFragment; + "merkleRoots(uint256)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "setMerkleRootForEpoch(bytes32,uint256)": FunctionFragment; + "token()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "claim" + | "claimMultiple" + | "isClaimed" + | "merkleRoots" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rewardEscrow" + | "setMerkleRootForEpoch" + | "token" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "claim", + values: [BigNumberish, string, BigNumberish, BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "claimMultiple", + values: [IMultipleMerkleDistributor.ClaimsStruct[]] + ): string; + encodeFunctionData( + functionFragment: "isClaimed", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "merkleRoots", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setMerkleRootForEpoch", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "claimMultiple", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isClaimed", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "merkleRoots", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMerkleRootForEpoch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + + events: { + "Claimed(uint256,address,uint256,uint256)": EventFragment; + "MerkleRootModified(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Claimed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MerkleRootModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface ClaimedEventObject { - index: BigNumber - account: string - amount: BigNumber - epoch: BigNumber + index: BigNumber; + account: string; + amount: BigNumber; + epoch: BigNumber; } -export type ClaimedEvent = TypedEvent<[BigNumber, string, BigNumber, BigNumber], ClaimedEventObject> +export type ClaimedEvent = TypedEvent< + [BigNumber, string, BigNumber, BigNumber], + ClaimedEventObject +>; -export type ClaimedEventFilter = TypedEventFilter +export type ClaimedEventFilter = TypedEventFilter; export interface MerkleRootModifiedEventObject { - epoch: BigNumber + epoch: BigNumber; } -export type MerkleRootModifiedEvent = TypedEvent<[BigNumber], MerkleRootModifiedEventObject> +export type MerkleRootModifiedEvent = TypedEvent< + [BigNumber], + MerkleRootModifiedEventObject +>; -export type MerkleRootModifiedEventFilter = TypedEventFilter +export type MerkleRootModifiedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface MultipleMerkleDistributorPerpsV2 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: MultipleMerkleDistributorPerpsV2Interface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean]> - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rewardEscrow(overrides?: CallOverrides): Promise<[string]> - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise<[string]> - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: CallOverrides - ): Promise - - isClaimed(index: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - token(overrides?: CallOverrides): Promise - } - - filters: { - 'Claimed(uint256,address,uint256,uint256)'( - index?: null, - account?: null, - amount?: null, - epoch?: null - ): ClaimedEventFilter - Claimed(index?: null, account?: null, amount?: null, epoch?: null): ClaimedEventFilter - - 'MerkleRootModified(uint256)'(epoch?: null): MerkleRootModifiedEventFilter - MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - } - - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - claim( - index: BigNumberish, - account: string, - amount: BigNumberish, - merkleProof: BytesLike[], - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - claimMultiple( - claims: IMultipleMerkleDistributor.ClaimsStruct[], - overrides?: Overrides & { from?: string } - ): Promise - - isClaimed( - index: BigNumberish, - epoch: BigNumberish, - overrides?: CallOverrides - ): Promise - - merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rewardEscrow(overrides?: CallOverrides): Promise - - setMerkleRootForEpoch( - merkleRoot: BytesLike, - epoch: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - token(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: MultipleMerkleDistributorPerpsV2Interface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean]>; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise<[string]>; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: CallOverrides + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots(arg0: BigNumberish, overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + filters: { + "Claimed(uint256,address,uint256,uint256)"( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + Claimed( + index?: null, + account?: null, + amount?: null, + epoch?: null + ): ClaimedEventFilter; + + "MerkleRootModified(uint256)"(epoch?: null): MerkleRootModifiedEventFilter; + MerkleRootModified(epoch?: null): MerkleRootModifiedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + claim( + index: BigNumberish, + account: string, + amount: BigNumberish, + merkleProof: BytesLike[], + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + claimMultiple( + claims: IMultipleMerkleDistributor.ClaimsStruct[], + overrides?: Overrides & { from?: string } + ): Promise; + + isClaimed( + index: BigNumberish, + epoch: BigNumberish, + overrides?: CallOverrides + ): Promise; + + merkleRoots( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rewardEscrow(overrides?: CallOverrides): Promise; + + setMerkleRootForEpoch( + merkleRoot: BytesLike, + epoch: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + token(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2Market.ts b/packages/sdk/src/contracts/types/PerpsV2Market.ts index 12a9fb7288..2d7ed6c78f 100644 --- a/packages/sdk/src/contracts/types/PerpsV2Market.ts +++ b/packages/sdk/src/contracts/types/PerpsV2Market.ts @@ -2,1615 +2,2039 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: boolean - sizeDelta: BigNumberish - desiredFillPrice: BigNumberish - targetRoundId: BigNumberish - commitDeposit: BigNumberish - keeperDeposit: BigNumberish - executableAtTime: BigNumberish - intentionTime: BigNumberish - trackingCode: BytesLike - } - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean - sizeDelta: BigNumber - desiredFillPrice: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - executableAtTime: BigNumber - intentionTime: BigNumber - trackingCode: string - } - - export type PositionStruct = { - id: BigNumberish - lastFundingIndex: BigNumberish - margin: BigNumberish - lastPrice: BigNumberish - size: BigNumberish - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type DelayedOrderStruct = { + isOffchain: boolean; + sizeDelta: BigNumberish; + desiredFillPrice: BigNumberish; + targetRoundId: BigNumberish; + commitDeposit: BigNumberish; + keeperDeposit: BigNumberish; + executableAtTime: BigNumberish; + intentionTime: BigNumberish; + trackingCode: BytesLike; + }; + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean; + sizeDelta: BigNumber; + desiredFillPrice: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + executableAtTime: BigNumber; + intentionTime: BigNumber; + trackingCode: string; + }; + + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketInterface extends utils.Interface { - functions: { - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'cancelDelayedOrder(address)': FunctionFragment - 'cancelOffchainDelayedOrder(address)': FunctionFragment - 'closePosition(uint256)': FunctionFragment - 'closePositionWithTracking(uint256,bytes32)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'currentFundingVelocity()': FunctionFragment - 'delayedOrders(address)': FunctionFragment - 'executeDelayedOrder(address)': FunctionFragment - 'executeOffchainDelayedOrder(address,bytes[])': FunctionFragment - 'fillPrice(int256)': FunctionFragment - 'flagPosition(address)': FunctionFragment - 'forceLiquidatePosition(address)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingRateLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isFlagged(address)': FunctionFragment - 'liquidatePosition(address)': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'modifyPosition(int256,uint256)': FunctionFragment - 'modifyPositionWithTracking(int256,uint256,bytes32)': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256,uint8)': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'recomputeFunding()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)': FunctionFragment - 'submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)': FunctionFragment - 'submitDelayedOrder(int256,uint256,uint256)': FunctionFragment - 'submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)': FunctionFragment - 'submitOffchainDelayedOrder(int256,uint256)': FunctionFragment - 'submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)': FunctionFragment - 'transferMargin(int256)': FunctionFragment - 'unrecordedFunding()': FunctionFragment - 'withdrawAllMargin()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'cancelDelayedOrder' - | 'cancelOffchainDelayedOrder' - | 'closePosition' - | 'closePositionWithTracking' - | 'currentFundingRate' - | 'currentFundingVelocity' - | 'delayedOrders' - | 'executeDelayedOrder' - | 'executeOffchainDelayedOrder' - | 'fillPrice' - | 'flagPosition' - | 'forceLiquidatePosition' - | 'fundingLastRecomputed' - | 'fundingRateLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isFlagged' - | 'liquidatePosition' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'modifyPosition' - | 'modifyPositionWithTracking' - | 'notionalValue' - | 'orderFee' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'recomputeFunding' - | 'remainingMargin' - | 'submitCloseDelayedOrderWithTracking' - | 'submitCloseOffchainDelayedOrderWithTracking' - | 'submitDelayedOrder' - | 'submitDelayedOrderWithTracking' - | 'submitOffchainDelayedOrder' - | 'submitOffchainDelayedOrderWithTracking' - | 'transferMargin' - | 'unrecordedFunding' - | 'withdrawAllMargin' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string - encodeFunctionData(functionFragment: 'cancelDelayedOrder', values: [string]): string - encodeFunctionData(functionFragment: 'cancelOffchainDelayedOrder', values: [string]): string - encodeFunctionData(functionFragment: 'closePosition', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'closePositionWithTracking', - values: [BigNumberish, BytesLike] - ): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string - encodeFunctionData(functionFragment: 'delayedOrders', values: [string]): string - encodeFunctionData(functionFragment: 'executeDelayedOrder', values: [string]): string - encodeFunctionData( - functionFragment: 'executeOffchainDelayedOrder', - values: [string, BytesLike[]] - ): string - encodeFunctionData(functionFragment: 'fillPrice', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'flagPosition', values: [string]): string - encodeFunctionData(functionFragment: 'forceLiquidatePosition', values: [string]): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData(functionFragment: 'fundingRateLastRecomputed', values?: undefined): string - encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isFlagged', values: [string]): string - encodeFunctionData(functionFragment: 'liquidatePosition', values: [string]): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData( - functionFragment: 'modifyPosition', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'modifyPositionWithTracking', - values: [BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string - encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'positions', values: [string]): string - encodeFunctionData( - functionFragment: 'postTradeDetails', - values: [BigNumberish, BigNumberish, BigNumberish, string] - ): string - encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string - encodeFunctionData(functionFragment: 'recomputeFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string - encodeFunctionData( - functionFragment: 'submitCloseDelayedOrderWithTracking', - values: [BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', - values: [BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'submitDelayedOrder', - values: [BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'submitDelayedOrderWithTracking', - values: [BigNumberish, BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'submitOffchainDelayedOrder', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'submitOffchainDelayedOrderWithTracking', - values: [BigNumberish, BigNumberish, BytesLike] - ): string - encodeFunctionData(functionFragment: 'transferMargin', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - encodeFunctionData(functionFragment: 'withdrawAllMargin', values?: undefined): string - - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'closePositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'delayedOrders', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'flagPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'forceLiquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingRateLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isFlagged', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidatePosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyPositionWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recomputeFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitCloseDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'submitCloseOffchainDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'submitDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitDelayedOrderWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'submitOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'submitOffchainDelayedOrderWithTracking', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'transferMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawAllMargin', data: BytesLike): Result - - events: { - 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)': EventFragment - 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)': EventFragment - 'FundingRecomputed(int256,int256,uint256,uint256)': EventFragment - 'MarginTransferred(address,int256)': EventFragment - 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)': EventFragment - 'PositionFlagged(uint256,address,address,uint256)': EventFragment - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)': EventFragment - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'DelayedOrderRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DelayedOrderSubmitted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FundingRecomputed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarginTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PerpsTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionFlagged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PositionModified'): EventFragment + functions: { + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "cancelDelayedOrder(address)": FunctionFragment; + "cancelOffchainDelayedOrder(address)": FunctionFragment; + "closePosition(uint256)": FunctionFragment; + "closePositionWithTracking(uint256,bytes32)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "currentFundingVelocity()": FunctionFragment; + "delayedOrders(address)": FunctionFragment; + "executeDelayedOrder(address)": FunctionFragment; + "executeOffchainDelayedOrder(address,bytes[])": FunctionFragment; + "fillPrice(int256)": FunctionFragment; + "flagPosition(address)": FunctionFragment; + "forceLiquidatePosition(address)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingRateLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isFlagged(address)": FunctionFragment; + "liquidatePosition(address)": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "modifyPosition(int256,uint256)": FunctionFragment; + "modifyPositionWithTracking(int256,uint256,bytes32)": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256,uint8)": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "recomputeFunding()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "submitCloseDelayedOrderWithTracking(uint256,uint256,bytes32)": FunctionFragment; + "submitCloseOffchainDelayedOrderWithTracking(uint256,bytes32)": FunctionFragment; + "submitDelayedOrder(int256,uint256,uint256)": FunctionFragment; + "submitDelayedOrderWithTracking(int256,uint256,uint256,bytes32)": FunctionFragment; + "submitOffchainDelayedOrder(int256,uint256)": FunctionFragment; + "submitOffchainDelayedOrderWithTracking(int256,uint256,bytes32)": FunctionFragment; + "transferMargin(int256)": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + "withdrawAllMargin()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "cancelDelayedOrder" + | "cancelOffchainDelayedOrder" + | "closePosition" + | "closePositionWithTracking" + | "currentFundingRate" + | "currentFundingVelocity" + | "delayedOrders" + | "executeDelayedOrder" + | "executeOffchainDelayedOrder" + | "fillPrice" + | "flagPosition" + | "forceLiquidatePosition" + | "fundingLastRecomputed" + | "fundingRateLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isFlagged" + | "liquidatePosition" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "modifyPosition" + | "modifyPositionWithTracking" + | "notionalValue" + | "orderFee" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "recomputeFunding" + | "remainingMargin" + | "submitCloseDelayedOrderWithTracking" + | "submitCloseOffchainDelayedOrderWithTracking" + | "submitDelayedOrder" + | "submitDelayedOrderWithTracking" + | "submitOffchainDelayedOrder" + | "submitOffchainDelayedOrderWithTracking" + | "transferMargin" + | "unrecordedFunding" + | "withdrawAllMargin" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "cancelOffchainDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "closePosition", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "closePositionWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "delayedOrders", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "executeDelayedOrder", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "executeOffchainDelayedOrder", + values: [string, BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "flagPosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "forceLiquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingRateLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "isFlagged", values: [string]): string; + encodeFunctionData( + functionFragment: "liquidatePosition", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "modifyPosition", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyPositionWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "recomputeFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "submitCloseDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitCloseOffchainDelayedOrderWithTracking", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitDelayedOrder", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "submitOffchainDelayedOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "submitOffchainDelayedOrderWithTracking", + values: [BigNumberish, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "transferMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "withdrawAllMargin", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "cancelOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "closePositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "delayedOrders", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "executeOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "flagPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "forceLiquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingRateLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isFlagged", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "liquidatePosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "modifyPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyPositionWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "recomputeFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitCloseDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitCloseOffchainDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "submitOffchainDelayedOrderWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawAllMargin", + data: BytesLike + ): Result; + + events: { + "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)": EventFragment; + "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)": EventFragment; + "FundingRecomputed(int256,int256,uint256,uint256)": EventFragment; + "MarginTransferred(address,int256)": EventFragment; + "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)": EventFragment; + "PositionFlagged(uint256,address,address,uint256)": EventFragment; + "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)": EventFragment; + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "DelayedOrderRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "DelayedOrderSubmitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingRecomputed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarginTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PerpsTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionFlagged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PositionModified"): EventFragment; } export interface DelayedOrderRemovedEventObject { - account: string - isOffchain: boolean - currentRoundId: BigNumber - sizeDelta: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + isOffchain: boolean; + currentRoundId: BigNumber; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type DelayedOrderRemovedEvent = TypedEvent< - [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - DelayedOrderRemovedEventObject -> - -export type DelayedOrderRemovedEventFilter = TypedEventFilter + [ + string, + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ], + DelayedOrderRemovedEventObject +>; + +export type DelayedOrderRemovedEventFilter = + TypedEventFilter; export interface DelayedOrderSubmittedEventObject { - account: string - isOffchain: boolean - sizeDelta: BigNumber - targetRoundId: BigNumber - intentionTime: BigNumber - executableAtTime: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - trackingCode: string + account: string; + isOffchain: boolean; + sizeDelta: BigNumber; + targetRoundId: BigNumber; + intentionTime: BigNumber; + executableAtTime: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + trackingCode: string; } export type DelayedOrderSubmittedEvent = TypedEvent< - [string, boolean, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string], - DelayedOrderSubmittedEventObject -> - -export type DelayedOrderSubmittedEventFilter = TypedEventFilter + [ + string, + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ], + DelayedOrderSubmittedEventObject +>; + +export type DelayedOrderSubmittedEventFilter = + TypedEventFilter; export interface FundingRecomputedEventObject { - funding: BigNumber - fundingRate: BigNumber - index: BigNumber - timestamp: BigNumber + funding: BigNumber; + fundingRate: BigNumber; + index: BigNumber; + timestamp: BigNumber; } export type FundingRecomputedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber], - FundingRecomputedEventObject -> + [BigNumber, BigNumber, BigNumber, BigNumber], + FundingRecomputedEventObject +>; -export type FundingRecomputedEventFilter = TypedEventFilter +export type FundingRecomputedEventFilter = + TypedEventFilter; export interface MarginTransferredEventObject { - account: string - marginDelta: BigNumber + account: string; + marginDelta: BigNumber; } -export type MarginTransferredEvent = TypedEvent<[string, BigNumber], MarginTransferredEventObject> +export type MarginTransferredEvent = TypedEvent< + [string, BigNumber], + MarginTransferredEventObject +>; -export type MarginTransferredEventFilter = TypedEventFilter +export type MarginTransferredEventFilter = + TypedEventFilter; export interface PerpsTrackingEventObject { - trackingCode: string - baseAsset: string - marketKey: string - sizeDelta: BigNumber - fee: BigNumber + trackingCode: string; + baseAsset: string; + marketKey: string; + sizeDelta: BigNumber; + fee: BigNumber; } export type PerpsTrackingEvent = TypedEvent< - [string, string, string, BigNumber, BigNumber], - PerpsTrackingEventObject -> + [string, string, string, BigNumber, BigNumber], + PerpsTrackingEventObject +>; -export type PerpsTrackingEventFilter = TypedEventFilter +export type PerpsTrackingEventFilter = TypedEventFilter; export interface PositionFlaggedEventObject { - id: BigNumber - account: string - flagger: string - timestamp: BigNumber + id: BigNumber; + account: string; + flagger: string; + timestamp: BigNumber; } export type PositionFlaggedEvent = TypedEvent< - [BigNumber, string, string, BigNumber], - PositionFlaggedEventObject -> + [BigNumber, string, string, BigNumber], + PositionFlaggedEventObject +>; -export type PositionFlaggedEventFilter = TypedEventFilter +export type PositionFlaggedEventFilter = TypedEventFilter; export interface PositionLiquidatedEventObject { - id: BigNumber - account: string - liquidator: string - size: BigNumber - price: BigNumber - flaggerFee: BigNumber - liquidatorFee: BigNumber - stakersFee: BigNumber + id: BigNumber; + account: string; + liquidator: string; + size: BigNumber; + price: BigNumber; + flaggerFee: BigNumber; + liquidatorFee: BigNumber; + stakersFee: BigNumber; } export type PositionLiquidatedEvent = TypedEvent< - [BigNumber, string, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionLiquidatedEventObject -> - -export type PositionLiquidatedEventFilter = TypedEventFilter + [ + BigNumber, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionLiquidatedEventObject +>; + +export type PositionLiquidatedEventFilter = + TypedEventFilter; export interface PositionModifiedEventObject { - id: BigNumber - account: string - margin: BigNumber - size: BigNumber - tradeSize: BigNumber - lastPrice: BigNumber - fundingIndex: BigNumber - fee: BigNumber - skew: BigNumber + id: BigNumber; + account: string; + margin: BigNumber; + size: BigNumber; + tradeSize: BigNumber; + lastPrice: BigNumber; + fundingIndex: BigNumber; + fee: BigNumber; + skew: BigNumber; } export type PositionModifiedEvent = TypedEvent< - [BigNumber, string, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - PositionModifiedEventObject -> - -export type PositionModifiedEventFilter = TypedEventFilter + [ + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ], + PositionModifiedEventObject +>; + +export type PositionModifiedEventFilter = + TypedEventFilter; export interface PerpsV2Market extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> - - canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber] & { fundingRate: BigNumber }> - - currentFundingVelocity( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingVelocity: BigNumber }> - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]> - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number] & { timestamp: number }> - - fundingRateLastRecomputed( - overrides?: CallOverrides - ): Promise<[BigNumber] & { fundingRate: BigNumber }> - - fundingSequence( - index: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { netFunding: BigNumber }> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber] & { length: BigNumber }> - - isFlagged(account: string, overrides?: CallOverrides): Promise<[boolean]> - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber] & { size: BigNumber }> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber] & { skew: BigNumber }> - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]> - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: string, overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: string, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - - callStatic: { - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelDelayedOrder(account: string, overrides?: CallOverrides): Promise - - cancelOffchainDelayedOrder(account: string, overrides?: CallOverrides): Promise - - closePosition(desiredFillPrice: BigNumberish, overrides?: CallOverrides): Promise - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders( - account: string, - overrides?: CallOverrides - ): Promise - - executeDelayedOrder(account: string, overrides?: CallOverrides): Promise - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: CallOverrides - ): Promise - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - flagPosition(account: string, overrides?: CallOverrides): Promise - - forceLiquidatePosition(account: string, overrides?: CallOverrides): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: string, overrides?: CallOverrides): Promise - - liquidatePosition(account: string, overrides?: CallOverrides): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - positions( - account: string, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - recomputeFunding(overrides?: CallOverrides): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: CallOverrides - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - transferMargin(marginDelta: BigNumberish, overrides?: CallOverrides): Promise - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - withdrawAllMargin(overrides?: CallOverrides): Promise - } - - filters: { - 'DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)'( - account?: string | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter - DelayedOrderRemoved( - account?: string | null, - isOffchain?: null, - currentRoundId?: null, - sizeDelta?: null, - targetRoundId?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderRemovedEventFilter - - 'DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)'( - account?: string | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter - DelayedOrderSubmitted( - account?: string | null, - isOffchain?: null, - sizeDelta?: null, - targetRoundId?: null, - intentionTime?: null, - executableAtTime?: null, - commitDeposit?: null, - keeperDeposit?: null, - trackingCode?: null - ): DelayedOrderSubmittedEventFilter - - 'FundingRecomputed(int256,int256,uint256,uint256)'( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - FundingRecomputed( - funding?: null, - fundingRate?: null, - index?: null, - timestamp?: null - ): FundingRecomputedEventFilter - - 'MarginTransferred(address,int256)'( - account?: string | null, - marginDelta?: null - ): MarginTransferredEventFilter - MarginTransferred(account?: string | null, marginDelta?: null): MarginTransferredEventFilter - - 'PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)'( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter - PerpsTracking( - trackingCode?: BytesLike | null, - baseAsset?: null, - marketKey?: null, - sizeDelta?: null, - fee?: null - ): PerpsTrackingEventFilter - - 'PositionFlagged(uint256,address,address,uint256)'( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter - PositionFlagged( - id?: null, - account?: null, - flagger?: null, - timestamp?: null - ): PositionFlaggedEventFilter - - 'PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)'( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter - PositionLiquidated( - id?: null, - account?: null, - liquidator?: null, - size?: null, - price?: null, - flaggerFee?: null, - liquidatorFee?: null, - stakersFee?: null - ): PositionLiquidatedEventFilter - - 'PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)'( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter - PositionModified( - id?: BigNumberish | null, - account?: string | null, - margin?: null, - size?: null, - tradeSize?: null, - lastPrice?: null, - fundingIndex?: null, - fee?: null, - skew?: null - ): PositionModifiedEventFilter - } - - estimateGas: { - accessibleMargin(account: string, overrides?: CallOverrides): Promise - - accruedFunding(account: string, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders(account: string, overrides?: CallOverrides): Promise - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - - flagPosition(account: string, overrides?: Overrides & { from?: string }): Promise - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: string, overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice(account: string, overrides?: CallOverrides): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - notionalValue(account: string, overrides?: CallOverrides): Promise - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise - - positions(account: string, overrides?: CallOverrides): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise - - profitLoss(account: string, overrides?: CallOverrides): Promise - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin(account: string, overrides?: CallOverrides): Promise - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } - - populateTransaction: { - accessibleMargin(account: string, overrides?: CallOverrides): Promise - - accruedFunding(account: string, overrides?: CallOverrides): Promise - - assetPrice(overrides?: CallOverrides): Promise - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - cancelDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - cancelOffchainDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - closePosition( - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - closePositionWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - delayedOrders(account: string, overrides?: CallOverrides): Promise - - executeDelayedOrder( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - executeOffchainDelayedOrder( - account: string, - priceUpdateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise - - flagPosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - forceLiquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingRateLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isFlagged(account: string, overrides?: CallOverrides): Promise - - liquidatePosition( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice(account: string, overrides?: CallOverrides): Promise - - marketDebt(overrides?: CallOverrides): Promise - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes(overrides?: CallOverrides): Promise - - marketSkew(overrides?: CallOverrides): Promise - - modifyPosition( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - modifyPositionWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - notionalValue(account: string, overrides?: CallOverrides): Promise - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise - - positions(account: string, overrides?: CallOverrides): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise - - profitLoss(account: string, overrides?: CallOverrides): Promise - - recomputeFunding(overrides?: Overrides & { from?: string }): Promise - - remainingMargin(account: string, overrides?: CallOverrides): Promise - - submitCloseDelayedOrderWithTracking( - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitCloseOffchainDelayedOrderWithTracking( - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrder( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredTimeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrder( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - submitOffchainDelayedOrderWithTracking( - sizeDelta: BigNumberish, - desiredFillPrice: BigNumberish, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - transferMargin( - marginDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - unrecordedFunding(overrides?: CallOverrides): Promise - - withdrawAllMargin(overrides?: Overrides & { from?: string }): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV2MarketInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingRate: BigNumber }>; + + currentFundingVelocity( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingVelocity: BigNumber }>; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.DelayedOrderStructOutput]>; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise<[number] & { timestamp: number }>; + + fundingRateLastRecomputed( + overrides?: CallOverrides + ): Promise<[BigNumber] & { fundingRate: BigNumber }>; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { netFunding: BigNumber }>; + + fundingSequenceLength( + overrides?: CallOverrides + ): Promise<[BigNumber] & { length: BigNumber }>; + + isFlagged(account: string, overrides?: CallOverrides): Promise<[boolean]>; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + marketSize( + overrides?: CallOverrides + ): Promise<[BigNumber] & { size: BigNumber }>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew( + overrides?: CallOverrides + ): Promise<[BigNumber] & { skew: BigNumber }>; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketConsolidated.PositionStructOutput]>; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + cancelDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: CallOverrides + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + flagPosition(account: string, overrides?: CallOverrides): Promise; + + forceLiquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; isInvalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; + + recomputeFunding(overrides?: CallOverrides): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: CallOverrides + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + withdrawAllMargin(overrides?: CallOverrides): Promise; + }; + + filters: { + "DelayedOrderRemoved(address,bool,uint256,int256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter; + DelayedOrderRemoved( + account?: string | null, + isOffchain?: null, + currentRoundId?: null, + sizeDelta?: null, + targetRoundId?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderRemovedEventFilter; + + "DelayedOrderSubmitted(address,bool,int256,uint256,uint256,uint256,uint256,uint256,bytes32)"( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter; + DelayedOrderSubmitted( + account?: string | null, + isOffchain?: null, + sizeDelta?: null, + targetRoundId?: null, + intentionTime?: null, + executableAtTime?: null, + commitDeposit?: null, + keeperDeposit?: null, + trackingCode?: null + ): DelayedOrderSubmittedEventFilter; + + "FundingRecomputed(int256,int256,uint256,uint256)"( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + FundingRecomputed( + funding?: null, + fundingRate?: null, + index?: null, + timestamp?: null + ): FundingRecomputedEventFilter; + + "MarginTransferred(address,int256)"( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + MarginTransferred( + account?: string | null, + marginDelta?: null + ): MarginTransferredEventFilter; + + "PerpsTracking(bytes32,bytes32,bytes32,int256,uint256)"( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter; + PerpsTracking( + trackingCode?: BytesLike | null, + baseAsset?: null, + marketKey?: null, + sizeDelta?: null, + fee?: null + ): PerpsTrackingEventFilter; + + "PositionFlagged(uint256,address,address,uint256)"( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter; + PositionFlagged( + id?: null, + account?: null, + flagger?: null, + timestamp?: null + ): PositionFlaggedEventFilter; + + "PositionLiquidated(uint256,address,address,int256,uint256,uint256,uint256,uint256)"( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter; + PositionLiquidated( + id?: null, + account?: null, + liquidator?: null, + size?: null, + price?: null, + flaggerFee?: null, + liquidatorFee?: null, + stakersFee?: null + ): PositionLiquidatedEventFilter; + + "PositionModified(uint256,address,uint256,int256,int256,uint256,uint256,uint256,int256)"( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter; + PositionModified( + id?: BigNumberish | null, + account?: string | null, + margin?: null, + size?: null, + tradeSize?: null, + lastPrice?: null, + fundingIndex?: null, + fee?: null, + skew?: null + ): PositionModifiedEventFilter; + }; + + estimateGas: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingRateLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isFlagged(account: string, overrides?: CallOverrides): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions(account: string, overrides?: CallOverrides): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss(account: string, overrides?: CallOverrides): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; + + assetPrice(overrides?: CallOverrides): Promise; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; + + cancelDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + cancelOffchainDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + closePosition( + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + closePositionWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + currentFundingRate( + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + overrides?: CallOverrides + ): Promise; + + delayedOrders( + account: string, + overrides?: CallOverrides + ): Promise; + + executeDelayedOrder( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + executeOffchainDelayedOrder( + account: string, + priceUpdateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + flagPosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + forceLiquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; + + fundingRateLastRecomputed( + overrides?: CallOverrides + ): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; + + isFlagged( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidatePosition( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; + + marketDebt(overrides?: CallOverrides): Promise; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes(overrides?: CallOverrides): Promise; + + marketSkew(overrides?: CallOverrides): Promise; + + modifyPosition( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + modifyPositionWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; + + positions( + account: string, + overrides?: CallOverrides + ): Promise; + + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; + + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; + + recomputeFunding( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; + + submitCloseDelayedOrderWithTracking( + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitCloseOffchainDelayedOrderWithTracking( + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrder( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredTimeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrder( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + submitOffchainDelayedOrderWithTracking( + sizeDelta: BigNumberish, + desiredFillPrice: BigNumberish, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + transferMargin( + marginDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + unrecordedFunding(overrides?: CallOverrides): Promise; + + withdrawAllMargin( + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts index 52b0fdd28b..cc4cc45a4e 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketData.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketData.ts @@ -2,608 +2,718 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace PerpsV2MarketData { - export type FeeRatesStruct = { - takerFee: BigNumberish - makerFee: BigNumberish - takerFeeDelayedOrder: BigNumberish - makerFeeDelayedOrder: BigNumberish - takerFeeOffchainDelayedOrder: BigNumberish - makerFeeOffchainDelayedOrder: BigNumberish - } - - export type FeeRatesStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeDelayedOrder: BigNumber - makerFeeDelayedOrder: BigNumber - takerFeeOffchainDelayedOrder: BigNumber - makerFeeOffchainDelayedOrder: BigNumber - } - - export type MarketSummaryStruct = { - market: string - asset: BytesLike - key: BytesLike - maxLeverage: BigNumberish - price: BigNumberish - marketSize: BigNumberish - marketSkew: BigNumberish - marketDebt: BigNumberish - currentFundingRate: BigNumberish - currentFundingVelocity: BigNumberish - feeRates: PerpsV2MarketData.FeeRatesStruct - } - - export type MarketSummaryStructOutput = [ - string, - string, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - PerpsV2MarketData.FeeRatesStructOutput - ] & { - market: string - asset: string - key: string - maxLeverage: BigNumber - price: BigNumber - marketSize: BigNumber - marketSkew: BigNumber - marketDebt: BigNumber - currentFundingRate: BigNumber - currentFundingVelocity: BigNumber - feeRates: PerpsV2MarketData.FeeRatesStructOutput - } - - export type FuturesGlobalsStruct = { - minInitialMargin: BigNumberish - liquidationFeeRatio: BigNumberish - minKeeperFee: BigNumberish - maxKeeperFee: BigNumberish - } - - export type FuturesGlobalsStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & { - minInitialMargin: BigNumber - liquidationFeeRatio: BigNumber - minKeeperFee: BigNumber - maxKeeperFee: BigNumber - } - - export type MarketLimitsStruct = { - maxLeverage: BigNumberish - maxMarketValue: BigNumberish - } - - export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { - maxLeverage: BigNumber - maxMarketValue: BigNumber - } - - export type FundingParametersStruct = { - maxFundingVelocity: BigNumberish - skewScale: BigNumberish - } - - export type FundingParametersStructOutput = [BigNumber, BigNumber] & { - maxFundingVelocity: BigNumber - skewScale: BigNumber - } - - export type SidesStruct = { long: BigNumberish; short: BigNumberish } - - export type SidesStructOutput = [BigNumber, BigNumber] & { - long: BigNumber - short: BigNumber - } - - export type MarketSizeDetailsStruct = { - marketSize: BigNumberish - sides: PerpsV2MarketData.SidesStruct - marketDebt: BigNumberish - marketSkew: BigNumberish - } - - export type MarketSizeDetailsStructOutput = [ - BigNumber, - PerpsV2MarketData.SidesStructOutput, - BigNumber, - BigNumber - ] & { - marketSize: BigNumber - sides: PerpsV2MarketData.SidesStructOutput - marketDebt: BigNumber - marketSkew: BigNumber - } - - export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean } - - export type PriceDetailsStructOutput = [BigNumber, boolean] & { - price: BigNumber - invalid: boolean - } - - export type MarketDataStruct = { - market: string - baseAsset: BytesLike - marketKey: BytesLike - feeRates: PerpsV2MarketData.FeeRatesStruct - limits: PerpsV2MarketData.MarketLimitsStruct - fundingParameters: PerpsV2MarketData.FundingParametersStruct - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct - priceDetails: PerpsV2MarketData.PriceDetailsStruct - } - - export type MarketDataStructOutput = [ - string, - string, - string, - PerpsV2MarketData.FeeRatesStructOutput, - PerpsV2MarketData.MarketLimitsStructOutput, - PerpsV2MarketData.FundingParametersStructOutput, - PerpsV2MarketData.MarketSizeDetailsStructOutput, - PerpsV2MarketData.PriceDetailsStructOutput - ] & { - market: string - baseAsset: string - marketKey: string - feeRates: PerpsV2MarketData.FeeRatesStructOutput - limits: PerpsV2MarketData.MarketLimitsStructOutput - fundingParameters: PerpsV2MarketData.FundingParametersStructOutput - marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput - priceDetails: PerpsV2MarketData.PriceDetailsStructOutput - } - - export type PositionDataStruct = { - position: IPerpsV2MarketBaseTypes.PositionStruct - notionalValue: BigNumberish - profitLoss: BigNumberish - accruedFunding: BigNumberish - remainingMargin: BigNumberish - accessibleMargin: BigNumberish - liquidationPrice: BigNumberish - canLiquidatePosition: boolean - } - - export type PositionDataStructOutput = [ - IPerpsV2MarketBaseTypes.PositionStructOutput, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - boolean - ] & { - position: IPerpsV2MarketBaseTypes.PositionStructOutput - notionalValue: BigNumber - profitLoss: BigNumber - accruedFunding: BigNumber - remainingMargin: BigNumber - accessibleMargin: BigNumber - liquidationPrice: BigNumber - canLiquidatePosition: boolean - } + export type FeeRatesStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeDelayedOrder: BigNumberish; + makerFeeDelayedOrder: BigNumberish; + takerFeeOffchainDelayedOrder: BigNumberish; + makerFeeOffchainDelayedOrder: BigNumberish; + }; + + export type FeeRatesStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeDelayedOrder: BigNumber; + makerFeeDelayedOrder: BigNumber; + takerFeeOffchainDelayedOrder: BigNumber; + makerFeeOffchainDelayedOrder: BigNumber; + }; + + export type MarketSummaryStruct = { + market: string; + asset: BytesLike; + key: BytesLike; + maxLeverage: BigNumberish; + price: BigNumberish; + marketSize: BigNumberish; + marketSkew: BigNumberish; + marketDebt: BigNumberish; + currentFundingRate: BigNumberish; + currentFundingVelocity: BigNumberish; + feeRates: PerpsV2MarketData.FeeRatesStruct; + }; + + export type MarketSummaryStructOutput = [ + string, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + PerpsV2MarketData.FeeRatesStructOutput + ] & { + market: string; + asset: string; + key: string; + maxLeverage: BigNumber; + price: BigNumber; + marketSize: BigNumber; + marketSkew: BigNumber; + marketDebt: BigNumber; + currentFundingRate: BigNumber; + currentFundingVelocity: BigNumber; + feeRates: PerpsV2MarketData.FeeRatesStructOutput; + }; + + export type FuturesGlobalsStruct = { + minInitialMargin: BigNumberish; + liquidationFeeRatio: BigNumberish; + minKeeperFee: BigNumberish; + maxKeeperFee: BigNumberish; + }; + + export type FuturesGlobalsStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + minInitialMargin: BigNumber; + liquidationFeeRatio: BigNumber; + minKeeperFee: BigNumber; + maxKeeperFee: BigNumber; + }; + + export type MarketLimitsStruct = { + maxLeverage: BigNumberish; + maxMarketValue: BigNumberish; + }; + + export type MarketLimitsStructOutput = [BigNumber, BigNumber] & { + maxLeverage: BigNumber; + maxMarketValue: BigNumber; + }; + + export type FundingParametersStruct = { + maxFundingVelocity: BigNumberish; + skewScale: BigNumberish; + }; + + export type FundingParametersStructOutput = [BigNumber, BigNumber] & { + maxFundingVelocity: BigNumber; + skewScale: BigNumber; + }; + + export type SidesStruct = { long: BigNumberish; short: BigNumberish }; + + export type SidesStructOutput = [BigNumber, BigNumber] & { + long: BigNumber; + short: BigNumber; + }; + + export type MarketSizeDetailsStruct = { + marketSize: BigNumberish; + sides: PerpsV2MarketData.SidesStruct; + marketDebt: BigNumberish; + marketSkew: BigNumberish; + }; + + export type MarketSizeDetailsStructOutput = [ + BigNumber, + PerpsV2MarketData.SidesStructOutput, + BigNumber, + BigNumber + ] & { + marketSize: BigNumber; + sides: PerpsV2MarketData.SidesStructOutput; + marketDebt: BigNumber; + marketSkew: BigNumber; + }; + + export type PriceDetailsStruct = { price: BigNumberish; invalid: boolean }; + + export type PriceDetailsStructOutput = [BigNumber, boolean] & { + price: BigNumber; + invalid: boolean; + }; + + export type MarketDataStruct = { + market: string; + baseAsset: BytesLike; + marketKey: BytesLike; + feeRates: PerpsV2MarketData.FeeRatesStruct; + limits: PerpsV2MarketData.MarketLimitsStruct; + fundingParameters: PerpsV2MarketData.FundingParametersStruct; + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStruct; + priceDetails: PerpsV2MarketData.PriceDetailsStruct; + }; + + export type MarketDataStructOutput = [ + string, + string, + string, + PerpsV2MarketData.FeeRatesStructOutput, + PerpsV2MarketData.MarketLimitsStructOutput, + PerpsV2MarketData.FundingParametersStructOutput, + PerpsV2MarketData.MarketSizeDetailsStructOutput, + PerpsV2MarketData.PriceDetailsStructOutput + ] & { + market: string; + baseAsset: string; + marketKey: string; + feeRates: PerpsV2MarketData.FeeRatesStructOutput; + limits: PerpsV2MarketData.MarketLimitsStructOutput; + fundingParameters: PerpsV2MarketData.FundingParametersStructOutput; + marketSizeDetails: PerpsV2MarketData.MarketSizeDetailsStructOutput; + priceDetails: PerpsV2MarketData.PriceDetailsStructOutput; + }; + + export type PositionDataStruct = { + position: IPerpsV2MarketBaseTypes.PositionStruct; + notionalValue: BigNumberish; + profitLoss: BigNumberish; + accruedFunding: BigNumberish; + remainingMargin: BigNumberish; + accessibleMargin: BigNumberish; + liquidationPrice: BigNumberish; + canLiquidatePosition: boolean; + }; + + export type PositionDataStructOutput = [ + IPerpsV2MarketBaseTypes.PositionStructOutput, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + boolean + ] & { + position: IPerpsV2MarketBaseTypes.PositionStructOutput; + notionalValue: BigNumber; + profitLoss: BigNumber; + accruedFunding: BigNumber; + remainingMargin: BigNumber; + accessibleMargin: BigNumber; + liquidationPrice: BigNumber; + canLiquidatePosition: boolean; + }; } export declare namespace IPerpsV2MarketSettings { - export type ParametersStruct = { - takerFee: BigNumberish - makerFee: BigNumberish - takerFeeDelayedOrder: BigNumberish - makerFeeDelayedOrder: BigNumberish - takerFeeOffchainDelayedOrder: BigNumberish - makerFeeOffchainDelayedOrder: BigNumberish - maxLeverage: BigNumberish - maxMarketValue: BigNumberish - maxFundingVelocity: BigNumberish - skewScale: BigNumberish - nextPriceConfirmWindow: BigNumberish - delayedOrderConfirmWindow: BigNumberish - minDelayTimeDelta: BigNumberish - maxDelayTimeDelta: BigNumberish - offchainDelayedOrderMinAge: BigNumberish - offchainDelayedOrderMaxAge: BigNumberish - offchainMarketKey: BytesLike - offchainPriceDivergence: BigNumberish - liquidationPremiumMultiplier: BigNumberish - liquidationBufferRatio: BigNumberish - maxLiquidationDelta: BigNumberish - maxPD: BigNumberish - } - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeDelayedOrder: BigNumber - makerFeeDelayedOrder: BigNumber - takerFeeOffchainDelayedOrder: BigNumber - makerFeeOffchainDelayedOrder: BigNumber - maxLeverage: BigNumber - maxMarketValue: BigNumber - maxFundingVelocity: BigNumber - skewScale: BigNumber - nextPriceConfirmWindow: BigNumber - delayedOrderConfirmWindow: BigNumber - minDelayTimeDelta: BigNumber - maxDelayTimeDelta: BigNumber - offchainDelayedOrderMinAge: BigNumber - offchainDelayedOrderMaxAge: BigNumber - offchainMarketKey: string - offchainPriceDivergence: BigNumber - liquidationPremiumMultiplier: BigNumber - liquidationBufferRatio: BigNumber - maxLiquidationDelta: BigNumber - maxPD: BigNumber - } + export type ParametersStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeDelayedOrder: BigNumberish; + makerFeeDelayedOrder: BigNumberish; + takerFeeOffchainDelayedOrder: BigNumberish; + makerFeeOffchainDelayedOrder: BigNumberish; + maxLeverage: BigNumberish; + maxMarketValue: BigNumberish; + maxFundingVelocity: BigNumberish; + skewScale: BigNumberish; + nextPriceConfirmWindow: BigNumberish; + delayedOrderConfirmWindow: BigNumberish; + minDelayTimeDelta: BigNumberish; + maxDelayTimeDelta: BigNumberish; + offchainDelayedOrderMinAge: BigNumberish; + offchainDelayedOrderMaxAge: BigNumberish; + offchainMarketKey: BytesLike; + offchainPriceDivergence: BigNumberish; + liquidationPremiumMultiplier: BigNumberish; + liquidationBufferRatio: BigNumberish; + maxLiquidationDelta: BigNumberish; + maxPD: BigNumberish; + }; + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeDelayedOrder: BigNumber; + makerFeeDelayedOrder: BigNumber; + takerFeeOffchainDelayedOrder: BigNumber; + makerFeeOffchainDelayedOrder: BigNumber; + maxLeverage: BigNumber; + maxMarketValue: BigNumber; + maxFundingVelocity: BigNumber; + skewScale: BigNumber; + nextPriceConfirmWindow: BigNumber; + delayedOrderConfirmWindow: BigNumber; + minDelayTimeDelta: BigNumber; + maxDelayTimeDelta: BigNumber; + offchainDelayedOrderMinAge: BigNumber; + offchainDelayedOrderMaxAge: BigNumber; + offchainMarketKey: string; + offchainPriceDivergence: BigNumber; + liquidationPremiumMultiplier: BigNumber; + liquidationBufferRatio: BigNumber; + maxLiquidationDelta: BigNumber; + maxPD: BigNumber; + }; } export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: BigNumberish - lastFundingIndex: BigNumberish - margin: BigNumberish - lastPrice: BigNumberish - size: BigNumberish - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketDataInterface extends utils.Interface { - functions: { - 'allMarketSummaries()': FunctionFragment - 'allProxiedMarketSummaries()': FunctionFragment - 'globals()': FunctionFragment - 'marketDetails(address)': FunctionFragment - 'marketDetailsForKey(bytes32)': FunctionFragment - 'marketSummaries(address[])': FunctionFragment - 'marketSummariesForKeys(bytes32[])': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'positionDetails(address,address)': FunctionFragment - 'positionDetailsForMarketKey(bytes32,address)': FunctionFragment - 'resolverProxy()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'allMarketSummaries' - | 'allProxiedMarketSummaries' - | 'globals' - | 'marketDetails' - | 'marketDetailsForKey' - | 'marketSummaries' - | 'marketSummariesForKeys' - | 'parameters' - | 'positionDetails' - | 'positionDetailsForMarketKey' - | 'resolverProxy' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'allMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'allProxiedMarketSummaries', values?: undefined): string - encodeFunctionData(functionFragment: 'globals', values?: undefined): string - encodeFunctionData(functionFragment: 'marketDetails', values: [string]): string - encodeFunctionData(functionFragment: 'marketDetailsForKey', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'marketSummaries', values: [string[]]): string - encodeFunctionData(functionFragment: 'marketSummariesForKeys', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'positionDetails', values: [string, string]): string - encodeFunctionData( - functionFragment: 'positionDetailsForMarketKey', - values: [BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'resolverProxy', values?: undefined): string - - decodeFunctionResult(functionFragment: 'allMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allProxiedMarketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'globals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDetailsForKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummaries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSummariesForKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positionDetailsForMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverProxy', data: BytesLike): Result - - events: {} + functions: { + "allMarketSummaries()": FunctionFragment; + "allProxiedMarketSummaries()": FunctionFragment; + "globals()": FunctionFragment; + "marketDetails(address)": FunctionFragment; + "marketDetailsForKey(bytes32)": FunctionFragment; + "marketSummaries(address[])": FunctionFragment; + "marketSummariesForKeys(bytes32[])": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "positionDetails(address,address)": FunctionFragment; + "positionDetailsForMarketKey(bytes32,address)": FunctionFragment; + "resolverProxy()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "allMarketSummaries" + | "allProxiedMarketSummaries" + | "globals" + | "marketDetails" + | "marketDetailsForKey" + | "marketSummaries" + | "marketSummariesForKeys" + | "parameters" + | "positionDetails" + | "positionDetailsForMarketKey" + | "resolverProxy" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "allMarketSummaries", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allProxiedMarketSummaries", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "globals", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketDetails", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDetailsForKey", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "marketSummaries", + values: [string[]] + ): string; + encodeFunctionData( + functionFragment: "marketSummariesForKeys", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "positionDetails", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "positionDetailsForMarketKey", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "resolverProxy", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "allMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "allProxiedMarketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketDetailsForKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummaries", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "marketSummariesForKeys", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "positionDetails", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "positionDetailsForMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resolverProxy", + data: BytesLike + ): Result; + + events: {}; } export interface PerpsV2MarketData extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketDataInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - globals(overrides?: CallOverrides): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]> - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketDataStructOutput]> - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]> - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]> - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[PerpsV2MarketData.PositionDataStructOutput]> - - resolverProxy(overrides?: CallOverrides): Promise<[string]> - } - - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - - callStatic: { - allMarketSummaries( - overrides?: CallOverrides - ): Promise - - allProxiedMarketSummaries( - overrides?: CallOverrides - ): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails( - market: string, - overrides?: CallOverrides - ): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries( - markets: string[], - overrides?: CallOverrides - ): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - filters: {} - - estimateGas: { - allMarketSummaries(overrides?: CallOverrides): Promise - - allProxiedMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: string, overrides?: CallOverrides): Promise - - marketDetailsForKey(marketKey: BytesLike, overrides?: CallOverrides): Promise - - marketSummaries(markets: string[], overrides?: CallOverrides): Promise - - marketSummariesForKeys(marketKeys: BytesLike[], overrides?: CallOverrides): Promise - - parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise - - positionDetails(market: string, account: string, overrides?: CallOverrides): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } - - populateTransaction: { - allMarketSummaries(overrides?: CallOverrides): Promise - - allProxiedMarketSummaries(overrides?: CallOverrides): Promise - - globals(overrides?: CallOverrides): Promise - - marketDetails(market: string, overrides?: CallOverrides): Promise - - marketDetailsForKey( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - marketSummaries(markets: string[], overrides?: CallOverrides): Promise - - marketSummariesForKeys( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - parameters(marketKey: BytesLike, overrides?: CallOverrides): Promise - - positionDetails( - market: string, - account: string, - overrides?: CallOverrides - ): Promise - - positionDetailsForMarketKey( - marketKey: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - resolverProxy(overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV2MarketDataInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + globals( + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.FuturesGlobalsStructOutput]>; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketDataStructOutput]>; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.MarketSummaryStructOutput[]]>; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]>; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[PerpsV2MarketData.PositionDataStructOutput]>; + + resolverProxy(overrides?: CallOverrides): Promise<[string]>; + }; + + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + + callStatic: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals( + overrides?: CallOverrides + ): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + filters: {}; + + estimateGas: { + allMarketSummaries(overrides?: CallOverrides): Promise; + + allProxiedMarketSummaries(overrides?: CallOverrides): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; + + populateTransaction: { + allMarketSummaries( + overrides?: CallOverrides + ): Promise; + + allProxiedMarketSummaries( + overrides?: CallOverrides + ): Promise; + + globals(overrides?: CallOverrides): Promise; + + marketDetails( + market: string, + overrides?: CallOverrides + ): Promise; + + marketDetailsForKey( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + marketSummaries( + markets: string[], + overrides?: CallOverrides + ): Promise; + + marketSummariesForKeys( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + parameters( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + positionDetails( + market: string, + account: string, + overrides?: CallOverrides + ): Promise; + + positionDetailsForMarketKey( + marketKey: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + resolverProxy(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts index 9dedfe74fa..abbafe8f99 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketSettings.ts @@ -2,1901 +2,2540 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IPerpsV2MarketSettings { - export type ParametersStruct = { - takerFee: BigNumberish - makerFee: BigNumberish - takerFeeDelayedOrder: BigNumberish - makerFeeDelayedOrder: BigNumberish - takerFeeOffchainDelayedOrder: BigNumberish - makerFeeOffchainDelayedOrder: BigNumberish - maxLeverage: BigNumberish - maxMarketValue: BigNumberish - maxFundingVelocity: BigNumberish - skewScale: BigNumberish - nextPriceConfirmWindow: BigNumberish - delayedOrderConfirmWindow: BigNumberish - minDelayTimeDelta: BigNumberish - maxDelayTimeDelta: BigNumberish - offchainDelayedOrderMinAge: BigNumberish - offchainDelayedOrderMaxAge: BigNumberish - offchainMarketKey: BytesLike - offchainPriceDivergence: BigNumberish - liquidationPremiumMultiplier: BigNumberish - liquidationBufferRatio: BigNumberish - maxLiquidationDelta: BigNumberish - maxPD: BigNumberish - } - - export type ParametersStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - takerFee: BigNumber - makerFee: BigNumber - takerFeeDelayedOrder: BigNumber - makerFeeDelayedOrder: BigNumber - takerFeeOffchainDelayedOrder: BigNumber - makerFeeOffchainDelayedOrder: BigNumber - maxLeverage: BigNumber - maxMarketValue: BigNumber - maxFundingVelocity: BigNumber - skewScale: BigNumber - nextPriceConfirmWindow: BigNumber - delayedOrderConfirmWindow: BigNumber - minDelayTimeDelta: BigNumber - maxDelayTimeDelta: BigNumber - offchainDelayedOrderMinAge: BigNumber - offchainDelayedOrderMaxAge: BigNumber - offchainMarketKey: string - offchainPriceDivergence: BigNumber - liquidationPremiumMultiplier: BigNumber - liquidationBufferRatio: BigNumber - maxLiquidationDelta: BigNumber - maxPD: BigNumber - } + export type ParametersStruct = { + takerFee: BigNumberish; + makerFee: BigNumberish; + takerFeeDelayedOrder: BigNumberish; + makerFeeDelayedOrder: BigNumberish; + takerFeeOffchainDelayedOrder: BigNumberish; + makerFeeOffchainDelayedOrder: BigNumberish; + maxLeverage: BigNumberish; + maxMarketValue: BigNumberish; + maxFundingVelocity: BigNumberish; + skewScale: BigNumberish; + nextPriceConfirmWindow: BigNumberish; + delayedOrderConfirmWindow: BigNumberish; + minDelayTimeDelta: BigNumberish; + maxDelayTimeDelta: BigNumberish; + offchainDelayedOrderMinAge: BigNumberish; + offchainDelayedOrderMaxAge: BigNumberish; + offchainMarketKey: BytesLike; + offchainPriceDivergence: BigNumberish; + liquidationPremiumMultiplier: BigNumberish; + liquidationBufferRatio: BigNumberish; + maxLiquidationDelta: BigNumberish; + maxPD: BigNumberish; + }; + + export type ParametersStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + takerFee: BigNumber; + makerFee: BigNumber; + takerFeeDelayedOrder: BigNumber; + makerFeeDelayedOrder: BigNumber; + takerFeeOffchainDelayedOrder: BigNumber; + makerFeeOffchainDelayedOrder: BigNumber; + maxLeverage: BigNumber; + maxMarketValue: BigNumber; + maxFundingVelocity: BigNumber; + skewScale: BigNumber; + nextPriceConfirmWindow: BigNumber; + delayedOrderConfirmWindow: BigNumber; + minDelayTimeDelta: BigNumber; + maxDelayTimeDelta: BigNumber; + offchainDelayedOrderMinAge: BigNumber; + offchainDelayedOrderMaxAge: BigNumber; + offchainMarketKey: string; + offchainPriceDivergence: BigNumber; + liquidationPremiumMultiplier: BigNumber; + liquidationBufferRatio: BigNumber; + maxLiquidationDelta: BigNumber; + maxPD: BigNumber; + }; } export interface PerpsV2MarketSettingsInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'delayedOrderConfirmWindow(bytes32)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'keeperLiquidationFee()': FunctionFragment - 'liquidationBufferRatio(bytes32)': FunctionFragment - 'liquidationFeeRatio()': FunctionFragment - 'liquidationPremiumMultiplier(bytes32)': FunctionFragment - 'makerFee(bytes32)': FunctionFragment - 'makerFeeDelayedOrder(bytes32)': FunctionFragment - 'makerFeeOffchainDelayedOrder(bytes32)': FunctionFragment - 'maxDelayTimeDelta(bytes32)': FunctionFragment - 'maxFundingVelocity(bytes32)': FunctionFragment - 'maxKeeperFee()': FunctionFragment - 'maxLeverage(bytes32)': FunctionFragment - 'maxLiquidationDelta(bytes32)': FunctionFragment - 'maxMarketValue(bytes32)': FunctionFragment - 'maxPD(bytes32)': FunctionFragment - 'minDelayTimeDelta(bytes32)': FunctionFragment - 'minInitialMargin()': FunctionFragment - 'minKeeperFee()': FunctionFragment - 'nextPriceConfirmWindow(bytes32)': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'offchainDelayedOrderMaxAge(bytes32)': FunctionFragment - 'offchainDelayedOrderMinAge(bytes32)': FunctionFragment - 'offchainMarketKey(bytes32)': FunctionFragment - 'offchainPriceDivergence(bytes32)': FunctionFragment - 'owner()': FunctionFragment - 'parameters(bytes32)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'setDelayedOrderConfirmWindow(bytes32,uint256)': FunctionFragment - 'setKeeperLiquidationFee(uint256)': FunctionFragment - 'setLiquidationBufferRatio(bytes32,uint256)': FunctionFragment - 'setLiquidationFeeRatio(uint256)': FunctionFragment - 'setLiquidationPremiumMultiplier(bytes32,uint256)': FunctionFragment - 'setMakerFee(bytes32,uint256)': FunctionFragment - 'setMakerFeeDelayedOrder(bytes32,uint256)': FunctionFragment - 'setMakerFeeOffchainDelayedOrder(bytes32,uint256)': FunctionFragment - 'setMaxDelayTimeDelta(bytes32,uint256)': FunctionFragment - 'setMaxFundingVelocity(bytes32,uint256)': FunctionFragment - 'setMaxKeeperFee(uint256)': FunctionFragment - 'setMaxLeverage(bytes32,uint256)': FunctionFragment - 'setMaxLiquidationDelta(bytes32,uint256)': FunctionFragment - 'setMaxMarketValue(bytes32,uint256)': FunctionFragment - 'setMaxPD(bytes32,uint256)': FunctionFragment - 'setMinDelayTimeDelta(bytes32,uint256)': FunctionFragment - 'setMinInitialMargin(uint256)': FunctionFragment - 'setMinKeeperFee(uint256)': FunctionFragment - 'setNextPriceConfirmWindow(bytes32,uint256)': FunctionFragment - 'setOffchainDelayedOrderMaxAge(bytes32,uint256)': FunctionFragment - 'setOffchainDelayedOrderMinAge(bytes32,uint256)': FunctionFragment - 'setOffchainMarketKey(bytes32,bytes32)': FunctionFragment - 'setOffchainPriceDivergence(bytes32,uint256)': FunctionFragment - 'setParameters(bytes32,(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256))': FunctionFragment - 'setSkewScale(bytes32,uint256)': FunctionFragment - 'setTakerFee(bytes32,uint256)': FunctionFragment - 'setTakerFeeDelayedOrder(bytes32,uint256)': FunctionFragment - 'setTakerFeeOffchainDelayedOrder(bytes32,uint256)': FunctionFragment - 'skewScale(bytes32)': FunctionFragment - 'takerFee(bytes32)': FunctionFragment - 'takerFeeDelayedOrder(bytes32)': FunctionFragment - 'takerFeeOffchainDelayedOrder(bytes32)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'delayedOrderConfirmWindow' - | 'isResolverCached' - | 'keeperLiquidationFee' - | 'liquidationBufferRatio' - | 'liquidationFeeRatio' - | 'liquidationPremiumMultiplier' - | 'makerFee' - | 'makerFeeDelayedOrder' - | 'makerFeeOffchainDelayedOrder' - | 'maxDelayTimeDelta' - | 'maxFundingVelocity' - | 'maxKeeperFee' - | 'maxLeverage' - | 'maxLiquidationDelta' - | 'maxMarketValue' - | 'maxPD' - | 'minDelayTimeDelta' - | 'minInitialMargin' - | 'minKeeperFee' - | 'nextPriceConfirmWindow' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'offchainDelayedOrderMaxAge' - | 'offchainDelayedOrderMinAge' - | 'offchainMarketKey' - | 'offchainPriceDivergence' - | 'owner' - | 'parameters' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'setDelayedOrderConfirmWindow' - | 'setKeeperLiquidationFee' - | 'setLiquidationBufferRatio' - | 'setLiquidationFeeRatio' - | 'setLiquidationPremiumMultiplier' - | 'setMakerFee' - | 'setMakerFeeDelayedOrder' - | 'setMakerFeeOffchainDelayedOrder' - | 'setMaxDelayTimeDelta' - | 'setMaxFundingVelocity' - | 'setMaxKeeperFee' - | 'setMaxLeverage' - | 'setMaxLiquidationDelta' - | 'setMaxMarketValue' - | 'setMaxPD' - | 'setMinDelayTimeDelta' - | 'setMinInitialMargin' - | 'setMinKeeperFee' - | 'setNextPriceConfirmWindow' - | 'setOffchainDelayedOrderMaxAge' - | 'setOffchainDelayedOrderMinAge' - | 'setOffchainMarketKey' - | 'setOffchainPriceDivergence' - | 'setParameters' - | 'setSkewScale' - | 'setTakerFee' - | 'setTakerFeeDelayedOrder' - | 'setTakerFeeOffchainDelayedOrder' - | 'skewScale' - | 'takerFee' - | 'takerFeeDelayedOrder' - | 'takerFeeOffchainDelayedOrder' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'delayedOrderConfirmWindow', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'keeperLiquidationFee', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationBufferRatio', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'liquidationFeeRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationPremiumMultiplier', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'makerFee', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'makerFeeDelayedOrder', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'makerFeeOffchainDelayedOrder', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxDelayTimeDelta', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxFundingVelocity', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxKeeperFee', values?: undefined): string - encodeFunctionData(functionFragment: 'maxLeverage', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxLiquidationDelta', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxMarketValue', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'maxPD', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'minDelayTimeDelta', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'minInitialMargin', values?: undefined): string - encodeFunctionData(functionFragment: 'minKeeperFee', values?: undefined): string - encodeFunctionData(functionFragment: 'nextPriceConfirmWindow', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'offchainDelayedOrderMaxAge', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'offchainDelayedOrderMinAge', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'offchainMarketKey', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'offchainPriceDivergence', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'parameters', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData( - functionFragment: 'setDelayedOrderConfirmWindow', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setKeeperLiquidationFee', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setLiquidationBufferRatio', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setLiquidationFeeRatio', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setLiquidationPremiumMultiplier', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMakerFee', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setMakerFeeDelayedOrder', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMakerFeeOffchainDelayedOrder', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxDelayTimeDelta', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxFundingVelocity', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMaxKeeperFee', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setMaxLeverage', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setMaxLiquidationDelta', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxMarketValue', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMaxPD', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setMinDelayTimeDelta', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setMinInitialMargin', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setMinKeeperFee', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setNextPriceConfirmWindow', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setOffchainDelayedOrderMaxAge', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setOffchainDelayedOrderMinAge', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setOffchainMarketKey', - values: [BytesLike, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'setOffchainPriceDivergence', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setParameters', - values: [BytesLike, IPerpsV2MarketSettings.ParametersStruct] - ): string - encodeFunctionData(functionFragment: 'setSkewScale', values: [BytesLike, BigNumberish]): string - encodeFunctionData(functionFragment: 'setTakerFee', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setTakerFeeDelayedOrder', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setTakerFeeOffchainDelayedOrder', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'skewScale', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'takerFee', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'takerFeeDelayedOrder', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'takerFeeOffchainDelayedOrder', values: [BytesLike]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'delayedOrderConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'keeperLiquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationBufferRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFeeRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPremiumMultiplier', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'makerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'makerFeeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'makerFeeOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxDelayTimeDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxLeverage', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxLiquidationDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxMarketValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxPD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minDelayTimeDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minInitialMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextPriceConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'offchainDelayedOrderMaxAge', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'offchainDelayedOrderMinAge', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'offchainMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'offchainPriceDivergence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setDelayedOrderConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setKeeperLiquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationBufferRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationFeeRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationPremiumMultiplier', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMakerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMakerFeeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMakerFeeOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxDelayTimeDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxLeverage', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxLiquidationDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxMarketValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxPD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinDelayTimeDelta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinInitialMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinKeeperFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setNextPriceConfirmWindow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setOffchainDelayedOrderMaxAge', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setOffchainDelayedOrderMinAge', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setOffchainMarketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setOffchainPriceDivergence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSkewScale', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTakerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTakerFeeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTakerFeeOffchainDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'skewScale', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'takerFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'takerFeeDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'takerFeeOffchainDelayedOrder', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'KeeperLiquidationFeeUpdated(uint256)': EventFragment - 'LiquidationBufferRatioUpdated(uint256)': EventFragment - 'LiquidationFeeRatioUpdated(uint256)': EventFragment - 'MaxKeeperFeeUpdated(uint256)': EventFragment - 'MinInitialMarginUpdated(uint256)': EventFragment - 'MinKeeperFeeUpdated(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ParameterUpdated(bytes32,bytes32,uint256)': EventFragment - 'ParameterUpdatedBytes32(bytes32,bytes32,bytes32)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'KeeperLiquidationFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationBufferRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationFeeRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MaxKeeperFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinInitialMarginUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinKeeperFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ParameterUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ParameterUpdatedBytes32'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "delayedOrderConfirmWindow(bytes32)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "keeperLiquidationFee()": FunctionFragment; + "liquidationBufferRatio(bytes32)": FunctionFragment; + "liquidationFeeRatio()": FunctionFragment; + "liquidationPremiumMultiplier(bytes32)": FunctionFragment; + "makerFee(bytes32)": FunctionFragment; + "makerFeeDelayedOrder(bytes32)": FunctionFragment; + "makerFeeOffchainDelayedOrder(bytes32)": FunctionFragment; + "maxDelayTimeDelta(bytes32)": FunctionFragment; + "maxFundingVelocity(bytes32)": FunctionFragment; + "maxKeeperFee()": FunctionFragment; + "maxLeverage(bytes32)": FunctionFragment; + "maxLiquidationDelta(bytes32)": FunctionFragment; + "maxMarketValue(bytes32)": FunctionFragment; + "maxPD(bytes32)": FunctionFragment; + "minDelayTimeDelta(bytes32)": FunctionFragment; + "minInitialMargin()": FunctionFragment; + "minKeeperFee()": FunctionFragment; + "nextPriceConfirmWindow(bytes32)": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "offchainDelayedOrderMaxAge(bytes32)": FunctionFragment; + "offchainDelayedOrderMinAge(bytes32)": FunctionFragment; + "offchainMarketKey(bytes32)": FunctionFragment; + "offchainPriceDivergence(bytes32)": FunctionFragment; + "owner()": FunctionFragment; + "parameters(bytes32)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "setDelayedOrderConfirmWindow(bytes32,uint256)": FunctionFragment; + "setKeeperLiquidationFee(uint256)": FunctionFragment; + "setLiquidationBufferRatio(bytes32,uint256)": FunctionFragment; + "setLiquidationFeeRatio(uint256)": FunctionFragment; + "setLiquidationPremiumMultiplier(bytes32,uint256)": FunctionFragment; + "setMakerFee(bytes32,uint256)": FunctionFragment; + "setMakerFeeDelayedOrder(bytes32,uint256)": FunctionFragment; + "setMakerFeeOffchainDelayedOrder(bytes32,uint256)": FunctionFragment; + "setMaxDelayTimeDelta(bytes32,uint256)": FunctionFragment; + "setMaxFundingVelocity(bytes32,uint256)": FunctionFragment; + "setMaxKeeperFee(uint256)": FunctionFragment; + "setMaxLeverage(bytes32,uint256)": FunctionFragment; + "setMaxLiquidationDelta(bytes32,uint256)": FunctionFragment; + "setMaxMarketValue(bytes32,uint256)": FunctionFragment; + "setMaxPD(bytes32,uint256)": FunctionFragment; + "setMinDelayTimeDelta(bytes32,uint256)": FunctionFragment; + "setMinInitialMargin(uint256)": FunctionFragment; + "setMinKeeperFee(uint256)": FunctionFragment; + "setNextPriceConfirmWindow(bytes32,uint256)": FunctionFragment; + "setOffchainDelayedOrderMaxAge(bytes32,uint256)": FunctionFragment; + "setOffchainDelayedOrderMinAge(bytes32,uint256)": FunctionFragment; + "setOffchainMarketKey(bytes32,bytes32)": FunctionFragment; + "setOffchainPriceDivergence(bytes32,uint256)": FunctionFragment; + "setParameters(bytes32,(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,bytes32,uint256,uint256,uint256,uint256,uint256))": FunctionFragment; + "setSkewScale(bytes32,uint256)": FunctionFragment; + "setTakerFee(bytes32,uint256)": FunctionFragment; + "setTakerFeeDelayedOrder(bytes32,uint256)": FunctionFragment; + "setTakerFeeOffchainDelayedOrder(bytes32,uint256)": FunctionFragment; + "skewScale(bytes32)": FunctionFragment; + "takerFee(bytes32)": FunctionFragment; + "takerFeeDelayedOrder(bytes32)": FunctionFragment; + "takerFeeOffchainDelayedOrder(bytes32)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "delayedOrderConfirmWindow" + | "isResolverCached" + | "keeperLiquidationFee" + | "liquidationBufferRatio" + | "liquidationFeeRatio" + | "liquidationPremiumMultiplier" + | "makerFee" + | "makerFeeDelayedOrder" + | "makerFeeOffchainDelayedOrder" + | "maxDelayTimeDelta" + | "maxFundingVelocity" + | "maxKeeperFee" + | "maxLeverage" + | "maxLiquidationDelta" + | "maxMarketValue" + | "maxPD" + | "minDelayTimeDelta" + | "minInitialMargin" + | "minKeeperFee" + | "nextPriceConfirmWindow" + | "nominateNewOwner" + | "nominatedOwner" + | "offchainDelayedOrderMaxAge" + | "offchainDelayedOrderMinAge" + | "offchainMarketKey" + | "offchainPriceDivergence" + | "owner" + | "parameters" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "setDelayedOrderConfirmWindow" + | "setKeeperLiquidationFee" + | "setLiquidationBufferRatio" + | "setLiquidationFeeRatio" + | "setLiquidationPremiumMultiplier" + | "setMakerFee" + | "setMakerFeeDelayedOrder" + | "setMakerFeeOffchainDelayedOrder" + | "setMaxDelayTimeDelta" + | "setMaxFundingVelocity" + | "setMaxKeeperFee" + | "setMaxLeverage" + | "setMaxLiquidationDelta" + | "setMaxMarketValue" + | "setMaxPD" + | "setMinDelayTimeDelta" + | "setMinInitialMargin" + | "setMinKeeperFee" + | "setNextPriceConfirmWindow" + | "setOffchainDelayedOrderMaxAge" + | "setOffchainDelayedOrderMinAge" + | "setOffchainMarketKey" + | "setOffchainPriceDivergence" + | "setParameters" + | "setSkewScale" + | "setTakerFee" + | "setTakerFeeDelayedOrder" + | "setTakerFeeOffchainDelayedOrder" + | "skewScale" + | "takerFee" + | "takerFeeDelayedOrder" + | "takerFeeOffchainDelayedOrder" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "delayedOrderConfirmWindow", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "keeperLiquidationFee", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationBufferRatio", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "liquidationFeeRatio", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationPremiumMultiplier", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "makerFee", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "makerFeeDelayedOrder", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "makerFeeOffchainDelayedOrder", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxDelayTimeDelta", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxFundingVelocity", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxKeeperFee", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "maxLeverage", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxLiquidationDelta", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "maxMarketValue", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "maxPD", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "minDelayTimeDelta", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "minInitialMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "minKeeperFee", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nextPriceConfirmWindow", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "offchainDelayedOrderMaxAge", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "offchainDelayedOrderMinAge", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "offchainMarketKey", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "offchainPriceDivergence", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "parameters", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setDelayedOrderConfirmWindow", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setKeeperLiquidationFee", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationBufferRatio", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationFeeRatio", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationPremiumMultiplier", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMakerFee", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMakerFeeDelayedOrder", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMakerFeeOffchainDelayedOrder", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxDelayTimeDelta", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxFundingVelocity", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxKeeperFee", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxLeverage", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxLiquidationDelta", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxMarketValue", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxPD", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinDelayTimeDelta", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinInitialMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinKeeperFee", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setNextPriceConfirmWindow", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setOffchainDelayedOrderMaxAge", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setOffchainDelayedOrderMinAge", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setOffchainMarketKey", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "setOffchainPriceDivergence", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setParameters", + values: [BytesLike, IPerpsV2MarketSettings.ParametersStruct] + ): string; + encodeFunctionData( + functionFragment: "setSkewScale", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTakerFee", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTakerFeeDelayedOrder", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTakerFeeOffchainDelayedOrder", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "skewScale", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "takerFee", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "takerFeeDelayedOrder", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "takerFeeOffchainDelayedOrder", + values: [BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "delayedOrderConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "keeperLiquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationBufferRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFeeRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPremiumMultiplier", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "makerFee", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "makerFeeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "makerFeeOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxDelayTimeDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxLeverage", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxLiquidationDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "maxPD", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "minDelayTimeDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minInitialMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextPriceConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "offchainDelayedOrderMaxAge", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "offchainDelayedOrderMinAge", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "offchainMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "offchainPriceDivergence", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "parameters", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setDelayedOrderConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setKeeperLiquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationBufferRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationFeeRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationPremiumMultiplier", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMakerFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMakerFeeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMakerFeeOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxDelayTimeDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxLeverage", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxLiquidationDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setMaxPD", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMinDelayTimeDelta", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMinInitialMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMinKeeperFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setNextPriceConfirmWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOffchainDelayedOrderMaxAge", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOffchainDelayedOrderMinAge", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOffchainMarketKey", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOffchainPriceDivergence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSkewScale", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTakerFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTakerFeeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTakerFeeOffchainDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "skewScale", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "takerFee", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "takerFeeDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "takerFeeOffchainDelayedOrder", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "KeeperLiquidationFeeUpdated(uint256)": EventFragment; + "LiquidationBufferRatioUpdated(uint256)": EventFragment; + "LiquidationFeeRatioUpdated(uint256)": EventFragment; + "MaxKeeperFeeUpdated(uint256)": EventFragment; + "MinInitialMarginUpdated(uint256)": EventFragment; + "MinKeeperFeeUpdated(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ParameterUpdated(bytes32,bytes32,uint256)": EventFragment; + "ParameterUpdatedBytes32(bytes32,bytes32,bytes32)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "KeeperLiquidationFeeUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "LiquidationBufferRatioUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationFeeRatioUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MaxKeeperFeeUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinInitialMarginUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinKeeperFeeUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ParameterUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ParameterUpdatedBytes32"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface KeeperLiquidationFeeUpdatedEventObject { - keeperFee: BigNumber + keeperFee: BigNumber; } export type KeeperLiquidationFeeUpdatedEvent = TypedEvent< - [BigNumber], - KeeperLiquidationFeeUpdatedEventObject -> + [BigNumber], + KeeperLiquidationFeeUpdatedEventObject +>; export type KeeperLiquidationFeeUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface LiquidationBufferRatioUpdatedEventObject { - bps: BigNumber + bps: BigNumber; } export type LiquidationBufferRatioUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationBufferRatioUpdatedEventObject -> + [BigNumber], + LiquidationBufferRatioUpdatedEventObject +>; export type LiquidationBufferRatioUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface LiquidationFeeRatioUpdatedEventObject { - bps: BigNumber + bps: BigNumber; } export type LiquidationFeeRatioUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationFeeRatioUpdatedEventObject -> + [BigNumber], + LiquidationFeeRatioUpdatedEventObject +>; export type LiquidationFeeRatioUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface MaxKeeperFeeUpdatedEventObject { - sUSD: BigNumber + sUSD: BigNumber; } -export type MaxKeeperFeeUpdatedEvent = TypedEvent<[BigNumber], MaxKeeperFeeUpdatedEventObject> +export type MaxKeeperFeeUpdatedEvent = TypedEvent< + [BigNumber], + MaxKeeperFeeUpdatedEventObject +>; -export type MaxKeeperFeeUpdatedEventFilter = TypedEventFilter +export type MaxKeeperFeeUpdatedEventFilter = + TypedEventFilter; export interface MinInitialMarginUpdatedEventObject { - minMargin: BigNumber + minMargin: BigNumber; } export type MinInitialMarginUpdatedEvent = TypedEvent< - [BigNumber], - MinInitialMarginUpdatedEventObject -> + [BigNumber], + MinInitialMarginUpdatedEventObject +>; -export type MinInitialMarginUpdatedEventFilter = TypedEventFilter +export type MinInitialMarginUpdatedEventFilter = + TypedEventFilter; export interface MinKeeperFeeUpdatedEventObject { - sUSD: BigNumber + sUSD: BigNumber; } -export type MinKeeperFeeUpdatedEvent = TypedEvent<[BigNumber], MinKeeperFeeUpdatedEventObject> +export type MinKeeperFeeUpdatedEvent = TypedEvent< + [BigNumber], + MinKeeperFeeUpdatedEventObject +>; -export type MinKeeperFeeUpdatedEventFilter = TypedEventFilter +export type MinKeeperFeeUpdatedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ParameterUpdatedEventObject { - marketKey: string - parameter: string - value: BigNumber + marketKey: string; + parameter: string; + value: BigNumber; } export type ParameterUpdatedEvent = TypedEvent< - [string, string, BigNumber], - ParameterUpdatedEventObject -> + [string, string, BigNumber], + ParameterUpdatedEventObject +>; -export type ParameterUpdatedEventFilter = TypedEventFilter +export type ParameterUpdatedEventFilter = + TypedEventFilter; export interface ParameterUpdatedBytes32EventObject { - marketKey: string - parameter: string - value: string + marketKey: string; + parameter: string; + value: string; } export type ParameterUpdatedBytes32Event = TypedEvent< - [string, string, string], - ParameterUpdatedBytes32EventObject -> + [string, string, string], + ParameterUpdatedBytes32EventObject +>; -export type ParameterUpdatedBytes32EventFilter = TypedEventFilter +export type ParameterUpdatedBytes32EventFilter = + TypedEventFilter; export interface PerpsV2MarketSettings extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketSettingsInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - delayedOrderConfirmWindow( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - keeperLiquidationFee(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPremiumMultiplier( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - makerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]> - - minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]> - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - offchainDelayedOrderMaxAge( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - offchainDelayedOrderMinAge( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[string]> - - offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - owner(overrides?: CallOverrides): Promise<[string]> - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - setDelayedOrderConfirmWindow( - _marketKey: BytesLike, - _delayedOrderConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setKeeperLiquidationFee( - _keeperFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationBufferRatio( - _marketKey: BytesLike, - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPremiumMultiplier( - _marketKey: BytesLike, - _liquidationPremiumMultiplier: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeDelayedOrder( - _marketKey: BytesLike, - _makerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _makerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxDelayTimeDelta( - _marketKey: BytesLike, - _maxDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingVelocity( - _marketKey: BytesLike, - _maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLiquidationDelta( - _marketKey: BytesLike, - _maxLiquidationDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - _marketKey: BytesLike, - _maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxPD( - _marketKey: BytesLike, - _maxPD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinDelayTimeDelta( - _marketKey: BytesLike, - _minDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMaxAge( - _marketKey: BytesLike, - _offchainDelayedOrderMaxAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMinAge( - _marketKey: BytesLike, - _offchainDelayedOrderMinAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainMarketKey( - _marketKey: BytesLike, - _offchainMarketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainPriceDivergence( - _marketKey: BytesLike, - _offchainPriceDivergence: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScale( - _marketKey: BytesLike, - _skewScale: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeDelayedOrder( - _marketKey: BytesLike, - _takerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _takerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - takerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - keeperLiquidationFee(overrides?: CallOverrides): Promise - - liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - liquidationPremiumMultiplier(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeOffchainDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxKeeperFee(overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setDelayedOrderConfirmWindow( - _marketKey: BytesLike, - _delayedOrderConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setKeeperLiquidationFee( - _keeperFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationBufferRatio( - _marketKey: BytesLike, - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPremiumMultiplier( - _marketKey: BytesLike, - _liquidationPremiumMultiplier: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeDelayedOrder( - _marketKey: BytesLike, - _makerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _makerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxDelayTimeDelta( - _marketKey: BytesLike, - _maxDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingVelocity( - _marketKey: BytesLike, - _maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLiquidationDelta( - _marketKey: BytesLike, - _maxLiquidationDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - _marketKey: BytesLike, - _maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxPD( - _marketKey: BytesLike, - _maxPD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinDelayTimeDelta( - _marketKey: BytesLike, - _minDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMaxAge( - _marketKey: BytesLike, - _offchainDelayedOrderMaxAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMinAge( - _marketKey: BytesLike, - _offchainDelayedOrderMinAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainMarketKey( - _marketKey: BytesLike, - _offchainMarketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainPriceDivergence( - _marketKey: BytesLike, - _offchainPriceDivergence: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScale( - _marketKey: BytesLike, - _skewScale: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeDelayedOrder( - _marketKey: BytesLike, - _takerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _takerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeOffchainDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - keeperLiquidationFee(overrides?: CallOverrides): Promise - - liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - liquidationPremiumMultiplier( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxKeeperFee(overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setDelayedOrderConfirmWindow( - _marketKey: BytesLike, - _delayedOrderConfirmWindow: BigNumberish, - overrides?: CallOverrides - ): Promise - - setKeeperLiquidationFee(_keeperFee: BigNumberish, overrides?: CallOverrides): Promise - - setLiquidationBufferRatio( - _marketKey: BytesLike, - _ratio: BigNumberish, - overrides?: CallOverrides - ): Promise - - setLiquidationFeeRatio(_ratio: BigNumberish, overrides?: CallOverrides): Promise - - setLiquidationPremiumMultiplier( - _marketKey: BytesLike, - _liquidationPremiumMultiplier: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMakerFeeDelayedOrder( - _marketKey: BytesLike, - _makerFeeDelayedOrder: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _makerFeeOffchainDelayedOrder: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxDelayTimeDelta( - _marketKey: BytesLike, - _maxDelayTimeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxFundingVelocity( - _marketKey: BytesLike, - _maxFundingVelocity: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxLiquidationDelta( - _marketKey: BytesLike, - _maxLiquidationDelta: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxMarketValue( - _marketKey: BytesLike, - _maxMarketValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxPD(_marketKey: BytesLike, _maxPD: BigNumberish, overrides?: CallOverrides): Promise - - setMinDelayTimeDelta( - _marketKey: BytesLike, - _minDelayTimeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMinInitialMargin(_minMargin: BigNumberish, overrides?: CallOverrides): Promise - - setMinKeeperFee(_sUSD: BigNumberish, overrides?: CallOverrides): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: CallOverrides - ): Promise - - setOffchainDelayedOrderMaxAge( - _marketKey: BytesLike, - _offchainDelayedOrderMaxAge: BigNumberish, - overrides?: CallOverrides - ): Promise - - setOffchainDelayedOrderMinAge( - _marketKey: BytesLike, - _offchainDelayedOrderMinAge: BigNumberish, - overrides?: CallOverrides - ): Promise - - setOffchainMarketKey( - _marketKey: BytesLike, - _offchainMarketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - setOffchainPriceDivergence( - _marketKey: BytesLike, - _offchainPriceDivergence: BigNumberish, - overrides?: CallOverrides - ): Promise - - setParameters( - _marketKey: BytesLike, - _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: CallOverrides - ): Promise - - setSkewScale( - _marketKey: BytesLike, - _skewScale: BigNumberish, - overrides?: CallOverrides - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: CallOverrides - ): Promise - - setTakerFeeDelayedOrder( - _marketKey: BytesLike, - _takerFeeDelayedOrder: BigNumberish, - overrides?: CallOverrides - ): Promise - - setTakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _takerFeeOffchainDelayedOrder: BigNumberish, - overrides?: CallOverrides - ): Promise - - skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'KeeperLiquidationFeeUpdated(uint256)'(keeperFee?: null): KeeperLiquidationFeeUpdatedEventFilter - KeeperLiquidationFeeUpdated(keeperFee?: null): KeeperLiquidationFeeUpdatedEventFilter - - 'LiquidationBufferRatioUpdated(uint256)'(bps?: null): LiquidationBufferRatioUpdatedEventFilter - LiquidationBufferRatioUpdated(bps?: null): LiquidationBufferRatioUpdatedEventFilter - - 'LiquidationFeeRatioUpdated(uint256)'(bps?: null): LiquidationFeeRatioUpdatedEventFilter - LiquidationFeeRatioUpdated(bps?: null): LiquidationFeeRatioUpdatedEventFilter - - 'MaxKeeperFeeUpdated(uint256)'(sUSD?: null): MaxKeeperFeeUpdatedEventFilter - MaxKeeperFeeUpdated(sUSD?: null): MaxKeeperFeeUpdatedEventFilter - - 'MinInitialMarginUpdated(uint256)'(minMargin?: null): MinInitialMarginUpdatedEventFilter - MinInitialMarginUpdated(minMargin?: null): MinInitialMarginUpdatedEventFilter - - 'MinKeeperFeeUpdated(uint256)'(sUSD?: null): MinKeeperFeeUpdatedEventFilter - MinKeeperFeeUpdated(sUSD?: null): MinKeeperFeeUpdatedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'ParameterUpdated(bytes32,bytes32,uint256)'( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedEventFilter - ParameterUpdated( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedEventFilter - - 'ParameterUpdatedBytes32(bytes32,bytes32,bytes32)'( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedBytes32EventFilter - ParameterUpdatedBytes32( - marketKey?: BytesLike | null, - parameter?: BytesLike | null, - value?: null - ): ParameterUpdatedBytes32EventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - delayedOrderConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - keeperLiquidationFee(overrides?: CallOverrides): Promise - - liquidationBufferRatio(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - liquidationPremiumMultiplier( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxFundingVelocity(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxKeeperFee(overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLiquidationDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minDelayTimeDelta(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - offchainDelayedOrderMaxAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainDelayedOrderMinAge(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainMarketKey(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - offchainPriceDivergence(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setDelayedOrderConfirmWindow( - _marketKey: BytesLike, - _delayedOrderConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setKeeperLiquidationFee( - _keeperFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationBufferRatio( - _marketKey: BytesLike, - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPremiumMultiplier( - _marketKey: BytesLike, - _liquidationPremiumMultiplier: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeDelayedOrder( - _marketKey: BytesLike, - _makerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _makerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxDelayTimeDelta( - _marketKey: BytesLike, - _maxDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingVelocity( - _marketKey: BytesLike, - _maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLiquidationDelta( - _marketKey: BytesLike, - _maxLiquidationDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - _marketKey: BytesLike, - _maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxPD( - _marketKey: BytesLike, - _maxPD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinDelayTimeDelta( - _marketKey: BytesLike, - _minDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMaxAge( - _marketKey: BytesLike, - _offchainDelayedOrderMaxAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMinAge( - _marketKey: BytesLike, - _offchainDelayedOrderMinAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainMarketKey( - _marketKey: BytesLike, - _offchainMarketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainPriceDivergence( - _marketKey: BytesLike, - _offchainPriceDivergence: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScale( - _marketKey: BytesLike, - _skewScale: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeDelayedOrder( - _marketKey: BytesLike, - _takerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _takerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - delayedOrderConfirmWindow( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - keeperLiquidationFee(overrides?: CallOverrides): Promise - - liquidationBufferRatio( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - liquidationFeeRatio(overrides?: CallOverrides): Promise - - liquidationPremiumMultiplier( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - makerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - makerFeeDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - makerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxDelayTimeDelta( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxFundingVelocity( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxKeeperFee(overrides?: CallOverrides): Promise - - maxLeverage(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxLiquidationDelta( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - maxMarketValue(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - minDelayTimeDelta( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - minInitialMargin(overrides?: CallOverrides): Promise - - minKeeperFee(overrides?: CallOverrides): Promise - - nextPriceConfirmWindow( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - offchainDelayedOrderMaxAge( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - offchainDelayedOrderMinAge( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - offchainMarketKey( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - offchainPriceDivergence( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - owner(overrides?: CallOverrides): Promise - - parameters(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - setDelayedOrderConfirmWindow( - _marketKey: BytesLike, - _delayedOrderConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setKeeperLiquidationFee( - _keeperFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationBufferRatio( - _marketKey: BytesLike, - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationFeeRatio( - _ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPremiumMultiplier( - _marketKey: BytesLike, - _liquidationPremiumMultiplier: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFee( - _marketKey: BytesLike, - _makerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeDelayedOrder( - _marketKey: BytesLike, - _makerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _makerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxDelayTimeDelta( - _marketKey: BytesLike, - _maxDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxFundingVelocity( - _marketKey: BytesLike, - _maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLeverage( - _marketKey: BytesLike, - _maxLeverage: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxLiquidationDelta( - _marketKey: BytesLike, - _maxLiquidationDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - _marketKey: BytesLike, - _maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxPD( - _marketKey: BytesLike, - _maxPD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinDelayTimeDelta( - _marketKey: BytesLike, - _minDelayTimeDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinInitialMargin( - _minMargin: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinKeeperFee( - _sUSD: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setNextPriceConfirmWindow( - _marketKey: BytesLike, - _nextPriceConfirmWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMaxAge( - _marketKey: BytesLike, - _offchainDelayedOrderMaxAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainDelayedOrderMinAge( - _marketKey: BytesLike, - _offchainDelayedOrderMinAge: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainMarketKey( - _marketKey: BytesLike, - _offchainMarketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - setOffchainPriceDivergence( - _marketKey: BytesLike, - _offchainPriceDivergence: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setParameters( - _marketKey: BytesLike, - _parameters: IPerpsV2MarketSettings.ParametersStruct, - overrides?: Overrides & { from?: string } - ): Promise - - setSkewScale( - _marketKey: BytesLike, - _skewScale: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFee( - _marketKey: BytesLike, - _takerFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeDelayedOrder( - _marketKey: BytesLike, - _takerFeeDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTakerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - _takerFeeOffchainDelayedOrder: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - skewScale(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFee(_marketKey: BytesLike, overrides?: CallOverrides): Promise - - takerFeeDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - - takerFeeOffchainDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV2MarketSettingsInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + delayedOrderConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + keeperLiquidationFee(overrides?: CallOverrides): Promise<[BigNumber]>; + + liquidationBufferRatio( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationFeeRatio(overrides?: CallOverrides): Promise<[BigNumber]>; + + liquidationPremiumMultiplier( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + makerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + makerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxFundingVelocity( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]>; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxLiquidationDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxMarketValue( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxPD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + minDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + minInitialMargin(overrides?: CallOverrides): Promise<[BigNumber]>; + + minKeeperFee(overrides?: CallOverrides): Promise<[BigNumber]>; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + offchainDelayedOrderMaxAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + offchainDelayedOrderMinAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + offchainMarketKey( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[string]>; + + offchainPriceDivergence( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketSettings.ParametersStructOutput]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + setDelayedOrderConfirmWindow( + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setKeeperLiquidationFee( + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationBufferRatio( + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPremiumMultiplier( + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeDelayedOrder( + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxDelayTimeDelta( + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingVelocity( + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLiquidationDelta( + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxPD( + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinDelayTimeDelta( + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMaxAge( + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMinAge( + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainMarketKey( + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainPriceDivergence( + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _parameters: IPerpsV2MarketSettings.ParametersStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScale( + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeDelayedOrder( + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScale( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + takerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + takerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + delayedOrderConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + keeperLiquidationFee(overrides?: CallOverrides): Promise; + + liquidationBufferRatio( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + liquidationPremiumMultiplier( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingVelocity( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxKeeperFee(overrides?: CallOverrides): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLiquidationDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValue( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise; + + minDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + offchainDelayedOrderMaxAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainDelayedOrderMinAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainMarketKey( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainPriceDivergence( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setDelayedOrderConfirmWindow( + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setKeeperLiquidationFee( + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationBufferRatio( + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPremiumMultiplier( + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeDelayedOrder( + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxDelayTimeDelta( + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingVelocity( + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLiquidationDelta( + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxPD( + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinDelayTimeDelta( + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMaxAge( + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMinAge( + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainMarketKey( + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainPriceDivergence( + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _parameters: IPerpsV2MarketSettings.ParametersStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScale( + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeDelayedOrder( + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScale( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + delayedOrderConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + keeperLiquidationFee(overrides?: CallOverrides): Promise; + + liquidationBufferRatio( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + liquidationPremiumMultiplier( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingVelocity( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxKeeperFee(overrides?: CallOverrides): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLiquidationDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValue( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise; + + minDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + offchainDelayedOrderMaxAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainDelayedOrderMinAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainMarketKey( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainPriceDivergence( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setDelayedOrderConfirmWindow( + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setKeeperLiquidationFee( + _keeperFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationBufferRatio( + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationPremiumMultiplier( + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMakerFeeDelayedOrder( + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxDelayTimeDelta( + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxFundingVelocity( + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxKeeperFee( + _sUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxLiquidationDelta( + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxMarketValue( + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxPD( + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinDelayTimeDelta( + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setOffchainDelayedOrderMaxAge( + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setOffchainDelayedOrderMinAge( + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setOffchainMarketKey( + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + setOffchainPriceDivergence( + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setParameters( + _marketKey: BytesLike, + _parameters: IPerpsV2MarketSettings.ParametersStruct, + overrides?: CallOverrides + ): Promise; + + setSkewScale( + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTakerFeeDelayedOrder( + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: CallOverrides + ): Promise; + + skewScale( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "KeeperLiquidationFeeUpdated(uint256)"( + keeperFee?: null + ): KeeperLiquidationFeeUpdatedEventFilter; + KeeperLiquidationFeeUpdated( + keeperFee?: null + ): KeeperLiquidationFeeUpdatedEventFilter; + + "LiquidationBufferRatioUpdated(uint256)"( + bps?: null + ): LiquidationBufferRatioUpdatedEventFilter; + LiquidationBufferRatioUpdated( + bps?: null + ): LiquidationBufferRatioUpdatedEventFilter; + + "LiquidationFeeRatioUpdated(uint256)"( + bps?: null + ): LiquidationFeeRatioUpdatedEventFilter; + LiquidationFeeRatioUpdated( + bps?: null + ): LiquidationFeeRatioUpdatedEventFilter; + + "MaxKeeperFeeUpdated(uint256)"(sUSD?: null): MaxKeeperFeeUpdatedEventFilter; + MaxKeeperFeeUpdated(sUSD?: null): MaxKeeperFeeUpdatedEventFilter; + + "MinInitialMarginUpdated(uint256)"( + minMargin?: null + ): MinInitialMarginUpdatedEventFilter; + MinInitialMarginUpdated( + minMargin?: null + ): MinInitialMarginUpdatedEventFilter; + + "MinKeeperFeeUpdated(uint256)"(sUSD?: null): MinKeeperFeeUpdatedEventFilter; + MinKeeperFeeUpdated(sUSD?: null): MinKeeperFeeUpdatedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "ParameterUpdated(bytes32,bytes32,uint256)"( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedEventFilter; + ParameterUpdated( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedEventFilter; + + "ParameterUpdatedBytes32(bytes32,bytes32,bytes32)"( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedBytes32EventFilter; + ParameterUpdatedBytes32( + marketKey?: BytesLike | null, + parameter?: BytesLike | null, + value?: null + ): ParameterUpdatedBytes32EventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + delayedOrderConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + keeperLiquidationFee(overrides?: CallOverrides): Promise; + + liquidationBufferRatio( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + liquidationFeeRatio(overrides?: CallOverrides): Promise; + + liquidationPremiumMultiplier( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingVelocity( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxKeeperFee(overrides?: CallOverrides): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLiquidationDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValue( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxPD(_marketKey: BytesLike, overrides?: CallOverrides): Promise; + + minDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + offchainDelayedOrderMaxAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainDelayedOrderMinAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainMarketKey( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainPriceDivergence( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + setDelayedOrderConfirmWindow( + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setKeeperLiquidationFee( + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationBufferRatio( + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPremiumMultiplier( + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeDelayedOrder( + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxDelayTimeDelta( + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingVelocity( + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLiquidationDelta( + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxPD( + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinDelayTimeDelta( + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMaxAge( + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMinAge( + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainMarketKey( + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainPriceDivergence( + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _parameters: IPerpsV2MarketSettings.ParametersStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScale( + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeDelayedOrder( + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScale( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + delayedOrderConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + keeperLiquidationFee( + overrides?: CallOverrides + ): Promise; + + liquidationBufferRatio( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + liquidationFeeRatio( + overrides?: CallOverrides + ): Promise; + + liquidationPremiumMultiplier( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + makerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxFundingVelocity( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxKeeperFee(overrides?: CallOverrides): Promise; + + maxLeverage( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxLiquidationDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxMarketValue( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + maxPD( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minDelayTimeDelta( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + minInitialMargin(overrides?: CallOverrides): Promise; + + minKeeperFee(overrides?: CallOverrides): Promise; + + nextPriceConfirmWindow( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + offchainDelayedOrderMaxAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainDelayedOrderMinAge( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainMarketKey( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + offchainPriceDivergence( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + parameters( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + setDelayedOrderConfirmWindow( + _marketKey: BytesLike, + _delayedOrderConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setKeeperLiquidationFee( + _keeperFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationBufferRatio( + _marketKey: BytesLike, + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationFeeRatio( + _ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPremiumMultiplier( + _marketKey: BytesLike, + _liquidationPremiumMultiplier: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFee( + _marketKey: BytesLike, + _makerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeDelayedOrder( + _marketKey: BytesLike, + _makerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _makerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxDelayTimeDelta( + _marketKey: BytesLike, + _maxDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxFundingVelocity( + _marketKey: BytesLike, + _maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLeverage( + _marketKey: BytesLike, + _maxLeverage: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxLiquidationDelta( + _marketKey: BytesLike, + _maxLiquidationDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + _marketKey: BytesLike, + _maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxPD( + _marketKey: BytesLike, + _maxPD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinDelayTimeDelta( + _marketKey: BytesLike, + _minDelayTimeDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinInitialMargin( + _minMargin: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinKeeperFee( + _sUSD: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setNextPriceConfirmWindow( + _marketKey: BytesLike, + _nextPriceConfirmWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMaxAge( + _marketKey: BytesLike, + _offchainDelayedOrderMaxAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainDelayedOrderMinAge( + _marketKey: BytesLike, + _offchainDelayedOrderMinAge: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainMarketKey( + _marketKey: BytesLike, + _offchainMarketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setOffchainPriceDivergence( + _marketKey: BytesLike, + _offchainPriceDivergence: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setParameters( + _marketKey: BytesLike, + _parameters: IPerpsV2MarketSettings.ParametersStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + setSkewScale( + _marketKey: BytesLike, + _skewScale: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFee( + _marketKey: BytesLike, + _takerFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeDelayedOrder( + _marketKey: BytesLike, + _takerFeeDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTakerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + _takerFeeOffchainDelayedOrder: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + skewScale( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFee( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + takerFeeOffchainDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts index eb4bc15345..0d7af7c19b 100644 --- a/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts +++ b/packages/sdk/src/contracts/types/PerpsV2MarketViews.ts @@ -2,786 +2,1085 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IPerpsV2MarketBaseTypes { - export type PositionStruct = { - id: BigNumberish - lastFundingIndex: BigNumberish - margin: BigNumberish - lastPrice: BigNumberish - size: BigNumberish - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface PerpsV2MarketViewsInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'accessibleMargin(address)': FunctionFragment - 'accruedFunding(address)': FunctionFragment - 'assetPrice()': FunctionFragment - 'baseAsset()': FunctionFragment - 'canLiquidate(address)': FunctionFragment - 'currentFundingRate()': FunctionFragment - 'currentFundingVelocity()': FunctionFragment - 'fillPrice(int256)': FunctionFragment - 'fundingLastRecomputed()': FunctionFragment - 'fundingSequence(uint256)': FunctionFragment - 'fundingSequenceLength()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'liquidationFee(address)': FunctionFragment - 'liquidationPrice(address)': FunctionFragment - 'marketDebt()': FunctionFragment - 'marketKey()': FunctionFragment - 'marketSize()': FunctionFragment - 'marketSizes()': FunctionFragment - 'marketSkew()': FunctionFragment - 'marketState()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'notionalValue(address)': FunctionFragment - 'orderFee(int256,uint8)': FunctionFragment - 'owner()': FunctionFragment - 'positions(address)': FunctionFragment - 'postTradeDetails(int256,uint256,uint8,address)': FunctionFragment - 'profitLoss(address)': FunctionFragment - 'rebuildCache()': FunctionFragment - 'remainingMargin(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'unrecordedFunding()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'accessibleMargin' - | 'accruedFunding' - | 'assetPrice' - | 'baseAsset' - | 'canLiquidate' - | 'currentFundingRate' - | 'currentFundingVelocity' - | 'fillPrice' - | 'fundingLastRecomputed' - | 'fundingSequence' - | 'fundingSequenceLength' - | 'isResolverCached' - | 'liquidationFee' - | 'liquidationPrice' - | 'marketDebt' - | 'marketKey' - | 'marketSize' - | 'marketSizes' - | 'marketSkew' - | 'marketState' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'notionalValue' - | 'orderFee' - | 'owner' - | 'positions' - | 'postTradeDetails' - | 'profitLoss' - | 'rebuildCache' - | 'remainingMargin' - | 'resolver' - | 'resolverAddressesRequired' - | 'unrecordedFunding' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'accessibleMargin', values: [string]): string - encodeFunctionData(functionFragment: 'accruedFunding', values: [string]): string - encodeFunctionData(functionFragment: 'assetPrice', values?: undefined): string - encodeFunctionData(functionFragment: 'baseAsset', values?: undefined): string - encodeFunctionData(functionFragment: 'canLiquidate', values: [string]): string - encodeFunctionData(functionFragment: 'currentFundingRate', values?: undefined): string - encodeFunctionData(functionFragment: 'currentFundingVelocity', values?: undefined): string - encodeFunctionData(functionFragment: 'fillPrice', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'fundingLastRecomputed', values?: undefined): string - encodeFunctionData(functionFragment: 'fundingSequence', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'fundingSequenceLength', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationFee', values: [string]): string - encodeFunctionData(functionFragment: 'liquidationPrice', values: [string]): string - encodeFunctionData(functionFragment: 'marketDebt', values?: undefined): string - encodeFunctionData(functionFragment: 'marketKey', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSize', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSizes', values?: undefined): string - encodeFunctionData(functionFragment: 'marketSkew', values?: undefined): string - encodeFunctionData(functionFragment: 'marketState', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'notionalValue', values: [string]): string - encodeFunctionData(functionFragment: 'orderFee', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'positions', values: [string]): string - encodeFunctionData( - functionFragment: 'postTradeDetails', - values: [BigNumberish, BigNumberish, BigNumberish, string] - ): string - encodeFunctionData(functionFragment: 'profitLoss', values: [string]): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingMargin', values: [string]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'unrecordedFunding', values?: undefined): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accessibleMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accruedFunding', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'assetPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'baseAsset', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canLiquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingLastRecomputed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequence', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fundingSequenceLength', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSizes', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketSkew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'marketState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notionalValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'orderFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'positions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postTradeDetails', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'profitLoss', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unrecordedFunding', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "accessibleMargin(address)": FunctionFragment; + "accruedFunding(address)": FunctionFragment; + "assetPrice()": FunctionFragment; + "baseAsset()": FunctionFragment; + "canLiquidate(address)": FunctionFragment; + "currentFundingRate()": FunctionFragment; + "currentFundingVelocity()": FunctionFragment; + "fillPrice(int256)": FunctionFragment; + "fundingLastRecomputed()": FunctionFragment; + "fundingSequence(uint256)": FunctionFragment; + "fundingSequenceLength()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "liquidationFee(address)": FunctionFragment; + "liquidationPrice(address)": FunctionFragment; + "marketDebt()": FunctionFragment; + "marketKey()": FunctionFragment; + "marketSize()": FunctionFragment; + "marketSizes()": FunctionFragment; + "marketSkew()": FunctionFragment; + "marketState()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "notionalValue(address)": FunctionFragment; + "orderFee(int256,uint8)": FunctionFragment; + "owner()": FunctionFragment; + "positions(address)": FunctionFragment; + "postTradeDetails(int256,uint256,uint8,address)": FunctionFragment; + "profitLoss(address)": FunctionFragment; + "rebuildCache()": FunctionFragment; + "remainingMargin(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "unrecordedFunding()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "accessibleMargin" + | "accruedFunding" + | "assetPrice" + | "baseAsset" + | "canLiquidate" + | "currentFundingRate" + | "currentFundingVelocity" + | "fillPrice" + | "fundingLastRecomputed" + | "fundingSequence" + | "fundingSequenceLength" + | "isResolverCached" + | "liquidationFee" + | "liquidationPrice" + | "marketDebt" + | "marketKey" + | "marketSize" + | "marketSizes" + | "marketSkew" + | "marketState" + | "nominateNewOwner" + | "nominatedOwner" + | "notionalValue" + | "orderFee" + | "owner" + | "positions" + | "postTradeDetails" + | "profitLoss" + | "rebuildCache" + | "remainingMargin" + | "resolver" + | "resolverAddressesRequired" + | "unrecordedFunding" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accessibleMargin", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "accruedFunding", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "assetPrice", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "baseAsset", values?: undefined): string; + encodeFunctionData( + functionFragment: "canLiquidate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingLastRecomputed", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "fundingSequence", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fundingSequenceLength", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationFee", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidationPrice", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "marketDebt", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "marketKey", values?: undefined): string; + encodeFunctionData( + functionFragment: "marketSize", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSizes", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketSkew", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "marketState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "notionalValue", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "orderFee", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "positions", values: [string]): string; + encodeFunctionData( + functionFragment: "postTradeDetails", + values: [BigNumberish, BigNumberish, BigNumberish, string] + ): string; + encodeFunctionData(functionFragment: "profitLoss", values: [string]): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingMargin", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unrecordedFunding", + values?: undefined + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accessibleMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accruedFunding", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "assetPrice", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "baseAsset", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "canLiquidate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "fundingLastRecomputed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequence", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "fundingSequenceLength", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPrice", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketDebt", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketKey", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "marketSize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketSizes", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "marketSkew", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "marketState", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notionalValue", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "orderFee", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "positions", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "postTradeDetails", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "profitLoss", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingMargin", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unrecordedFunding", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PerpsV2MarketViews extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV2MarketViewsInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }> - - canLiquidate(account: string, overrides?: CallOverrides): Promise<[boolean]> - - currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]> - - currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]> - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]> - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - liquidationFee(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }> - - marketSize(overrides?: CallOverrides): Promise<[BigNumber]> - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise<[BigNumber]> - - marketState(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - owner(overrides?: CallOverrides): Promise<[string]> - - positions( - account: string, - overrides?: CallOverrides - ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]> - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > - - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> - - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - baseAsset(overrides?: CallOverrides): Promise - - canLiquidate(account: string, overrides?: CallOverrides): Promise - - currentFundingRate(overrides?: CallOverrides): Promise - - currentFundingVelocity(overrides?: CallOverrides): Promise - - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - fundingLastRecomputed(overrides?: CallOverrides): Promise - - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise - - fundingSequenceLength(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - liquidationFee(account: string, overrides?: CallOverrides): Promise - - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> - - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> - - marketKey(overrides?: CallOverrides): Promise - - marketSize(overrides?: CallOverrides): Promise - - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> - - marketSkew(overrides?: CallOverrides): Promise - - marketState(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> - - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> - - owner(overrides?: CallOverrides): Promise - - positions( - account: string, - overrides?: CallOverrides - ): Promise - - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + interface: PerpsV2MarketViewsInterface; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - resolver(overrides?: CallOverrides): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + currentFundingRate(overrides?: CallOverrides): Promise<[BigNumber]>; + + currentFundingVelocity(overrides?: CallOverrides): Promise<[BigNumber]>; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise<[number]>; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fundingSequenceLength(overrides?: CallOverrides): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise<[string] & { key: string }>; + + marketSize(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise<[BigNumber]>; + + marketState(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; + + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + positions( + account: string, + overrides?: CallOverrides + ): Promise<[IPerpsV2MarketBaseTypes.PositionStructOutput]>; - resolverAddressesRequired(overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean }> + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - accruedFunding( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> + resolver(overrides?: CallOverrides): Promise<[string]>; - assetPrice( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; - baseAsset(overrides?: CallOverrides): Promise + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + }; - canLiquidate(account: string, overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - fillPrice( - sizeDelta: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + nominatedOwner(overrides?: CallOverrides): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - fundingSequenceLength(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationFee(account: string, overrides?: CallOverrides): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - liquidationPrice( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - marketDebt( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }> + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - marketKey(overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - marketSize(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - marketSizes( - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }> + resolverAddressesRequired(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - marketState(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginAccessible: BigNumber; invalid: boolean } + >; + + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; - nominatedOwner(overrides?: CallOverrides): Promise + assetPrice( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + baseAsset(overrides?: CallOverrides): Promise; + + canLiquidate(account: string, overrides?: CallOverrides): Promise; + + currentFundingRate(overrides?: CallOverrides): Promise; + + currentFundingVelocity(overrides?: CallOverrides): Promise; + + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + fundingLastRecomputed(overrides?: CallOverrides): Promise; + + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fundingSequenceLength(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { price: BigNumber; invalid: boolean }>; + + marketDebt( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { debt: BigNumber; invalid: boolean }>; + + marketKey(overrides?: CallOverrides): Promise; + + marketSize(overrides?: CallOverrides): Promise; + + marketSizes( + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { long: BigNumber; short: BigNumber }>; + + marketSkew(overrides?: CallOverrides): Promise; + + marketState(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }> + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { value: BigNumber; invalid: boolean }>; - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }> + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { fee: BigNumber; invalid: boolean }>; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions( - account: string, - overrides?: CallOverrides - ): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { - margin: BigNumber - size: BigNumber - price: BigNumber - liqPrice: BigNumber - fee: BigNumber - status: number - } - > + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, number] & { + margin: BigNumber; + size: BigNumber; + price: BigNumber; + liqPrice: BigNumber; + fee: BigNumber; + status: number; + } + >; - profitLoss( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }> + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { pnl: BigNumber; invalid: boolean }>; - rebuildCache(overrides?: CallOverrides): Promise + rebuildCache(overrides?: CallOverrides): Promise; - remainingMargin( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean }> + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, boolean] & { marginRemaining: BigNumber; invalid: boolean } + >; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - unrecordedFunding( - overrides?: CallOverrides - ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }> - } + unrecordedFunding( + overrides?: CallOverrides + ): Promise<[BigNumber, boolean] & { funding: BigNumber; invalid: boolean }>; + }; - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - } + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin(account: string, overrides?: CallOverrides): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - accruedFunding(account: string, overrides?: CallOverrides): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - assetPrice(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - baseAsset(overrides?: CallOverrides): Promise + baseAsset(overrides?: CallOverrides): Promise; - canLiquidate(account: string, overrides?: CallOverrides): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + currentFundingRate(overrides?: CallOverrides): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + currentFundingVelocity(overrides?: CallOverrides): Promise; - fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + fundingLastRecomputed(overrides?: CallOverrides): Promise; - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingSequenceLength(overrides?: CallOverrides): Promise + fundingSequenceLength(overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - liquidationFee(account: string, overrides?: CallOverrides): Promise + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationPrice(account: string, overrides?: CallOverrides): Promise + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + marketDebt(overrides?: CallOverrides): Promise; - marketKey(overrides?: CallOverrides): Promise + marketKey(overrides?: CallOverrides): Promise; - marketSize(overrides?: CallOverrides): Promise + marketSize(overrides?: CallOverrides): Promise; - marketSizes(overrides?: CallOverrides): Promise + marketSizes(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + marketSkew(overrides?: CallOverrides): Promise; - marketState(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue(account: string, overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions(account: string, overrides?: CallOverrides): Promise + positions(account: string, overrides?: CallOverrides): Promise; - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - profitLoss(account: string, overrides?: CallOverrides): Promise + profitLoss(account: string, overrides?: CallOverrides): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - remainingMargin(account: string, overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise - } + unrecordedFunding(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - accessibleMargin(account: string, overrides?: CallOverrides): Promise + accessibleMargin( + account: string, + overrides?: CallOverrides + ): Promise; - accruedFunding(account: string, overrides?: CallOverrides): Promise + accruedFunding( + account: string, + overrides?: CallOverrides + ): Promise; - assetPrice(overrides?: CallOverrides): Promise + assetPrice(overrides?: CallOverrides): Promise; - baseAsset(overrides?: CallOverrides): Promise + baseAsset(overrides?: CallOverrides): Promise; - canLiquidate(account: string, overrides?: CallOverrides): Promise + canLiquidate( + account: string, + overrides?: CallOverrides + ): Promise; - currentFundingRate(overrides?: CallOverrides): Promise + currentFundingRate( + overrides?: CallOverrides + ): Promise; - currentFundingVelocity(overrides?: CallOverrides): Promise + currentFundingVelocity( + overrides?: CallOverrides + ): Promise; - fillPrice(sizeDelta: BigNumberish, overrides?: CallOverrides): Promise + fillPrice( + sizeDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingLastRecomputed(overrides?: CallOverrides): Promise + fundingLastRecomputed( + overrides?: CallOverrides + ): Promise; - fundingSequence(index: BigNumberish, overrides?: CallOverrides): Promise + fundingSequence( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; - fundingSequenceLength(overrides?: CallOverrides): Promise + fundingSequenceLength( + overrides?: CallOverrides + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - liquidationFee(account: string, overrides?: CallOverrides): Promise + liquidationFee( + account: string, + overrides?: CallOverrides + ): Promise; - liquidationPrice(account: string, overrides?: CallOverrides): Promise + liquidationPrice( + account: string, + overrides?: CallOverrides + ): Promise; - marketDebt(overrides?: CallOverrides): Promise + marketDebt(overrides?: CallOverrides): Promise; - marketKey(overrides?: CallOverrides): Promise + marketKey(overrides?: CallOverrides): Promise; - marketSize(overrides?: CallOverrides): Promise + marketSize(overrides?: CallOverrides): Promise; - marketSizes(overrides?: CallOverrides): Promise + marketSizes(overrides?: CallOverrides): Promise; - marketSkew(overrides?: CallOverrides): Promise + marketSkew(overrides?: CallOverrides): Promise; - marketState(overrides?: CallOverrides): Promise + marketState(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notionalValue(account: string, overrides?: CallOverrides): Promise + notionalValue( + account: string, + overrides?: CallOverrides + ): Promise; - orderFee( - sizeDelta: BigNumberish, - orderType: BigNumberish, - overrides?: CallOverrides - ): Promise + orderFee( + sizeDelta: BigNumberish, + orderType: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - positions(account: string, overrides?: CallOverrides): Promise + positions( + account: string, + overrides?: CallOverrides + ): Promise; - postTradeDetails( - sizeDelta: BigNumberish, - tradePrice: BigNumberish, - orderType: BigNumberish, - sender: string, - overrides?: CallOverrides - ): Promise + postTradeDetails( + sizeDelta: BigNumberish, + tradePrice: BigNumberish, + orderType: BigNumberish, + sender: string, + overrides?: CallOverrides + ): Promise; - profitLoss(account: string, overrides?: CallOverrides): Promise + profitLoss( + account: string, + overrides?: CallOverrides + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - remainingMargin(account: string, overrides?: CallOverrides): Promise + remainingMargin( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; - unrecordedFunding(overrides?: CallOverrides): Promise - } + unrecordedFunding(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts index 06d6ec5c70..e7f8e7b879 100644 --- a/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts +++ b/packages/sdk/src/contracts/types/PerpsV3MarketProxy.ts @@ -2,3382 +2,4174 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IAccountModule { - export type AccountPermissionsStruct = { - user: string - permissions: BytesLike[] - } - - export type AccountPermissionsStructOutput = [string, string[]] & { - user: string - permissions: string[] - } + export type AccountPermissionsStruct = { + user: string; + permissions: BytesLike[]; + }; + + export type AccountPermissionsStructOutput = [string, string[]] & { + user: string; + permissions: string[]; + }; } export declare namespace AsyncOrder { - export type DataStruct = { - accountId: BigNumberish - marketId: BigNumberish - sizeDelta: BigNumberish - settlementStrategyId: BigNumberish - settlementTime: BigNumberish - acceptablePrice: BigNumberish - trackingCode: BytesLike - } - - export type DataStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - accountId: BigNumber - marketId: BigNumber - sizeDelta: BigNumber - settlementStrategyId: BigNumber - settlementTime: BigNumber - acceptablePrice: BigNumber - trackingCode: string - } - - export type OrderCommitmentRequestStruct = { - marketId: BigNumberish - accountId: BigNumberish - sizeDelta: BigNumberish - settlementStrategyId: BigNumberish - acceptablePrice: BigNumberish - trackingCode: BytesLike - } - - export type OrderCommitmentRequestStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - marketId: BigNumber - accountId: BigNumber - sizeDelta: BigNumber - settlementStrategyId: BigNumber - acceptablePrice: BigNumber - trackingCode: string - } + export type DataStruct = { + accountId: BigNumberish; + marketId: BigNumberish; + sizeDelta: BigNumberish; + settlementStrategyId: BigNumberish; + settlementTime: BigNumberish; + acceptablePrice: BigNumberish; + trackingCode: BytesLike; + }; + + export type DataStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + accountId: BigNumber; + marketId: BigNumber; + sizeDelta: BigNumber; + settlementStrategyId: BigNumber; + settlementTime: BigNumber; + acceptablePrice: BigNumber; + trackingCode: string; + }; + + export type OrderCommitmentRequestStruct = { + marketId: BigNumberish; + accountId: BigNumberish; + sizeDelta: BigNumberish; + settlementStrategyId: BigNumberish; + acceptablePrice: BigNumberish; + trackingCode: BytesLike; + }; + + export type OrderCommitmentRequestStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + marketId: BigNumber; + accountId: BigNumber; + sizeDelta: BigNumber; + settlementStrategyId: BigNumber; + acceptablePrice: BigNumber; + trackingCode: string; + }; } export declare namespace IPerpsMarketModule { - export type MarketSummaryStruct = { - skew: BigNumberish - size: BigNumberish - maxOpenInterest: BigNumberish - currentFundingRate: BigNumberish - currentFundingVelocity: BigNumberish - indexPrice: BigNumberish - } - - export type MarketSummaryStructOutput = [ - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber - ] & { - skew: BigNumber - size: BigNumber - maxOpenInterest: BigNumber - currentFundingRate: BigNumber - currentFundingVelocity: BigNumber - indexPrice: BigNumber - } + export type MarketSummaryStruct = { + skew: BigNumberish; + size: BigNumberish; + maxOpenInterest: BigNumberish; + currentFundingRate: BigNumberish; + currentFundingVelocity: BigNumberish; + indexPrice: BigNumberish; + }; + + export type MarketSummaryStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + skew: BigNumber; + size: BigNumber; + maxOpenInterest: BigNumber; + currentFundingRate: BigNumber; + currentFundingVelocity: BigNumber; + indexPrice: BigNumber; + }; } export declare namespace SettlementStrategy { - export type DataStruct = { - strategyType: BigNumberish - settlementDelay: BigNumberish - settlementWindowDuration: BigNumberish - priceWindowDuration: BigNumberish - priceVerificationContract: string - feedId: BytesLike - url: string - settlementReward: BigNumberish - priceDeviationTolerance: BigNumberish - disabled: boolean - } - - export type DataStructOutput = [ - number, - BigNumber, - BigNumber, - BigNumber, - string, - string, - string, - BigNumber, - BigNumber, - boolean - ] & { - strategyType: number - settlementDelay: BigNumber - settlementWindowDuration: BigNumber - priceWindowDuration: BigNumber - priceVerificationContract: string - feedId: string - url: string - settlementReward: BigNumber - priceDeviationTolerance: BigNumber - disabled: boolean - } + export type DataStruct = { + strategyType: BigNumberish; + settlementDelay: BigNumberish; + settlementWindowDuration: BigNumberish; + priceWindowDuration: BigNumberish; + priceVerificationContract: string; + feedId: BytesLike; + url: string; + settlementReward: BigNumberish; + priceDeviationTolerance: BigNumberish; + disabled: boolean; + }; + + export type DataStructOutput = [ + number, + BigNumber, + BigNumber, + BigNumber, + string, + string, + string, + BigNumber, + BigNumber, + boolean + ] & { + strategyType: number; + settlementDelay: BigNumber; + settlementWindowDuration: BigNumber; + priceWindowDuration: BigNumber; + priceVerificationContract: string; + feedId: string; + url: string; + settlementReward: BigNumber; + priceDeviationTolerance: BigNumber; + disabled: boolean; + }; } export interface PerpsV3MarketProxyInterface extends utils.Interface { - functions: { - 'createAccount()': FunctionFragment - 'createAccount(uint128)': FunctionFragment - 'getAccountLastInteraction(uint128)': FunctionFragment - 'getAccountOwner(uint128)': FunctionFragment - 'getAccountPermissions(uint128)': FunctionFragment - 'getAccountTokenAddress()': FunctionFragment - 'grantPermission(uint128,bytes32,address)': FunctionFragment - 'hasPermission(uint128,bytes32,address)': FunctionFragment - 'isAuthorized(uint128,bytes32,address)': FunctionFragment - 'notifyAccountTransfer(address,uint128)': FunctionFragment - 'renouncePermission(uint128,bytes32)': FunctionFragment - 'revokePermission(uint128,bytes32,address)': FunctionFragment - 'getAssociatedSystem(bytes32)': FunctionFragment - 'initOrUpgradeNft(bytes32,string,string,string,address)': FunctionFragment - 'initOrUpgradeToken(bytes32,string,string,uint8,address)': FunctionFragment - 'registerUnmanagedSystem(bytes32,address)': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'getImplementation()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'renounceNomination()': FunctionFragment - 'simulateUpgradeTo(address)': FunctionFragment - 'upgradeTo(address)': FunctionFragment - 'acceptMarketOwnership(uint128)': FunctionFragment - 'createMarket(string,string,address)': FunctionFragment - 'getMarketOwner(uint128)': FunctionFragment - 'minimumCredit(uint128)': FunctionFragment - 'name(uint128)': FunctionFragment - 'nominateMarketOwner(uint128,address)': FunctionFragment - 'reportedDebt(uint128)': FunctionFragment - 'setSpotMarket(address)': FunctionFragment - 'setSynthetix(address)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'symbol(uint128)': FunctionFragment - 'updatePriceData(uint128,bytes32)': FunctionFragment - 'getAsyncOrderClaim(uint128,uint128)': FunctionFragment - 'getAvailableMargin(uint128)': FunctionFragment - 'getOpenPosition(uint128,uint128)': FunctionFragment - 'modifyCollateral(uint128,uint128,int256)': FunctionFragment - 'totalAccountOpenInterest(uint128)': FunctionFragment - 'totalCollateralValue(uint128)': FunctionFragment - 'currentFundingRate(uint128)': FunctionFragment - 'currentFundingVelocity(uint128)': FunctionFragment - 'fillPrice(uint128,int256,uint256)': FunctionFragment - 'getMarketSummary(uint128)': FunctionFragment - 'indexPrice(uint128)': FunctionFragment - 'maxOpenInterest(uint128)': FunctionFragment - 'size(uint128)': FunctionFragment - 'skew(uint128)': FunctionFragment - 'PRECISION()': FunctionFragment - 'cancelOrder(uint128,uint128)': FunctionFragment - 'commitOrder((uint128,uint128,int128,uint128,uint256,bytes32))': FunctionFragment - 'getOrder(uint128,uint128)': FunctionFragment - 'settle(uint128,uint128)': FunctionFragment - 'settlePythOrder(bytes,bytes)': FunctionFragment - 'addToFeatureFlagAllowlist(bytes32,address)': FunctionFragment - 'getDeniers(bytes32)': FunctionFragment - 'getFeatureFlagAllowAll(bytes32)': FunctionFragment - 'getFeatureFlagAllowlist(bytes32)': FunctionFragment - 'getFeatureFlagDenyAll(bytes32)': FunctionFragment - 'isFeatureAllowed(bytes32,address)': FunctionFragment - 'removeFromFeatureFlagAllowlist(bytes32,address)': FunctionFragment - 'setDeniers(bytes32,address[])': FunctionFragment - 'setFeatureFlagAllowAll(bytes32,bool)': FunctionFragment - 'setFeatureFlagDenyAll(bytes32,bool)': FunctionFragment - 'liquidate(uint128)': FunctionFragment - 'liquidateFlagged()': FunctionFragment - 'addSettlementStrategy(uint128,(uint8,uint256,uint256,uint256,address,bytes32,string,uint256,uint256,bool))': FunctionFragment - 'getFundingParameters(uint128)': FunctionFragment - 'getLiquidationParameters(uint128)': FunctionFragment - 'getLockedOiPercent(uint128)': FunctionFragment - 'getMaxMarketValue(uint128)': FunctionFragment - 'getOrderFees(uint128)': FunctionFragment - 'getSettlementStrategy(uint128,uint256)': FunctionFragment - 'setFundingParameters(uint128,uint256,uint256)': FunctionFragment - 'setLiquidationParameters(uint128,uint256,uint256,uint256,uint256,uint256)': FunctionFragment - 'setLockedOiPercent(uint128,uint256)': FunctionFragment - 'setMaxMarketValue(uint128,uint256)': FunctionFragment - 'setOrderFees(uint128,uint256,uint256)': FunctionFragment - 'setSettlementStrategyEnabled(uint128,uint256,bool)': FunctionFragment - 'getLiquidationRewardGuards()': FunctionFragment - 'getMaxCollateralAmount(uint128)': FunctionFragment - 'getSynthDeductionPriority()': FunctionFragment - 'setLiquidationRewardGuards(uint256,uint256)': FunctionFragment - 'setMaxCollateralAmount(uint128,uint256)': FunctionFragment - 'setSynthDeductionPriority(uint128[])': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'createAccount()' - | 'createAccount(uint128)' - | 'getAccountLastInteraction' - | 'getAccountOwner' - | 'getAccountPermissions' - | 'getAccountTokenAddress' - | 'grantPermission' - | 'hasPermission' - | 'isAuthorized' - | 'notifyAccountTransfer' - | 'renouncePermission' - | 'revokePermission' - | 'getAssociatedSystem' - | 'initOrUpgradeNft' - | 'initOrUpgradeToken' - | 'registerUnmanagedSystem' - | 'acceptOwnership' - | 'getImplementation' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'renounceNomination' - | 'simulateUpgradeTo' - | 'upgradeTo' - | 'acceptMarketOwnership' - | 'createMarket' - | 'getMarketOwner' - | 'minimumCredit' - | 'name' - | 'nominateMarketOwner' - | 'reportedDebt' - | 'setSpotMarket' - | 'setSynthetix' - | 'supportsInterface' - | 'symbol' - | 'updatePriceData' - | 'getAsyncOrderClaim' - | 'getAvailableMargin' - | 'getOpenPosition' - | 'modifyCollateral' - | 'totalAccountOpenInterest' - | 'totalCollateralValue' - | 'currentFundingRate' - | 'currentFundingVelocity' - | 'fillPrice' - | 'getMarketSummary' - | 'indexPrice' - | 'maxOpenInterest' - | 'size' - | 'skew' - | 'PRECISION' - | 'cancelOrder' - | 'commitOrder' - | 'getOrder' - | 'settle' - | 'settlePythOrder' - | 'addToFeatureFlagAllowlist' - | 'getDeniers' - | 'getFeatureFlagAllowAll' - | 'getFeatureFlagAllowlist' - | 'getFeatureFlagDenyAll' - | 'isFeatureAllowed' - | 'removeFromFeatureFlagAllowlist' - | 'setDeniers' - | 'setFeatureFlagAllowAll' - | 'setFeatureFlagDenyAll' - | 'liquidate' - | 'liquidateFlagged' - | 'addSettlementStrategy' - | 'getFundingParameters' - | 'getLiquidationParameters' - | 'getLockedOiPercent' - | 'getMaxMarketValue' - | 'getOrderFees' - | 'getSettlementStrategy' - | 'setFundingParameters' - | 'setLiquidationParameters' - | 'setLockedOiPercent' - | 'setMaxMarketValue' - | 'setOrderFees' - | 'setSettlementStrategyEnabled' - | 'getLiquidationRewardGuards' - | 'getMaxCollateralAmount' - | 'getSynthDeductionPriority' - | 'setLiquidationRewardGuards' - | 'setMaxCollateralAmount' - | 'setSynthDeductionPriority' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'createAccount()', values?: undefined): string - encodeFunctionData(functionFragment: 'createAccount(uint128)', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getAccountLastInteraction', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getAccountOwner', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getAccountPermissions', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getAccountTokenAddress', values?: undefined): string - encodeFunctionData( - functionFragment: 'grantPermission', - values: [BigNumberish, BytesLike, string] - ): string - encodeFunctionData( - functionFragment: 'hasPermission', - values: [BigNumberish, BytesLike, string] - ): string - encodeFunctionData( - functionFragment: 'isAuthorized', - values: [BigNumberish, BytesLike, string] - ): string - encodeFunctionData( - functionFragment: 'notifyAccountTransfer', - values: [string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'renouncePermission', - values: [BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'revokePermission', - values: [BigNumberish, BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'getAssociatedSystem', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'initOrUpgradeNft', - values: [BytesLike, string, string, string, string] - ): string - encodeFunctionData( - functionFragment: 'initOrUpgradeToken', - values: [BytesLike, string, string, BigNumberish, string] - ): string - encodeFunctionData( - functionFragment: 'registerUnmanagedSystem', - values: [BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'getImplementation', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'renounceNomination', values?: undefined): string - encodeFunctionData(functionFragment: 'simulateUpgradeTo', values: [string]): string - encodeFunctionData(functionFragment: 'upgradeTo', values: [string]): string - encodeFunctionData(functionFragment: 'acceptMarketOwnership', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'createMarket', values: [string, string, string]): string - encodeFunctionData(functionFragment: 'getMarketOwner', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'minimumCredit', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'name', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'nominateMarketOwner', - values: [BigNumberish, string] - ): string - encodeFunctionData(functionFragment: 'reportedDebt', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setSpotMarket', values: [string]): string - encodeFunctionData(functionFragment: 'setSynthetix', values: [string]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'symbol', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'updatePriceData', values: [BigNumberish, BytesLike]): string - encodeFunctionData( - functionFragment: 'getAsyncOrderClaim', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getAvailableMargin', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'getOpenPosition', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'modifyCollateral', - values: [BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'totalAccountOpenInterest', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'totalCollateralValue', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'currentFundingRate', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'currentFundingVelocity', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'fillPrice', - values: [BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getMarketSummary', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'indexPrice', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'maxOpenInterest', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'size', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'skew', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'PRECISION', values?: undefined): string - encodeFunctionData(functionFragment: 'cancelOrder', values: [BigNumberish, BigNumberish]): string - encodeFunctionData( - functionFragment: 'commitOrder', - values: [AsyncOrder.OrderCommitmentRequestStruct] - ): string - encodeFunctionData(functionFragment: 'getOrder', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'settle', values: [BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'settlePythOrder', values: [BytesLike, BytesLike]): string - encodeFunctionData( - functionFragment: 'addToFeatureFlagAllowlist', - values: [BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'getDeniers', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getFeatureFlagAllowAll', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getFeatureFlagAllowlist', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getFeatureFlagDenyAll', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'isFeatureAllowed', values: [BytesLike, string]): string - encodeFunctionData( - functionFragment: 'removeFromFeatureFlagAllowlist', - values: [BytesLike, string] - ): string - encodeFunctionData(functionFragment: 'setDeniers', values: [BytesLike, string[]]): string - encodeFunctionData( - functionFragment: 'setFeatureFlagAllowAll', - values: [BytesLike, boolean] - ): string - encodeFunctionData( - functionFragment: 'setFeatureFlagDenyAll', - values: [BytesLike, boolean] - ): string - encodeFunctionData(functionFragment: 'liquidate', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'liquidateFlagged', values?: undefined): string - encodeFunctionData( - functionFragment: 'addSettlementStrategy', - values: [BigNumberish, SettlementStrategy.DataStruct] - ): string - encodeFunctionData(functionFragment: 'getFundingParameters', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getLiquidationParameters', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getLockedOiPercent', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getMaxMarketValue', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getOrderFees', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'getSettlementStrategy', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setFundingParameters', - values: [BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setLiquidationParameters', - values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setLockedOiPercent', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxMarketValue', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setOrderFees', - values: [BigNumberish, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setSettlementStrategyEnabled', - values: [BigNumberish, BigNumberish, boolean] - ): string - encodeFunctionData(functionFragment: 'getLiquidationRewardGuards', values?: undefined): string - encodeFunctionData(functionFragment: 'getMaxCollateralAmount', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getSynthDeductionPriority', values?: undefined): string - encodeFunctionData( - functionFragment: 'setLiquidationRewardGuards', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setMaxCollateralAmount', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setSynthDeductionPriority', - values: [BigNumberish[]] - ): string - - decodeFunctionResult(functionFragment: 'createAccount()', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'createAccount(uint128)', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountLastInteraction', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountPermissions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountTokenAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'grantPermission', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'hasPermission', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isAuthorized', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notifyAccountTransfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'renouncePermission', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'revokePermission', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAssociatedSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'initOrUpgradeNft', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'initOrUpgradeToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'registerUnmanagedSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getImplementation', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'renounceNomination', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'simulateUpgradeTo', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'upgradeTo', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptMarketOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'createMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getMarketOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minimumCredit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateMarketOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'reportedDebt', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSpotMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSynthetix', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updatePriceData', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAsyncOrderClaim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAvailableMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getOpenPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'modifyCollateral', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalAccountOpenInterest', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalCollateralValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currentFundingVelocity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'fillPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getMarketSummary', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'indexPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxOpenInterest', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'size', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'skew', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'PRECISION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'cancelOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'commitOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settlePythOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addToFeatureFlagAllowlist', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getDeniers', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFeatureFlagAllowAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFeatureFlagAllowlist', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFeatureFlagDenyAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isFeatureAllowed', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeFromFeatureFlagAllowlist', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setDeniers', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFeatureFlagAllowAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFeatureFlagDenyAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidateFlagged', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addSettlementStrategy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFundingParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getLiquidationParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getLockedOiPercent', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getMaxMarketValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getOrderFees', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSettlementStrategy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFundingParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationParameters', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLockedOiPercent', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxMarketValue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setOrderFees', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSettlementStrategyEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getLiquidationRewardGuards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getMaxCollateralAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSynthDeductionPriority', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationRewardGuards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMaxCollateralAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSynthDeductionPriority', data: BytesLike): Result - - events: { - 'AccountCreated(uint128,address)': EventFragment - 'PermissionGranted(uint128,bytes32,address,address)': EventFragment - 'PermissionRevoked(uint128,bytes32,address,address)': EventFragment - 'AssociatedSystemSet(bytes32,bytes32,address,address)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'Upgraded(address,address)': EventFragment - 'MarketOwnerChanged(uint128,address,address)': EventFragment - 'MarketOwnerNominated(uint128,address)': EventFragment - 'MarketPriceDataUpdated(uint128,bytes32)': EventFragment - 'MarketRegistered(uint128,address,string,string)': EventFragment - 'CollateralModified(uint128,uint128,int256,address)': EventFragment - 'OrderCanceled(uint128,uint128,uint256,uint256)': EventFragment - 'OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)': EventFragment - 'OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)': EventFragment - 'FeatureFlagAllowAllSet(bytes32,bool)': EventFragment - 'FeatureFlagAllowlistAdded(bytes32,address)': EventFragment - 'FeatureFlagAllowlistRemoved(bytes32,address)': EventFragment - 'FeatureFlagDeniersReset(bytes32,address[])': EventFragment - 'FeatureFlagDenyAllSet(bytes32,bool)': EventFragment - 'FundingParametersSet(uint128,uint256,uint256)': EventFragment - 'LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)': EventFragment - 'LockedOiPercentSet(uint128,uint256)': EventFragment - 'MaxMarketValueSet(uint128,uint256)': EventFragment - 'OrderFeesSet(uint128,uint256,uint256)': EventFragment - 'SettlementStrategyAdded(uint128,tuple,uint256)': EventFragment - 'SettlementStrategyEnabled(uint128,uint256,bool)': EventFragment - 'LiquidationRewardGuardsSet(uint256,uint256)': EventFragment - 'MaxCollateralAmountSet(uint128,uint256)': EventFragment - 'SynthDeductionPrioritySet(uint128[])': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccountCreated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PermissionGranted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PermissionRevoked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AssociatedSystemSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Upgraded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarketOwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarketOwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarketPriceDataUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MarketRegistered'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CollateralModified'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OrderCanceled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OrderCommitted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OrderSettled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowAllSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowlistAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeatureFlagAllowlistRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeatureFlagDeniersReset'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeatureFlagDenyAllSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FundingParametersSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationParametersSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LockedOiPercentSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MaxMarketValueSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OrderFeesSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SettlementStrategyAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SettlementStrategyEnabled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationRewardGuardsSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MaxCollateralAmountSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthDeductionPrioritySet'): EventFragment + functions: { + "createAccount(uint128)": FunctionFragment; + "getAccountLastInteraction(uint128)": FunctionFragment; + "getAccountOwner(uint128)": FunctionFragment; + "getAccountPermissions(uint128)": FunctionFragment; + "getAccountTokenAddress()": FunctionFragment; + "grantPermission(uint128,bytes32,address)": FunctionFragment; + "hasPermission(uint128,bytes32,address)": FunctionFragment; + "isAuthorized(uint128,bytes32,address)": FunctionFragment; + "notifyAccountTransfer(address,uint128)": FunctionFragment; + "renouncePermission(uint128,bytes32)": FunctionFragment; + "revokePermission(uint128,bytes32,address)": FunctionFragment; + "getAssociatedSystem(bytes32)": FunctionFragment; + "initOrUpgradeNft(bytes32,string,string,string,address)": FunctionFragment; + "initOrUpgradeToken(bytes32,string,string,uint8,address)": FunctionFragment; + "registerUnmanagedSystem(bytes32,address)": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "getImplementation()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "renounceNomination()": FunctionFragment; + "simulateUpgradeTo(address)": FunctionFragment; + "upgradeTo(address)": FunctionFragment; + "acceptMarketOwnership(uint128)": FunctionFragment; + "createMarket(string,string,address)": FunctionFragment; + "getMarketOwner(uint128)": FunctionFragment; + "minimumCredit(uint128)": FunctionFragment; + "name(uint128)": FunctionFragment; + "nominateMarketOwner(uint128,address)": FunctionFragment; + "reportedDebt(uint128)": FunctionFragment; + "setSpotMarket(address)": FunctionFragment; + "setSynthetix(address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "symbol(uint128)": FunctionFragment; + "updatePriceData(uint128,bytes32)": FunctionFragment; + "getAsyncOrderClaim(uint128,uint128)": FunctionFragment; + "getAvailableMargin(uint128)": FunctionFragment; + "getOpenPosition(uint128,uint128)": FunctionFragment; + "modifyCollateral(uint128,uint128,int256)": FunctionFragment; + "totalAccountOpenInterest(uint128)": FunctionFragment; + "totalCollateralValue(uint128)": FunctionFragment; + "currentFundingRate(uint128)": FunctionFragment; + "currentFundingVelocity(uint128)": FunctionFragment; + "fillPrice(uint128,int256,uint256)": FunctionFragment; + "getMarketSummary(uint128)": FunctionFragment; + "indexPrice(uint128)": FunctionFragment; + "maxOpenInterest(uint128)": FunctionFragment; + "size(uint128)": FunctionFragment; + "skew(uint128)": FunctionFragment; + "PRECISION()": FunctionFragment; + "cancelOrder(uint128,uint128)": FunctionFragment; + "commitOrder((uint128,uint128,int128,uint128,uint256,bytes32))": FunctionFragment; + "getOrder(uint128,uint128)": FunctionFragment; + "settle(uint128,uint128)": FunctionFragment; + "settlePythOrder(bytes,bytes)": FunctionFragment; + "addToFeatureFlagAllowlist(bytes32,address)": FunctionFragment; + "getDeniers(bytes32)": FunctionFragment; + "getFeatureFlagAllowAll(bytes32)": FunctionFragment; + "getFeatureFlagAllowlist(bytes32)": FunctionFragment; + "getFeatureFlagDenyAll(bytes32)": FunctionFragment; + "isFeatureAllowed(bytes32,address)": FunctionFragment; + "removeFromFeatureFlagAllowlist(bytes32,address)": FunctionFragment; + "setDeniers(bytes32,address[])": FunctionFragment; + "setFeatureFlagAllowAll(bytes32,bool)": FunctionFragment; + "setFeatureFlagDenyAll(bytes32,bool)": FunctionFragment; + "liquidate(uint128)": FunctionFragment; + "liquidateFlagged()": FunctionFragment; + "addSettlementStrategy(uint128,(uint8,uint256,uint256,uint256,address,bytes32,string,uint256,uint256,bool))": FunctionFragment; + "getFundingParameters(uint128)": FunctionFragment; + "getLiquidationParameters(uint128)": FunctionFragment; + "getLockedOiPercent(uint128)": FunctionFragment; + "getMaxMarketValue(uint128)": FunctionFragment; + "getOrderFees(uint128)": FunctionFragment; + "getSettlementStrategy(uint128,uint256)": FunctionFragment; + "setFundingParameters(uint128,uint256,uint256)": FunctionFragment; + "setLiquidationParameters(uint128,uint256,uint256,uint256,uint256,uint256)": FunctionFragment; + "setLockedOiPercent(uint128,uint256)": FunctionFragment; + "setMaxMarketValue(uint128,uint256)": FunctionFragment; + "setOrderFees(uint128,uint256,uint256)": FunctionFragment; + "setSettlementStrategyEnabled(uint128,uint256,bool)": FunctionFragment; + "getLiquidationRewardGuards()": FunctionFragment; + "getMaxCollateralAmount(uint128)": FunctionFragment; + "getSynthDeductionPriority()": FunctionFragment; + "setLiquidationRewardGuards(uint256,uint256)": FunctionFragment; + "setMaxCollateralAmount(uint128,uint256)": FunctionFragment; + "setSynthDeductionPriority(uint128[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "createAccount" + | "getAccountLastInteraction" + | "getAccountOwner" + | "getAccountPermissions" + | "getAccountTokenAddress" + | "grantPermission" + | "hasPermission" + | "isAuthorized" + | "notifyAccountTransfer" + | "renouncePermission" + | "revokePermission" + | "getAssociatedSystem" + | "initOrUpgradeNft" + | "initOrUpgradeToken" + | "registerUnmanagedSystem" + | "acceptOwnership" + | "getImplementation" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "renounceNomination" + | "simulateUpgradeTo" + | "upgradeTo" + | "acceptMarketOwnership" + | "createMarket" + | "getMarketOwner" + | "minimumCredit" + | "name" + | "nominateMarketOwner" + | "reportedDebt" + | "setSpotMarket" + | "setSynthetix" + | "supportsInterface" + | "symbol" + | "updatePriceData" + | "getAsyncOrderClaim" + | "getAvailableMargin" + | "getOpenPosition" + | "modifyCollateral" + | "totalAccountOpenInterest" + | "totalCollateralValue" + | "currentFundingRate" + | "currentFundingVelocity" + | "fillPrice" + | "getMarketSummary" + | "indexPrice" + | "maxOpenInterest" + | "size" + | "skew" + | "PRECISION" + | "cancelOrder" + | "commitOrder" + | "getOrder" + | "settle" + | "settlePythOrder" + | "addToFeatureFlagAllowlist" + | "getDeniers" + | "getFeatureFlagAllowAll" + | "getFeatureFlagAllowlist" + | "getFeatureFlagDenyAll" + | "isFeatureAllowed" + | "removeFromFeatureFlagAllowlist" + | "setDeniers" + | "setFeatureFlagAllowAll" + | "setFeatureFlagDenyAll" + | "liquidate" + | "liquidateFlagged" + | "addSettlementStrategy" + | "getFundingParameters" + | "getLiquidationParameters" + | "getLockedOiPercent" + | "getMaxMarketValue" + | "getOrderFees" + | "getSettlementStrategy" + | "setFundingParameters" + | "setLiquidationParameters" + | "setLockedOiPercent" + | "setMaxMarketValue" + | "setOrderFees" + | "setSettlementStrategyEnabled" + | "getLiquidationRewardGuards" + | "getMaxCollateralAmount" + | "getSynthDeductionPriority" + | "setLiquidationRewardGuards" + | "setMaxCollateralAmount" + | "setSynthDeductionPriority" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "createAccount", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountLastInteraction", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountOwner", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountPermissions", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountTokenAddress", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "grantPermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "hasPermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "isAuthorized", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "notifyAccountTransfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "renouncePermission", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "revokePermission", + values: [BigNumberish, BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "getAssociatedSystem", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "initOrUpgradeNft", + values: [BytesLike, string, string, string, string] + ): string; + encodeFunctionData( + functionFragment: "initOrUpgradeToken", + values: [BytesLike, string, string, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "registerUnmanagedSystem", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getImplementation", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "renounceNomination", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "simulateUpgradeTo", + values: [string] + ): string; + encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; + encodeFunctionData( + functionFragment: "acceptMarketOwnership", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "createMarket", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "getMarketOwner", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "minimumCredit", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "name", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "nominateMarketOwner", + values: [BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "reportedDebt", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSpotMarket", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setSynthetix", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "symbol", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "updatePriceData", + values: [BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getAsyncOrderClaim", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAvailableMargin", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getOpenPosition", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "modifyCollateral", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "totalAccountOpenInterest", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "totalCollateralValue", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currentFundingRate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currentFundingVelocity", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "fillPrice", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getMarketSummary", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "indexPrice", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "maxOpenInterest", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "size", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "skew", values: [BigNumberish]): string; + encodeFunctionData(functionFragment: "PRECISION", values?: undefined): string; + encodeFunctionData( + functionFragment: "cancelOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "commitOrder", + values: [AsyncOrder.OrderCommitmentRequestStruct] + ): string; + encodeFunctionData( + functionFragment: "getOrder", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "settle", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "settlePythOrder", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "addToFeatureFlagAllowlist", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "getDeniers", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagAllowAll", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagAllowlist", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFeatureFlagDenyAll", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "isFeatureAllowed", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "removeFromFeatureFlagAllowlist", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "setDeniers", + values: [BytesLike, string[]] + ): string; + encodeFunctionData( + functionFragment: "setFeatureFlagAllowAll", + values: [BytesLike, boolean] + ): string; + encodeFunctionData( + functionFragment: "setFeatureFlagDenyAll", + values: [BytesLike, boolean] + ): string; + encodeFunctionData( + functionFragment: "liquidate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateFlagged", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "addSettlementStrategy", + values: [BigNumberish, SettlementStrategy.DataStruct] + ): string; + encodeFunctionData( + functionFragment: "getFundingParameters", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getLiquidationParameters", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getLockedOiPercent", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getMaxMarketValue", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getOrderFees", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getSettlementStrategy", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setFundingParameters", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationParameters", + values: [ + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish, + BigNumberish + ] + ): string; + encodeFunctionData( + functionFragment: "setLockedOiPercent", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxMarketValue", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setOrderFees", + values: [BigNumberish, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSettlementStrategyEnabled", + values: [BigNumberish, BigNumberish, boolean] + ): string; + encodeFunctionData( + functionFragment: "getLiquidationRewardGuards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getMaxCollateralAmount", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getSynthDeductionPriority", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setLiquidationRewardGuards", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMaxCollateralAmount", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSynthDeductionPriority", + values: [BigNumberish[]] + ): string; + + decodeFunctionResult( + functionFragment: "createAccount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountLastInteraction", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountPermissions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountTokenAddress", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "grantPermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "hasPermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isAuthorized", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyAccountTransfer", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "renouncePermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "revokePermission", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAssociatedSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "initOrUpgradeNft", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "initOrUpgradeToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "registerUnmanagedSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getImplementation", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "renounceNomination", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "simulateUpgradeTo", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "acceptMarketOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "createMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMarketOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minimumCredit", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateMarketOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "reportedDebt", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSpotMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSynthetix", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "updatePriceData", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAsyncOrderClaim", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAvailableMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getOpenPosition", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "modifyCollateral", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalAccountOpenInterest", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalCollateralValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "currentFundingVelocity", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "fillPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getMarketSummary", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "indexPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "maxOpenInterest", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "size", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "skew", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "PRECISION", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "cancelOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "commitOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getOrder", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "settlePythOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addToFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getDeniers", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagAllowAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFeatureFlagDenyAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isFeatureAllowed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "removeFromFeatureFlagAllowlist", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setDeniers", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setFeatureFlagAllowAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFeatureFlagDenyAll", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "liquidate", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "liquidateFlagged", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "addSettlementStrategy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFundingParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLiquidationParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLockedOiPercent", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMaxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getOrderFees", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSettlementStrategy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFundingParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationParameters", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLockedOiPercent", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxMarketValue", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setOrderFees", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSettlementStrategyEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getLiquidationRewardGuards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getMaxCollateralAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthDeductionPriority", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationRewardGuards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMaxCollateralAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSynthDeductionPriority", + data: BytesLike + ): Result; + + events: { + "AccountCreated(uint128,address)": EventFragment; + "PermissionGranted(uint128,bytes32,address,address)": EventFragment; + "PermissionRevoked(uint128,bytes32,address,address)": EventFragment; + "AssociatedSystemSet(bytes32,bytes32,address,address)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Upgraded(address,address)": EventFragment; + "MarketOwnerChanged(uint128,address,address)": EventFragment; + "MarketOwnerNominated(uint128,address)": EventFragment; + "MarketPriceDataUpdated(uint128,bytes32)": EventFragment; + "MarketRegistered(uint128,address,string,string)": EventFragment; + "CollateralModified(uint128,uint128,int256,address)": EventFragment; + "OrderCanceled(uint128,uint128,uint256,uint256)": EventFragment; + "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)": EventFragment; + "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)": EventFragment; + "FeatureFlagAllowAllSet(bytes32,bool)": EventFragment; + "FeatureFlagAllowlistAdded(bytes32,address)": EventFragment; + "FeatureFlagAllowlistRemoved(bytes32,address)": EventFragment; + "FeatureFlagDeniersReset(bytes32,address[])": EventFragment; + "FeatureFlagDenyAllSet(bytes32,bool)": EventFragment; + "FundingParametersSet(uint128,uint256,uint256)": EventFragment; + "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)": EventFragment; + "LockedOiPercentSet(uint128,uint256)": EventFragment; + "MaxMarketValueSet(uint128,uint256)": EventFragment; + "OrderFeesSet(uint128,uint256,uint256)": EventFragment; + "SettlementStrategyAdded(uint128,tuple,uint256)": EventFragment; + "SettlementStrategyEnabled(uint128,uint256,bool)": EventFragment; + "LiquidationRewardGuardsSet(uint256,uint256)": EventFragment; + "MaxCollateralAmountSet(uint128,uint256)": EventFragment; + "SynthDeductionPrioritySet(uint128[])": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccountCreated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PermissionGranted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PermissionRevoked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AssociatedSystemSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketOwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketOwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketPriceDataUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MarketRegistered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CollateralModified"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderCanceled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderCommitted"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderSettled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowAllSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagAllowlistAdded"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "FeatureFlagAllowlistRemoved" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagDeniersReset"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeatureFlagDenyAllSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FundingParametersSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationParametersSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LockedOiPercentSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MaxMarketValueSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OrderFeesSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SettlementStrategyAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SettlementStrategyEnabled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationRewardGuardsSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MaxCollateralAmountSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthDeductionPrioritySet"): EventFragment; } export interface AccountCreatedEventObject { - accountId: BigNumber - owner: string + accountId: BigNumber; + owner: string; } -export type AccountCreatedEvent = TypedEvent<[BigNumber, string], AccountCreatedEventObject> +export type AccountCreatedEvent = TypedEvent< + [BigNumber, string], + AccountCreatedEventObject +>; -export type AccountCreatedEventFilter = TypedEventFilter +export type AccountCreatedEventFilter = TypedEventFilter; export interface PermissionGrantedEventObject { - accountId: BigNumber - permission: string - user: string - sender: string + accountId: BigNumber; + permission: string; + user: string; + sender: string; } export type PermissionGrantedEvent = TypedEvent< - [BigNumber, string, string, string], - PermissionGrantedEventObject -> + [BigNumber, string, string, string], + PermissionGrantedEventObject +>; -export type PermissionGrantedEventFilter = TypedEventFilter +export type PermissionGrantedEventFilter = + TypedEventFilter; export interface PermissionRevokedEventObject { - accountId: BigNumber - permission: string - user: string - sender: string + accountId: BigNumber; + permission: string; + user: string; + sender: string; } export type PermissionRevokedEvent = TypedEvent< - [BigNumber, string, string, string], - PermissionRevokedEventObject -> + [BigNumber, string, string, string], + PermissionRevokedEventObject +>; -export type PermissionRevokedEventFilter = TypedEventFilter +export type PermissionRevokedEventFilter = + TypedEventFilter; export interface AssociatedSystemSetEventObject { - kind: string - id: string - proxy: string - impl: string + kind: string; + id: string; + proxy: string; + impl: string; } export type AssociatedSystemSetEvent = TypedEvent< - [string, string, string, string], - AssociatedSystemSetEventObject -> + [string, string, string, string], + AssociatedSystemSetEventObject +>; -export type AssociatedSystemSetEventFilter = TypedEventFilter +export type AssociatedSystemSetEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface UpgradedEventObject { - self: string - implementation: string + self: string; + implementation: string; } -export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject> +export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject>; -export type UpgradedEventFilter = TypedEventFilter +export type UpgradedEventFilter = TypedEventFilter; export interface MarketOwnerChangedEventObject { - perpsMarketId: BigNumber - oldOwner: string - newOwner: string + perpsMarketId: BigNumber; + oldOwner: string; + newOwner: string; } export type MarketOwnerChangedEvent = TypedEvent< - [BigNumber, string, string], - MarketOwnerChangedEventObject -> + [BigNumber, string, string], + MarketOwnerChangedEventObject +>; -export type MarketOwnerChangedEventFilter = TypedEventFilter +export type MarketOwnerChangedEventFilter = + TypedEventFilter; export interface MarketOwnerNominatedEventObject { - perpsMarketId: BigNumber - newNominatedOwner: string + perpsMarketId: BigNumber; + newNominatedOwner: string; } export type MarketOwnerNominatedEvent = TypedEvent< - [BigNumber, string], - MarketOwnerNominatedEventObject -> + [BigNumber, string], + MarketOwnerNominatedEventObject +>; -export type MarketOwnerNominatedEventFilter = TypedEventFilter +export type MarketOwnerNominatedEventFilter = + TypedEventFilter; export interface MarketPriceDataUpdatedEventObject { - perpsMarketId: BigNumber - feedId: string + perpsMarketId: BigNumber; + feedId: string; } export type MarketPriceDataUpdatedEvent = TypedEvent< - [BigNumber, string], - MarketPriceDataUpdatedEventObject -> + [BigNumber, string], + MarketPriceDataUpdatedEventObject +>; -export type MarketPriceDataUpdatedEventFilter = TypedEventFilter +export type MarketPriceDataUpdatedEventFilter = + TypedEventFilter; export interface MarketRegisteredEventObject { - perpsMarketId: BigNumber - marketOwner: string - marketName: string - marketSymbol: string + perpsMarketId: BigNumber; + marketOwner: string; + marketName: string; + marketSymbol: string; } export type MarketRegisteredEvent = TypedEvent< - [BigNumber, string, string, string], - MarketRegisteredEventObject -> + [BigNumber, string, string, string], + MarketRegisteredEventObject +>; -export type MarketRegisteredEventFilter = TypedEventFilter +export type MarketRegisteredEventFilter = + TypedEventFilter; export interface CollateralModifiedEventObject { - accountId: BigNumber - synthMarketId: BigNumber - amountDelta: BigNumber - sender: string + accountId: BigNumber; + synthMarketId: BigNumber; + amountDelta: BigNumber; + sender: string; } export type CollateralModifiedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, string], - CollateralModifiedEventObject -> + [BigNumber, BigNumber, BigNumber, string], + CollateralModifiedEventObject +>; -export type CollateralModifiedEventFilter = TypedEventFilter +export type CollateralModifiedEventFilter = + TypedEventFilter; export interface OrderCanceledEventObject { - marketId: BigNumber - accountId: BigNumber - settlementTime: BigNumber - acceptablePrice: BigNumber + marketId: BigNumber; + accountId: BigNumber; + settlementTime: BigNumber; + acceptablePrice: BigNumber; } export type OrderCanceledEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber], - OrderCanceledEventObject -> + [BigNumber, BigNumber, BigNumber, BigNumber], + OrderCanceledEventObject +>; -export type OrderCanceledEventFilter = TypedEventFilter +export type OrderCanceledEventFilter = TypedEventFilter; export interface OrderCommittedEventObject { - marketId: BigNumber - accountId: BigNumber - orderType: number - sizeDelta: BigNumber - acceptablePrice: BigNumber - settlementTime: BigNumber - expirationTime: BigNumber - trackingCode: string - sender: string + marketId: BigNumber; + accountId: BigNumber; + orderType: number; + sizeDelta: BigNumber; + acceptablePrice: BigNumber; + settlementTime: BigNumber; + expirationTime: BigNumber; + trackingCode: string; + sender: string; } export type OrderCommittedEvent = TypedEvent< - [BigNumber, BigNumber, number, BigNumber, BigNumber, BigNumber, BigNumber, string, string], - OrderCommittedEventObject -> - -export type OrderCommittedEventFilter = TypedEventFilter + [ + BigNumber, + BigNumber, + number, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + string + ], + OrderCommittedEventObject +>; + +export type OrderCommittedEventFilter = TypedEventFilter; export interface OrderSettledEventObject { - marketId: BigNumber - accountId: BigNumber - fillPrice: BigNumber - accountPnlRealized: BigNumber - newSize: BigNumber - collectedFees: BigNumber - settelementReward: BigNumber - trackingCode: string - settler: string + marketId: BigNumber; + accountId: BigNumber; + fillPrice: BigNumber; + accountPnlRealized: BigNumber; + newSize: BigNumber; + collectedFees: BigNumber; + settelementReward: BigNumber; + trackingCode: string; + settler: string; } export type OrderSettledEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, string, string], - OrderSettledEventObject -> - -export type OrderSettledEventFilter = TypedEventFilter + [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + string + ], + OrderSettledEventObject +>; + +export type OrderSettledEventFilter = TypedEventFilter; export interface FeatureFlagAllowAllSetEventObject { - feature: string - allowAll: boolean + feature: string; + allowAll: boolean; } export type FeatureFlagAllowAllSetEvent = TypedEvent< - [string, boolean], - FeatureFlagAllowAllSetEventObject -> + [string, boolean], + FeatureFlagAllowAllSetEventObject +>; -export type FeatureFlagAllowAllSetEventFilter = TypedEventFilter +export type FeatureFlagAllowAllSetEventFilter = + TypedEventFilter; export interface FeatureFlagAllowlistAddedEventObject { - feature: string - account: string + feature: string; + account: string; } export type FeatureFlagAllowlistAddedEvent = TypedEvent< - [string, string], - FeatureFlagAllowlistAddedEventObject -> + [string, string], + FeatureFlagAllowlistAddedEventObject +>; -export type FeatureFlagAllowlistAddedEventFilter = TypedEventFilter +export type FeatureFlagAllowlistAddedEventFilter = + TypedEventFilter; export interface FeatureFlagAllowlistRemovedEventObject { - feature: string - account: string + feature: string; + account: string; } export type FeatureFlagAllowlistRemovedEvent = TypedEvent< - [string, string], - FeatureFlagAllowlistRemovedEventObject -> + [string, string], + FeatureFlagAllowlistRemovedEventObject +>; export type FeatureFlagAllowlistRemovedEventFilter = - TypedEventFilter + TypedEventFilter; export interface FeatureFlagDeniersResetEventObject { - feature: string - deniers: string[] + feature: string; + deniers: string[]; } export type FeatureFlagDeniersResetEvent = TypedEvent< - [string, string[]], - FeatureFlagDeniersResetEventObject -> + [string, string[]], + FeatureFlagDeniersResetEventObject +>; -export type FeatureFlagDeniersResetEventFilter = TypedEventFilter +export type FeatureFlagDeniersResetEventFilter = + TypedEventFilter; export interface FeatureFlagDenyAllSetEventObject { - feature: string - denyAll: boolean + feature: string; + denyAll: boolean; } export type FeatureFlagDenyAllSetEvent = TypedEvent< - [string, boolean], - FeatureFlagDenyAllSetEventObject -> + [string, boolean], + FeatureFlagDenyAllSetEventObject +>; -export type FeatureFlagDenyAllSetEventFilter = TypedEventFilter +export type FeatureFlagDenyAllSetEventFilter = + TypedEventFilter; export interface FundingParametersSetEventObject { - marketId: BigNumber - skewScale: BigNumber - maxFundingVelocity: BigNumber + marketId: BigNumber; + skewScale: BigNumber; + maxFundingVelocity: BigNumber; } export type FundingParametersSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - FundingParametersSetEventObject -> + [BigNumber, BigNumber, BigNumber], + FundingParametersSetEventObject +>; -export type FundingParametersSetEventFilter = TypedEventFilter +export type FundingParametersSetEventFilter = + TypedEventFilter; export interface LiquidationParametersSetEventObject { - marketId: BigNumber - initialMarginFraction: BigNumber - maintenanceMarginFraction: BigNumber - liquidationRewardRatioD18: BigNumber - maxLiquidationLimitAccumulationMultiplier: BigNumber - maxSecondsInLiquidationWindow: BigNumber + marketId: BigNumber; + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; } export type LiquidationParametersSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], - LiquidationParametersSetEventObject -> + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber], + LiquidationParametersSetEventObject +>; -export type LiquidationParametersSetEventFilter = TypedEventFilter +export type LiquidationParametersSetEventFilter = + TypedEventFilter; export interface LockedOiPercentSetEventObject { - marketId: BigNumber - lockedOiPercent: BigNumber + marketId: BigNumber; + lockedOiPercent: BigNumber; } export type LockedOiPercentSetEvent = TypedEvent< - [BigNumber, BigNumber], - LockedOiPercentSetEventObject -> + [BigNumber, BigNumber], + LockedOiPercentSetEventObject +>; -export type LockedOiPercentSetEventFilter = TypedEventFilter +export type LockedOiPercentSetEventFilter = + TypedEventFilter; export interface MaxMarketValueSetEventObject { - marketId: BigNumber - maxMarketValue: BigNumber + marketId: BigNumber; + maxMarketValue: BigNumber; } export type MaxMarketValueSetEvent = TypedEvent< - [BigNumber, BigNumber], - MaxMarketValueSetEventObject -> + [BigNumber, BigNumber], + MaxMarketValueSetEventObject +>; -export type MaxMarketValueSetEventFilter = TypedEventFilter +export type MaxMarketValueSetEventFilter = + TypedEventFilter; export interface OrderFeesSetEventObject { - marketId: BigNumber - makerFeeRatio: BigNumber - takerFeeRatio: BigNumber + marketId: BigNumber; + makerFeeRatio: BigNumber; + takerFeeRatio: BigNumber; } export type OrderFeesSetEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - OrderFeesSetEventObject -> + [BigNumber, BigNumber, BigNumber], + OrderFeesSetEventObject +>; -export type OrderFeesSetEventFilter = TypedEventFilter +export type OrderFeesSetEventFilter = TypedEventFilter; export interface SettlementStrategyAddedEventObject { - marketId: BigNumber - strategy: SettlementStrategy.DataStructOutput - strategyId: BigNumber + marketId: BigNumber; + strategy: SettlementStrategy.DataStructOutput; + strategyId: BigNumber; } export type SettlementStrategyAddedEvent = TypedEvent< - [BigNumber, SettlementStrategy.DataStructOutput, BigNumber], - SettlementStrategyAddedEventObject -> + [BigNumber, SettlementStrategy.DataStructOutput, BigNumber], + SettlementStrategyAddedEventObject +>; -export type SettlementStrategyAddedEventFilter = TypedEventFilter +export type SettlementStrategyAddedEventFilter = + TypedEventFilter; export interface SettlementStrategyEnabledEventObject { - marketId: BigNumber - strategyId: BigNumber - enabled: boolean + marketId: BigNumber; + strategyId: BigNumber; + enabled: boolean; } export type SettlementStrategyEnabledEvent = TypedEvent< - [BigNumber, BigNumber, boolean], - SettlementStrategyEnabledEventObject -> + [BigNumber, BigNumber, boolean], + SettlementStrategyEnabledEventObject +>; -export type SettlementStrategyEnabledEventFilter = TypedEventFilter +export type SettlementStrategyEnabledEventFilter = + TypedEventFilter; export interface LiquidationRewardGuardsSetEventObject { - minLiquidationRewardUsd: BigNumber - maxLiquidationRewardUsd: BigNumber + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; } export type LiquidationRewardGuardsSetEvent = TypedEvent< - [BigNumber, BigNumber], - LiquidationRewardGuardsSetEventObject -> + [BigNumber, BigNumber], + LiquidationRewardGuardsSetEventObject +>; export type LiquidationRewardGuardsSetEventFilter = - TypedEventFilter + TypedEventFilter; export interface MaxCollateralAmountSetEventObject { - synthMarketId: BigNumber - collateralAmount: BigNumber + synthMarketId: BigNumber; + collateralAmount: BigNumber; } export type MaxCollateralAmountSetEvent = TypedEvent< - [BigNumber, BigNumber], - MaxCollateralAmountSetEventObject -> + [BigNumber, BigNumber], + MaxCollateralAmountSetEventObject +>; -export type MaxCollateralAmountSetEventFilter = TypedEventFilter +export type MaxCollateralAmountSetEventFilter = + TypedEventFilter; export interface SynthDeductionPrioritySetEventObject { - newSynthDeductionPriority: BigNumber[] + newSynthDeductionPriority: BigNumber[]; } export type SynthDeductionPrioritySetEvent = TypedEvent< - [BigNumber[]], - SynthDeductionPrioritySetEventObject -> + [BigNumber[]], + SynthDeductionPrioritySetEventObject +>; -export type SynthDeductionPrioritySetEventFilter = TypedEventFilter +export type SynthDeductionPrioritySetEventFilter = + TypedEventFilter; export interface PerpsV3MarketProxy extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PerpsV3MarketProxyInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - 'createAccount()'(overrides?: Overrides & { from?: string }): Promise - - 'createAccount(uint128)'( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [IAccountModule.AccountPermissionsStructOutput[]] & { - accountPerms: IAccountModule.AccountPermissionsStructOutput[] - } - > - - getAccountTokenAddress(overrides?: CallOverrides): Promise<[string]> - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise<[boolean]> - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise<[boolean]> - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }> - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - getImplementation(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - renounceNomination(overrides?: Overrides & { from?: string }): Promise - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise - - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[AsyncOrder.DataStructOutput]> - - getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]> - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [IPerpsMarketModule.MarketSummaryStructOutput] & { - summary: IPerpsMarketModule.MarketSummaryStructOutput - } - > - - indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - PRECISION(overrides?: CallOverrides): Promise<[BigNumber]> - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[AsyncOrder.DataStructOutput]> - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise<[void]> - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise<[string[]]> - - getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise<[string[]]> - - getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise<[boolean]> - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateFlagged(overrides?: Overrides & { from?: string }): Promise - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber - maxFundingVelocity: BigNumber - } - > - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber - maintenanceMarginFraction: BigNumber - liquidationRewardRatioD18: BigNumber - maxLiquidationLimitAccumulationMultiplier: BigNumber - maxSecondsInLiquidationWindow: BigNumber - } - > - - getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber] & { maxMarketValue: BigNumber }> - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [SettlementStrategy.DataStructOutput] & { - settlementStrategy: SettlementStrategy.DataStructOutput - } - > - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber - maxLiquidationRewardUsd: BigNumber - } - > - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - getSynthDeductionPriority(overrides?: CallOverrides): Promise<[BigNumber[]]> - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - } - - 'createAccount()'(overrides?: Overrides & { from?: string }): Promise - - 'createAccount(uint128)'( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountLastInteraction(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountTokenAddress(overrides?: CallOverrides): Promise - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }> - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - getImplementation(overrides?: CallOverrides): Promise - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - renounceNomination(overrides?: Overrides & { from?: string }): Promise - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise - - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise - - symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]> - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise - - totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise - - maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise - - PRECISION(overrides?: CallOverrides): Promise - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settle(marketId: BigNumberish, accountId: BigNumberish, overrides?: CallOverrides): Promise - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise - - isFeatureAllowed(feature: BytesLike, account: string, overrides?: CallOverrides): Promise - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateFlagged(overrides?: Overrides & { from?: string }): Promise - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber - maxFundingVelocity: BigNumber - } - > - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber - maintenanceMarginFraction: BigNumber - liquidationRewardRatioD18: BigNumber - maxLiquidationLimitAccumulationMultiplier: BigNumber - maxSecondsInLiquidationWindow: BigNumber - } - > - - getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber - maxLiquidationRewardUsd: BigNumber - } - > - - getMaxCollateralAmount(synthMarketId: BigNumberish, overrides?: CallOverrides): Promise - - getSynthDeductionPriority(overrides?: CallOverrides): Promise - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - callStatic: { - 'createAccount()'(overrides?: CallOverrides): Promise - - 'createAccount(uint128)'( - requestedAccountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountTokenAddress(overrides?: CallOverrides): Promise - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: CallOverrides - ): Promise - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - getAssociatedSystem( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[string, string] & { addr: string; kind: string }> - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: CallOverrides - ): Promise - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: CallOverrides - ): Promise - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: CallOverrides - ): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - getImplementation(overrides?: CallOverrides): Promise - - nominateNewOwner(newNominatedOwner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - renounceNomination(overrides?: CallOverrides): Promise - - simulateUpgradeTo(newImplementation: string, overrides?: CallOverrides): Promise - - upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise - - acceptMarketOwnership(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: CallOverrides - ): Promise - - getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: CallOverrides - ): Promise - - reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - setSpotMarket(spotMarket: string, overrides?: CallOverrides): Promise - - setSynthetix(synthetix: string, overrides?: CallOverrides): Promise - - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise - - symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: CallOverrides - ): Promise - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber, BigNumber]> - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: CallOverrides - ): Promise - - totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise - - totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise - - maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise - - PRECISION(overrides?: CallOverrides): Promise - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: CallOverrides - ): Promise< - [AsyncOrder.DataStructOutput, BigNumber] & { - retOrder: AsyncOrder.DataStructOutput - fees: BigNumber - } - > - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: CallOverrides - ): Promise - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - setDeniers(feature: BytesLike, deniers: string[], overrides?: CallOverrides): Promise - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: CallOverrides - ): Promise - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: CallOverrides - ): Promise - - liquidate(accountId: BigNumberish, overrides?: CallOverrides): Promise - - liquidateFlagged(overrides?: CallOverrides): Promise - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: CallOverrides - ): Promise - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber] & { - skewScale: BigNumber - maxFundingVelocity: BigNumber - } - > - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - initialMarginFraction: BigNumber - maintenanceMarginFraction: BigNumber - liquidationRewardRatioD18: BigNumber - maxLiquidationLimitAccumulationMultiplier: BigNumber - maxSecondsInLiquidationWindow: BigNumber - } - > - - getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getOrderFees( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber }> - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: CallOverrides - ): Promise - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: CallOverrides - ): Promise - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: CallOverrides - ): Promise - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: CallOverrides - ): Promise - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: CallOverrides - ): Promise - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise< - [BigNumber, BigNumber] & { - minLiquidationRewardUsd: BigNumber - maxLiquidationRewardUsd: BigNumber - } - > - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getSynthDeductionPriority(overrides?: CallOverrides): Promise - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: CallOverrides - ): Promise - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: CallOverrides - ): Promise - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AccountCreated(uint128,address)'( - accountId?: BigNumberish | null, - owner?: string | null - ): AccountCreatedEventFilter - AccountCreated( - accountId?: BigNumberish | null, - owner?: string | null - ): AccountCreatedEventFilter - - 'PermissionGranted(uint128,bytes32,address,address)'( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionGrantedEventFilter - PermissionGranted( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionGrantedEventFilter - - 'PermissionRevoked(uint128,bytes32,address,address)'( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionRevokedEventFilter - PermissionRevoked( - accountId?: BigNumberish | null, - permission?: BytesLike | null, - user?: string | null, - sender?: null - ): PermissionRevokedEventFilter - - 'AssociatedSystemSet(bytes32,bytes32,address,address)'( - kind?: BytesLike | null, - id?: BytesLike | null, - proxy?: null, - impl?: null - ): AssociatedSystemSetEventFilter - AssociatedSystemSet( - kind?: BytesLike | null, - id?: BytesLike | null, - proxy?: null, - impl?: null - ): AssociatedSystemSetEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'Upgraded(address,address)'(self?: string | null, implementation?: null): UpgradedEventFilter - Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter - - 'MarketOwnerChanged(uint128,address,address)'( - perpsMarketId?: BigNumberish | null, - oldOwner?: null, - newOwner?: null - ): MarketOwnerChangedEventFilter - MarketOwnerChanged( - perpsMarketId?: BigNumberish | null, - oldOwner?: null, - newOwner?: null - ): MarketOwnerChangedEventFilter - - 'MarketOwnerNominated(uint128,address)'( - perpsMarketId?: BigNumberish | null, - newNominatedOwner?: null - ): MarketOwnerNominatedEventFilter - MarketOwnerNominated( - perpsMarketId?: BigNumberish | null, - newNominatedOwner?: null - ): MarketOwnerNominatedEventFilter - - 'MarketPriceDataUpdated(uint128,bytes32)'( - perpsMarketId?: BigNumberish | null, - feedId?: null - ): MarketPriceDataUpdatedEventFilter - MarketPriceDataUpdated( - perpsMarketId?: BigNumberish | null, - feedId?: null - ): MarketPriceDataUpdatedEventFilter - - 'MarketRegistered(uint128,address,string,string)'( - perpsMarketId?: BigNumberish | null, - marketOwner?: string | null, - marketName?: null, - marketSymbol?: null - ): MarketRegisteredEventFilter - MarketRegistered( - perpsMarketId?: BigNumberish | null, - marketOwner?: string | null, - marketName?: null, - marketSymbol?: null - ): MarketRegisteredEventFilter - - 'CollateralModified(uint128,uint128,int256,address)'( - accountId?: BigNumberish | null, - synthMarketId?: BigNumberish | null, - amountDelta?: BigNumberish | null, - sender?: null - ): CollateralModifiedEventFilter - CollateralModified( - accountId?: BigNumberish | null, - synthMarketId?: BigNumberish | null, - amountDelta?: BigNumberish | null, - sender?: null - ): CollateralModifiedEventFilter - - 'OrderCanceled(uint128,uint128,uint256,uint256)'( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - settlementTime?: null, - acceptablePrice?: null - ): OrderCanceledEventFilter - OrderCanceled( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - settlementTime?: null, - acceptablePrice?: null - ): OrderCanceledEventFilter - - 'OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)'( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - orderType?: BigNumberish | null, - sizeDelta?: null, - acceptablePrice?: null, - settlementTime?: null, - expirationTime?: null, - trackingCode?: null, - sender?: null - ): OrderCommittedEventFilter - OrderCommitted( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - orderType?: BigNumberish | null, - sizeDelta?: null, - acceptablePrice?: null, - settlementTime?: null, - expirationTime?: null, - trackingCode?: null, - sender?: null - ): OrderCommittedEventFilter - - 'OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)'( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - fillPrice?: null, - accountPnlRealized?: null, - newSize?: null, - collectedFees?: null, - settelementReward?: null, - trackingCode?: BytesLike | null, - settler?: null - ): OrderSettledEventFilter - OrderSettled( - marketId?: BigNumberish | null, - accountId?: BigNumberish | null, - fillPrice?: null, - accountPnlRealized?: null, - newSize?: null, - collectedFees?: null, - settelementReward?: null, - trackingCode?: BytesLike | null, - settler?: null - ): OrderSettledEventFilter - - 'FeatureFlagAllowAllSet(bytes32,bool)'( - feature?: BytesLike | null, - allowAll?: null - ): FeatureFlagAllowAllSetEventFilter - FeatureFlagAllowAllSet( - feature?: BytesLike | null, - allowAll?: null - ): FeatureFlagAllowAllSetEventFilter - - 'FeatureFlagAllowlistAdded(bytes32,address)'( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistAddedEventFilter - FeatureFlagAllowlistAdded( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistAddedEventFilter - - 'FeatureFlagAllowlistRemoved(bytes32,address)'( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistRemovedEventFilter - FeatureFlagAllowlistRemoved( - feature?: BytesLike | null, - account?: null - ): FeatureFlagAllowlistRemovedEventFilter - - 'FeatureFlagDeniersReset(bytes32,address[])'( - feature?: BytesLike | null, - deniers?: null - ): FeatureFlagDeniersResetEventFilter - FeatureFlagDeniersReset( - feature?: BytesLike | null, - deniers?: null - ): FeatureFlagDeniersResetEventFilter - - 'FeatureFlagDenyAllSet(bytes32,bool)'( - feature?: BytesLike | null, - denyAll?: null - ): FeatureFlagDenyAllSetEventFilter - FeatureFlagDenyAllSet( - feature?: BytesLike | null, - denyAll?: null - ): FeatureFlagDenyAllSetEventFilter - - 'FundingParametersSet(uint128,uint256,uint256)'( - marketId?: null, - skewScale?: null, - maxFundingVelocity?: null - ): FundingParametersSetEventFilter - FundingParametersSet( - marketId?: null, - skewScale?: null, - maxFundingVelocity?: null - ): FundingParametersSetEventFilter - - 'LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)'( - marketId?: null, - initialMarginFraction?: null, - maintenanceMarginFraction?: null, - liquidationRewardRatioD18?: null, - maxLiquidationLimitAccumulationMultiplier?: null, - maxSecondsInLiquidationWindow?: null - ): LiquidationParametersSetEventFilter - LiquidationParametersSet( - marketId?: null, - initialMarginFraction?: null, - maintenanceMarginFraction?: null, - liquidationRewardRatioD18?: null, - maxLiquidationLimitAccumulationMultiplier?: null, - maxSecondsInLiquidationWindow?: null - ): LiquidationParametersSetEventFilter - - 'LockedOiPercentSet(uint128,uint256)'( - marketId?: null, - lockedOiPercent?: null - ): LockedOiPercentSetEventFilter - LockedOiPercentSet(marketId?: null, lockedOiPercent?: null): LockedOiPercentSetEventFilter - - 'MaxMarketValueSet(uint128,uint256)'( - marketId?: null, - maxMarketValue?: null - ): MaxMarketValueSetEventFilter - MaxMarketValueSet(marketId?: null, maxMarketValue?: null): MaxMarketValueSetEventFilter - - 'OrderFeesSet(uint128,uint256,uint256)'( - marketId?: null, - makerFeeRatio?: null, - takerFeeRatio?: null - ): OrderFeesSetEventFilter - OrderFeesSet( - marketId?: null, - makerFeeRatio?: null, - takerFeeRatio?: null - ): OrderFeesSetEventFilter - - 'SettlementStrategyAdded(uint128,tuple,uint256)'( - marketId?: BigNumberish | null, - strategy?: null, - strategyId?: BigNumberish | null - ): SettlementStrategyAddedEventFilter - SettlementStrategyAdded( - marketId?: BigNumberish | null, - strategy?: null, - strategyId?: BigNumberish | null - ): SettlementStrategyAddedEventFilter - - 'SettlementStrategyEnabled(uint128,uint256,bool)'( - marketId?: null, - strategyId?: null, - enabled?: null - ): SettlementStrategyEnabledEventFilter - SettlementStrategyEnabled( - marketId?: null, - strategyId?: null, - enabled?: null - ): SettlementStrategyEnabledEventFilter - - 'LiquidationRewardGuardsSet(uint256,uint256)'( - minLiquidationRewardUsd?: BigNumberish | null, - maxLiquidationRewardUsd?: BigNumberish | null - ): LiquidationRewardGuardsSetEventFilter - LiquidationRewardGuardsSet( - minLiquidationRewardUsd?: BigNumberish | null, - maxLiquidationRewardUsd?: BigNumberish | null - ): LiquidationRewardGuardsSetEventFilter - - 'MaxCollateralAmountSet(uint128,uint256)'( - synthMarketId?: BigNumberish | null, - collateralAmount?: null - ): MaxCollateralAmountSetEventFilter - MaxCollateralAmountSet( - synthMarketId?: BigNumberish | null, - collateralAmount?: null - ): MaxCollateralAmountSetEventFilter - - 'SynthDeductionPrioritySet(uint128[])'( - newSynthDeductionPriority?: null - ): SynthDeductionPrioritySetEventFilter - SynthDeductionPrioritySet( - newSynthDeductionPriority?: null - ): SynthDeductionPrioritySetEventFilter - } - - estimateGas: { - 'createAccount()'(overrides?: Overrides & { from?: string }): Promise - - 'createAccount(uint128)'( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountOwner(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getAccountPermissions(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getAccountTokenAddress(overrides?: CallOverrides): Promise - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - getAssociatedSystem(id: BytesLike, overrides?: CallOverrides): Promise - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - getImplementation(overrides?: CallOverrides): Promise - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - renounceNomination(overrides?: Overrides & { from?: string }): Promise - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - getMarketOwner(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - minimumCredit(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - reportedDebt(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - setSpotMarket(spotMarket: string, overrides?: Overrides & { from?: string }): Promise - - setSynthetix(synthetix: string, overrides?: Overrides & { from?: string }): Promise - - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise - - symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAvailableMargin(accountId: BigNumberish, overrides?: CallOverrides): Promise - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalAccountOpenInterest(accountId: BigNumberish, overrides?: CallOverrides): Promise - - totalCollateralValue(accountId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingRate(marketId: BigNumberish, overrides?: CallOverrides): Promise - - currentFundingVelocity(marketId: BigNumberish, overrides?: CallOverrides): Promise - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise - - getMarketSummary(marketId: BigNumberish, overrides?: CallOverrides): Promise - - indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise - - maxOpenInterest(marketId: BigNumberish, overrides?: CallOverrides): Promise - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise - - PRECISION(overrides?: CallOverrides): Promise - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowAll(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowlist(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagDenyAll(feature: BytesLike, overrides?: CallOverrides): Promise - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateFlagged(overrides?: Overrides & { from?: string }): Promise - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getFundingParameters(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getLiquidationParameters(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getLockedOiPercent(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getMaxMarketValue(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getOrderFees(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getSynthDeductionPriority(overrides?: CallOverrides): Promise - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - } - - populateTransaction: { - 'createAccount()'(overrides?: Overrides & { from?: string }): Promise - - 'createAccount(uint128)'( - requestedAccountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountLastInteraction( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountOwner( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountPermissions( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountTokenAddress(overrides?: CallOverrides): Promise - - grantPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - hasPermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - isAuthorized( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: CallOverrides - ): Promise - - notifyAccountTransfer( - to: string, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - renouncePermission( - accountId: BigNumberish, - permission: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - revokePermission( - accountId: BigNumberish, - permission: BytesLike, - user: string, - overrides?: Overrides & { from?: string } - ): Promise - - getAssociatedSystem(id: BytesLike, overrides?: CallOverrides): Promise - - initOrUpgradeNft( - id: BytesLike, - name: string, - symbol: string, - uri: string, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - initOrUpgradeToken( - id: BytesLike, - name: string, - symbol: string, - decimals: BigNumberish, - impl: string, - overrides?: Overrides & { from?: string } - ): Promise - - registerUnmanagedSystem( - id: BytesLike, - endpoint: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - getImplementation(overrides?: CallOverrides): Promise - - nominateNewOwner( - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - renounceNomination(overrides?: Overrides & { from?: string }): Promise - - simulateUpgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeTo( - newImplementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - acceptMarketOwnership( - perpsMarketId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - createMarket( - marketName: string, - marketSymbol: string, - marketOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - getMarketOwner( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - minimumCredit( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - nominateMarketOwner( - perpsMarketId: BigNumberish, - newNominatedOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - reportedDebt( - perpsMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - setSpotMarket( - spotMarket: string, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthetix( - synthetix: string, - overrides?: Overrides & { from?: string } - ): Promise - - supportsInterface( - interfaceId: BytesLike, - overrides?: CallOverrides - ): Promise - - symbol(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise - - updatePriceData( - perpsMarketId: BigNumberish, - feedId: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getAsyncOrderClaim( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAvailableMargin( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getOpenPosition( - accountId: BigNumberish, - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - modifyCollateral( - accountId: BigNumberish, - synthMarketId: BigNumberish, - amountDelta: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - totalAccountOpenInterest( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - totalCollateralValue( - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - currentFundingRate( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - currentFundingVelocity( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - fillPrice( - marketId: BigNumberish, - orderSize: BigNumberish, - price: BigNumberish, - overrides?: CallOverrides - ): Promise - - getMarketSummary( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - indexPrice(marketId: BigNumberish, overrides?: CallOverrides): Promise - - maxOpenInterest( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - size(marketId: BigNumberish, overrides?: CallOverrides): Promise - - skew(marketId: BigNumberish, overrides?: CallOverrides): Promise - - PRECISION(overrides?: CallOverrides): Promise - - cancelOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - commitOrder( - commitment: AsyncOrder.OrderCommitmentRequestStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getOrder( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settle( - marketId: BigNumberish, - accountId: BigNumberish, - overrides?: CallOverrides - ): Promise - - settlePythOrder( - result: BytesLike, - extraData: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - addToFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise - - getFeatureFlagAllowAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise - - getFeatureFlagAllowlist( - feature: BytesLike, - overrides?: CallOverrides - ): Promise - - getFeatureFlagDenyAll( - feature: BytesLike, - overrides?: CallOverrides - ): Promise - - isFeatureAllowed( - feature: BytesLike, - account: string, - overrides?: CallOverrides - ): Promise - - removeFromFeatureFlagAllowlist( - feature: BytesLike, - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - setDeniers( - feature: BytesLike, - deniers: string[], - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagAllowAll( - feature: BytesLike, - allowAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setFeatureFlagDenyAll( - feature: BytesLike, - denyAll: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - liquidate( - accountId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateFlagged(overrides?: Overrides & { from?: string }): Promise - - addSettlementStrategy( - marketId: BigNumberish, - strategy: SettlementStrategy.DataStruct, - overrides?: Overrides & { from?: string } - ): Promise - - getFundingParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getLiquidationParameters( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getLockedOiPercent( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getMaxMarketValue( - marketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getOrderFees(marketId: BigNumberish, overrides?: CallOverrides): Promise - - getSettlementStrategy( - marketId: BigNumberish, - strategyId: BigNumberish, - overrides?: CallOverrides - ): Promise - - setFundingParameters( - marketId: BigNumberish, - skewScale: BigNumberish, - maxFundingVelocity: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationParameters( - marketId: BigNumberish, - initialMarginFraction: BigNumberish, - maintenanceMarginFraction: BigNumberish, - liquidationRewardRatioD18: BigNumberish, - maxLiquidationLimitAccumulationMultiplier: BigNumberish, - maxSecondsInLiquidationWindow: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLockedOiPercent( - marketId: BigNumberish, - lockedOiPercent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxMarketValue( - marketId: BigNumberish, - maxMarketValue: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setOrderFees( - marketId: BigNumberish, - makerFeeRatio: BigNumberish, - takerFeeRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSettlementStrategyEnabled( - marketId: BigNumberish, - strategyId: BigNumberish, - enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - getLiquidationRewardGuards(overrides?: CallOverrides): Promise - - getMaxCollateralAmount( - synthMarketId: BigNumberish, - overrides?: CallOverrides - ): Promise - - getSynthDeductionPriority(overrides?: CallOverrides): Promise - - setLiquidationRewardGuards( - minLiquidationRewardUsd: BigNumberish, - maxLiquidationRewardUsd: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMaxCollateralAmount( - synthMarketId: BigNumberish, - collateralAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSynthDeductionPriority( - newSynthDeductionPriority: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV3MarketProxyInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + createAccount( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IAccountModule.AccountPermissionsStructOutput[]] & { + accountPerms: IAccountModule.AccountPermissionsStructOutput[]; + } + >; + + getAccountTokenAddress(overrides?: CallOverrides): Promise<[string]>; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]>; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [IPerpsMarketModule.MarketSummaryStructOutput] & { + summary: IPerpsMarketModule.MarketSummaryStructOutput; + } + >; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + size( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + skew( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + PRECISION(overrides?: CallOverrides): Promise<[BigNumber]>; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[AsyncOrder.DataStructOutput]>; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise<[void]>; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[string[]]>; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[string[]]>; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxMarketValue: BigNumber }>; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [SettlementStrategy.DataStructOutput] & { + settlementStrategy: SettlementStrategy.DataStructOutput; + } + >; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + getSynthDeductionPriority( + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + createAccount( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name(perpsMarketId: BigNumberish, overrides?: CallOverrides): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers(feature: BytesLike, overrides?: CallOverrides): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + createAccount( + requestedAccountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: CallOverrides + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise<[string, string] & { addr: string; kind: string }>; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: CallOverrides + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: CallOverrides + ): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination(overrides?: CallOverrides): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: CallOverrides + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket(spotMarket: string, overrides?: CallOverrides): Promise; + + setSynthetix(synthetix: string, overrides?: CallOverrides): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: CallOverrides + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber, BigNumber]>; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: CallOverrides + ): Promise< + [AsyncOrder.DataStructOutput, BigNumber] & { + retOrder: AsyncOrder.DataStructOutput; + fees: BigNumber; + } + >; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: CallOverrides + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: CallOverrides + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: CallOverrides + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: CallOverrides + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateFlagged(overrides?: CallOverrides): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: CallOverrides + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + skewScale: BigNumber; + maxFundingVelocity: BigNumber; + } + >; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { + initialMarginFraction: BigNumber; + maintenanceMarginFraction: BigNumber; + liquidationRewardRatioD18: BigNumber; + maxLiquidationLimitAccumulationMultiplier: BigNumber; + maxSecondsInLiquidationWindow: BigNumber; + } + >; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { makerFee: BigNumber; takerFee: BigNumber } + >; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: CallOverrides + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { + minLiquidationRewardUsd: BigNumber; + maxLiquidationRewardUsd: BigNumber; + } + >; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccountCreated(uint128,address)"( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter; + AccountCreated( + accountId?: BigNumberish | null, + owner?: string | null + ): AccountCreatedEventFilter; + + "PermissionGranted(uint128,bytes32,address,address)"( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter; + PermissionGranted( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionGrantedEventFilter; + + "PermissionRevoked(uint128,bytes32,address,address)"( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter; + PermissionRevoked( + accountId?: BigNumberish | null, + permission?: BytesLike | null, + user?: string | null, + sender?: null + ): PermissionRevokedEventFilter; + + "AssociatedSystemSet(bytes32,bytes32,address,address)"( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter; + AssociatedSystemSet( + kind?: BytesLike | null, + id?: BytesLike | null, + proxy?: null, + impl?: null + ): AssociatedSystemSetEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "Upgraded(address,address)"( + self?: string | null, + implementation?: null + ): UpgradedEventFilter; + Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter; + + "MarketOwnerChanged(uint128,address,address)"( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter; + MarketOwnerChanged( + perpsMarketId?: BigNumberish | null, + oldOwner?: null, + newOwner?: null + ): MarketOwnerChangedEventFilter; + + "MarketOwnerNominated(uint128,address)"( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter; + MarketOwnerNominated( + perpsMarketId?: BigNumberish | null, + newNominatedOwner?: null + ): MarketOwnerNominatedEventFilter; + + "MarketPriceDataUpdated(uint128,bytes32)"( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter; + MarketPriceDataUpdated( + perpsMarketId?: BigNumberish | null, + feedId?: null + ): MarketPriceDataUpdatedEventFilter; + + "MarketRegistered(uint128,address,string,string)"( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter; + MarketRegistered( + perpsMarketId?: BigNumberish | null, + marketOwner?: string | null, + marketName?: null, + marketSymbol?: null + ): MarketRegisteredEventFilter; + + "CollateralModified(uint128,uint128,int256,address)"( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter; + CollateralModified( + accountId?: BigNumberish | null, + synthMarketId?: BigNumberish | null, + amountDelta?: BigNumberish | null, + sender?: null + ): CollateralModifiedEventFilter; + + "OrderCanceled(uint128,uint128,uint256,uint256)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter; + OrderCanceled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + settlementTime?: null, + acceptablePrice?: null + ): OrderCanceledEventFilter; + + "OrderCommitted(uint128,uint128,uint8,int128,uint256,uint256,uint256,bytes32,address)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter; + OrderCommitted( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + orderType?: BigNumberish | null, + sizeDelta?: null, + acceptablePrice?: null, + settlementTime?: null, + expirationTime?: null, + trackingCode?: null, + sender?: null + ): OrderCommittedEventFilter; + + "OrderSettled(uint128,uint128,uint256,int256,int128,uint256,uint256,bytes32,address)"( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter; + OrderSettled( + marketId?: BigNumberish | null, + accountId?: BigNumberish | null, + fillPrice?: null, + accountPnlRealized?: null, + newSize?: null, + collectedFees?: null, + settelementReward?: null, + trackingCode?: BytesLike | null, + settler?: null + ): OrderSettledEventFilter; + + "FeatureFlagAllowAllSet(bytes32,bool)"( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter; + FeatureFlagAllowAllSet( + feature?: BytesLike | null, + allowAll?: null + ): FeatureFlagAllowAllSetEventFilter; + + "FeatureFlagAllowlistAdded(bytes32,address)"( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter; + FeatureFlagAllowlistAdded( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistAddedEventFilter; + + "FeatureFlagAllowlistRemoved(bytes32,address)"( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter; + FeatureFlagAllowlistRemoved( + feature?: BytesLike | null, + account?: null + ): FeatureFlagAllowlistRemovedEventFilter; + + "FeatureFlagDeniersReset(bytes32,address[])"( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter; + FeatureFlagDeniersReset( + feature?: BytesLike | null, + deniers?: null + ): FeatureFlagDeniersResetEventFilter; + + "FeatureFlagDenyAllSet(bytes32,bool)"( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter; + FeatureFlagDenyAllSet( + feature?: BytesLike | null, + denyAll?: null + ): FeatureFlagDenyAllSetEventFilter; + + "FundingParametersSet(uint128,uint256,uint256)"( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter; + FundingParametersSet( + marketId?: null, + skewScale?: null, + maxFundingVelocity?: null + ): FundingParametersSetEventFilter; + + "LiquidationParametersSet(uint128,uint256,uint256,uint256,uint256,uint256)"( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter; + LiquidationParametersSet( + marketId?: null, + initialMarginFraction?: null, + maintenanceMarginFraction?: null, + liquidationRewardRatioD18?: null, + maxLiquidationLimitAccumulationMultiplier?: null, + maxSecondsInLiquidationWindow?: null + ): LiquidationParametersSetEventFilter; + + "LockedOiPercentSet(uint128,uint256)"( + marketId?: null, + lockedOiPercent?: null + ): LockedOiPercentSetEventFilter; + LockedOiPercentSet( + marketId?: null, + lockedOiPercent?: null + ): LockedOiPercentSetEventFilter; + + "MaxMarketValueSet(uint128,uint256)"( + marketId?: null, + maxMarketValue?: null + ): MaxMarketValueSetEventFilter; + MaxMarketValueSet( + marketId?: null, + maxMarketValue?: null + ): MaxMarketValueSetEventFilter; + + "OrderFeesSet(uint128,uint256,uint256)"( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter; + OrderFeesSet( + marketId?: null, + makerFeeRatio?: null, + takerFeeRatio?: null + ): OrderFeesSetEventFilter; + + "SettlementStrategyAdded(uint128,tuple,uint256)"( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter; + SettlementStrategyAdded( + marketId?: BigNumberish | null, + strategy?: null, + strategyId?: BigNumberish | null + ): SettlementStrategyAddedEventFilter; + + "SettlementStrategyEnabled(uint128,uint256,bool)"( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter; + SettlementStrategyEnabled( + marketId?: null, + strategyId?: null, + enabled?: null + ): SettlementStrategyEnabledEventFilter; + + "LiquidationRewardGuardsSet(uint256,uint256)"( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter; + LiquidationRewardGuardsSet( + minLiquidationRewardUsd?: BigNumberish | null, + maxLiquidationRewardUsd?: BigNumberish | null + ): LiquidationRewardGuardsSetEventFilter; + + "MaxCollateralAmountSet(uint128,uint256)"( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter; + MaxCollateralAmountSet( + synthMarketId?: BigNumberish | null, + collateralAmount?: null + ): MaxCollateralAmountSetEventFilter; + + "SynthDeductionPrioritySet(uint128[])"( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter; + SynthDeductionPrioritySet( + newSynthDeductionPriority?: null + ): SynthDeductionPrioritySetEventFilter; + }; + + estimateGas: { + createAccount( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress(overrides?: CallOverrides): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + skew(marketId: BigNumberish, overrides?: CallOverrides): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards(overrides?: CallOverrides): Promise; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority(overrides?: CallOverrides): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + createAccount( + requestedAccountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountLastInteraction( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountOwner( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountPermissions( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountTokenAddress( + overrides?: CallOverrides + ): Promise; + + grantPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + hasPermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + isAuthorized( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: CallOverrides + ): Promise; + + notifyAccountTransfer( + to: string, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + renouncePermission( + accountId: BigNumberish, + permission: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + revokePermission( + accountId: BigNumberish, + permission: BytesLike, + user: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getAssociatedSystem( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + initOrUpgradeNft( + id: BytesLike, + name: string, + symbol: string, + uri: string, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + initOrUpgradeToken( + id: BytesLike, + name: string, + symbol: string, + decimals: BigNumberish, + impl: string, + overrides?: Overrides & { from?: string } + ): Promise; + + registerUnmanagedSystem( + id: BytesLike, + endpoint: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + acceptMarketOwnership( + perpsMarketId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + createMarket( + marketName: string, + marketSymbol: string, + marketOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getMarketOwner( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + minimumCredit( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nominateMarketOwner( + perpsMarketId: BigNumberish, + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + reportedDebt( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSpotMarket( + spotMarket: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthetix( + synthetix: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol( + perpsMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceData( + perpsMarketId: BigNumberish, + feedId: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getAsyncOrderClaim( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAvailableMargin( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOpenPosition( + accountId: BigNumberish, + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + modifyCollateral( + accountId: BigNumberish, + synthMarketId: BigNumberish, + amountDelta: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + totalAccountOpenInterest( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalCollateralValue( + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingRate( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + currentFundingVelocity( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + fillPrice( + marketId: BigNumberish, + orderSize: BigNumberish, + price: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMarketSummary( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + indexPrice( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + maxOpenInterest( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + size( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + skew( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + PRECISION(overrides?: CallOverrides): Promise; + + cancelOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + commitOrder( + commitment: AsyncOrder.OrderCommitmentRequestStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getOrder( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settle( + marketId: BigNumberish, + accountId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + settlePythOrder( + result: BytesLike, + extraData: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + addToFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + getDeniers( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagAllowlist( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + getFeatureFlagDenyAll( + feature: BytesLike, + overrides?: CallOverrides + ): Promise; + + isFeatureAllowed( + feature: BytesLike, + account: string, + overrides?: CallOverrides + ): Promise; + + removeFromFeatureFlagAllowlist( + feature: BytesLike, + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setDeniers( + feature: BytesLike, + deniers: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagAllowAll( + feature: BytesLike, + allowAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeatureFlagDenyAll( + feature: BytesLike, + denyAll: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidate( + accountId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateFlagged( + overrides?: Overrides & { from?: string } + ): Promise; + + addSettlementStrategy( + marketId: BigNumberish, + strategy: SettlementStrategy.DataStruct, + overrides?: Overrides & { from?: string } + ): Promise; + + getFundingParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLiquidationParameters( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getLockedOiPercent( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getMaxMarketValue( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getOrderFees( + marketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSettlementStrategy( + marketId: BigNumberish, + strategyId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFundingParameters( + marketId: BigNumberish, + skewScale: BigNumberish, + maxFundingVelocity: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationParameters( + marketId: BigNumberish, + initialMarginFraction: BigNumberish, + maintenanceMarginFraction: BigNumberish, + liquidationRewardRatioD18: BigNumberish, + maxLiquidationLimitAccumulationMultiplier: BigNumberish, + maxSecondsInLiquidationWindow: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLockedOiPercent( + marketId: BigNumberish, + lockedOiPercent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxMarketValue( + marketId: BigNumberish, + maxMarketValue: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setOrderFees( + marketId: BigNumberish, + makerFeeRatio: BigNumberish, + takerFeeRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSettlementStrategyEnabled( + marketId: BigNumberish, + strategyId: BigNumberish, + enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + getLiquidationRewardGuards( + overrides?: CallOverrides + ): Promise; + + getMaxCollateralAmount( + synthMarketId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getSynthDeductionPriority( + overrides?: CallOverrides + ): Promise; + + setLiquidationRewardGuards( + minLiquidationRewardUsd: BigNumberish, + maxLiquidationRewardUsd: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMaxCollateralAmount( + synthMarketId: BigNumberish, + collateralAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSynthDeductionPriority( + newSynthDeductionPriority: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Pyth.ts b/packages/sdk/src/contracts/types/Pyth.ts index c6fa6e835f..256953e7f9 100644 --- a/packages/sdk/src/contracts/types/Pyth.ts +++ b/packages/sdk/src/contracts/types/Pyth.ts @@ -2,442 +2,570 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace PythStructs { - export type PriceStruct = { - price: BigNumberish - conf: BigNumberish - expo: BigNumberish - publishTime: BigNumberish - } - - export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { - price: BigNumber - conf: BigNumber - expo: number - publishTime: BigNumber - } - - export type PriceFeedStruct = { - id: BytesLike - price: PythStructs.PriceStruct - emaPrice: PythStructs.PriceStruct - } - - export type PriceFeedStructOutput = [ - string, - PythStructs.PriceStructOutput, - PythStructs.PriceStructOutput - ] & { - id: string - price: PythStructs.PriceStructOutput - emaPrice: PythStructs.PriceStructOutput - } + export type PriceStruct = { + price: BigNumberish; + conf: BigNumberish; + expo: BigNumberish; + publishTime: BigNumberish; + }; + + export type PriceStructOutput = [BigNumber, BigNumber, number, BigNumber] & { + price: BigNumber; + conf: BigNumber; + expo: number; + publishTime: BigNumber; + }; + + export type PriceFeedStruct = { + id: BytesLike; + price: PythStructs.PriceStruct; + emaPrice: PythStructs.PriceStruct; + }; + + export type PriceFeedStructOutput = [ + string, + PythStructs.PriceStructOutput, + PythStructs.PriceStructOutput + ] & { + id: string; + price: PythStructs.PriceStructOutput; + emaPrice: PythStructs.PriceStructOutput; + }; } export interface PythInterface extends utils.Interface { - functions: { - 'getEmaPrice(bytes32)': FunctionFragment - 'getEmaPriceNoOlderThan(bytes32,uint256)': FunctionFragment - 'getEmaPriceUnsafe(bytes32)': FunctionFragment - 'getPrice(bytes32)': FunctionFragment - 'getPriceNoOlderThan(bytes32,uint256)': FunctionFragment - 'getPriceUnsafe(bytes32)': FunctionFragment - 'getUpdateFee(bytes[])': FunctionFragment - 'getValidTimePeriod()': FunctionFragment - 'parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)': FunctionFragment - 'updatePriceFeeds(bytes[])': FunctionFragment - 'updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'getEmaPrice' - | 'getEmaPriceNoOlderThan' - | 'getEmaPriceUnsafe' - | 'getPrice' - | 'getPriceNoOlderThan' - | 'getPriceUnsafe' - | 'getUpdateFee' - | 'getValidTimePeriod' - | 'parsePriceFeedUpdates' - | 'updatePriceFeeds' - | 'updatePriceFeedsIfNecessary' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'getEmaPrice', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'getEmaPriceNoOlderThan', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getEmaPriceUnsafe', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getPrice', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'getPriceNoOlderThan', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getPriceUnsafe', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getUpdateFee', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'getValidTimePeriod', values?: undefined): string - encodeFunctionData( - functionFragment: 'parsePriceFeedUpdates', - values: [BytesLike[], BytesLike[], BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'updatePriceFeeds', values: [BytesLike[]]): string - encodeFunctionData( - functionFragment: 'updatePriceFeedsIfNecessary', - values: [BytesLike[], BytesLike[], BigNumberish[]] - ): string - - decodeFunctionResult(functionFragment: 'getEmaPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getEmaPriceNoOlderThan', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getEmaPriceUnsafe', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPrice', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPriceNoOlderThan', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPriceUnsafe', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getUpdateFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getValidTimePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parsePriceFeedUpdates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updatePriceFeeds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updatePriceFeedsIfNecessary', data: BytesLike): Result - - events: { - 'BatchPriceFeedUpdate(uint16,uint64)': EventFragment - 'PriceFeedUpdate(bytes32,uint64,int64,uint64)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'BatchPriceFeedUpdate'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PriceFeedUpdate'): EventFragment + functions: { + "getEmaPrice(bytes32)": FunctionFragment; + "getEmaPriceNoOlderThan(bytes32,uint256)": FunctionFragment; + "getEmaPriceUnsafe(bytes32)": FunctionFragment; + "getPrice(bytes32)": FunctionFragment; + "getPriceNoOlderThan(bytes32,uint256)": FunctionFragment; + "getPriceUnsafe(bytes32)": FunctionFragment; + "getUpdateFee(bytes[])": FunctionFragment; + "getValidTimePeriod()": FunctionFragment; + "parsePriceFeedUpdates(bytes[],bytes32[],uint64,uint64)": FunctionFragment; + "updatePriceFeeds(bytes[])": FunctionFragment; + "updatePriceFeedsIfNecessary(bytes[],bytes32[],uint64[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "getEmaPrice" + | "getEmaPriceNoOlderThan" + | "getEmaPriceUnsafe" + | "getPrice" + | "getPriceNoOlderThan" + | "getPriceUnsafe" + | "getUpdateFee" + | "getValidTimePeriod" + | "parsePriceFeedUpdates" + | "updatePriceFeeds" + | "updatePriceFeedsIfNecessary" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "getEmaPrice", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getEmaPriceNoOlderThan", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getEmaPriceUnsafe", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "getPrice", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "getPriceNoOlderThan", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getPriceUnsafe", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getUpdateFee", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getValidTimePeriod", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "parsePriceFeedUpdates", + values: [BytesLike[], BytesLike[], BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "updatePriceFeeds", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "updatePriceFeedsIfNecessary", + values: [BytesLike[], BytesLike[], BigNumberish[]] + ): string; + + decodeFunctionResult( + functionFragment: "getEmaPrice", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getEmaPriceNoOlderThan", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getEmaPriceUnsafe", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getPrice", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getPriceNoOlderThan", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getPriceUnsafe", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getUpdateFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getValidTimePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "parsePriceFeedUpdates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updatePriceFeeds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updatePriceFeedsIfNecessary", + data: BytesLike + ): Result; + + events: { + "BatchPriceFeedUpdate(uint16,uint64)": EventFragment; + "PriceFeedUpdate(bytes32,uint64,int64,uint64)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "BatchPriceFeedUpdate"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PriceFeedUpdate"): EventFragment; } export interface BatchPriceFeedUpdateEventObject { - chainId: number - sequenceNumber: BigNumber + chainId: number; + sequenceNumber: BigNumber; } export type BatchPriceFeedUpdateEvent = TypedEvent< - [number, BigNumber], - BatchPriceFeedUpdateEventObject -> + [number, BigNumber], + BatchPriceFeedUpdateEventObject +>; -export type BatchPriceFeedUpdateEventFilter = TypedEventFilter +export type BatchPriceFeedUpdateEventFilter = + TypedEventFilter; export interface PriceFeedUpdateEventObject { - id: string - publishTime: BigNumber - price: BigNumber - conf: BigNumber + id: string; + publishTime: BigNumber; + price: BigNumber; + conf: BigNumber; } export type PriceFeedUpdateEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - PriceFeedUpdateEventObject -> + [string, BigNumber, BigNumber, BigNumber], + PriceFeedUpdateEventObject +>; -export type PriceFeedUpdateEventFilter = TypedEventFilter +export type PriceFeedUpdateEventFilter = TypedEventFilter; export interface Pyth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: PythInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - getEmaPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPrice( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise<[PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput }> - - getUpdateFee( - updateData: BytesLike[], - overrides?: CallOverrides - ): Promise<[BigNumber] & { feeAmount: BigNumber }> - - getValidTimePeriod( - overrides?: CallOverrides - ): Promise<[BigNumber] & { validTimePeriod: BigNumber }> - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise - } - - getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise - - getPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - callStatic: { - getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe( - id: BytesLike, - overrides?: CallOverrides - ): Promise - - getPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: CallOverrides - ): Promise - - updatePriceFeeds(updateData: BytesLike[], overrides?: CallOverrides): Promise - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: CallOverrides - ): Promise - } - - filters: { - 'BatchPriceFeedUpdate(uint16,uint64)'( - chainId?: null, - sequenceNumber?: null - ): BatchPriceFeedUpdateEventFilter - BatchPriceFeedUpdate(chainId?: null, sequenceNumber?: null): BatchPriceFeedUpdateEventFilter - - 'PriceFeedUpdate(bytes32,uint64,int64,uint64)'( - id?: BytesLike | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter - PriceFeedUpdate( - id?: BytesLike | null, - publishTime?: null, - price?: null, - conf?: null - ): PriceFeedUpdateEventFilter - } - - estimateGas: { - getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise - } - - populateTransaction: { - getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getEmaPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getEmaPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getPrice(id: BytesLike, overrides?: CallOverrides): Promise - - getPriceNoOlderThan( - id: BytesLike, - age: BigNumberish, - overrides?: CallOverrides - ): Promise - - getPriceUnsafe(id: BytesLike, overrides?: CallOverrides): Promise - - getUpdateFee(updateData: BytesLike[], overrides?: CallOverrides): Promise - - getValidTimePeriod(overrides?: CallOverrides): Promise - - parsePriceFeedUpdates( - updateData: BytesLike[], - priceIds: BytesLike[], - minPublishTime: BigNumberish, - maxPublishTime: BigNumberish, - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeeds( - updateData: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise - - updatePriceFeedsIfNecessary( - updateData: BytesLike[], - priceIds: BytesLike[], - publishTimes: BigNumberish[], - overrides?: PayableOverrides & { from?: string } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PythInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise< + [PythStructs.PriceStructOutput] & { price: PythStructs.PriceStructOutput } + >; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise<[BigNumber] & { feeAmount: BigNumber }>; + + getValidTimePeriod( + overrides?: CallOverrides + ): Promise<[BigNumber] & { validTimePeriod: BigNumber }>; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + callStatic: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: CallOverrides + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "BatchPriceFeedUpdate(uint16,uint64)"( + chainId?: null, + sequenceNumber?: null + ): BatchPriceFeedUpdateEventFilter; + BatchPriceFeedUpdate( + chainId?: null, + sequenceNumber?: null + ): BatchPriceFeedUpdateEventFilter; + + "PriceFeedUpdate(bytes32,uint64,int64,uint64)"( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter; + PriceFeedUpdate( + id?: BytesLike | null, + publishTime?: null, + price?: null, + conf?: null + ): PriceFeedUpdateEventFilter; + }; + + estimateGas: { + getEmaPrice(id: BytesLike, overrides?: CallOverrides): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice(id: BytesLike, overrides?: CallOverrides): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod(overrides?: CallOverrides): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + getEmaPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getEmaPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getEmaPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPrice( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getPriceNoOlderThan( + id: BytesLike, + age: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getPriceUnsafe( + id: BytesLike, + overrides?: CallOverrides + ): Promise; + + getUpdateFee( + updateData: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getValidTimePeriod( + overrides?: CallOverrides + ): Promise; + + parsePriceFeedUpdates( + updateData: BytesLike[], + priceIds: BytesLike[], + minPublishTime: BigNumberish, + maxPublishTime: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeeds( + updateData: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + updatePriceFeedsIfNecessary( + updateData: BytesLike[], + priceIds: BytesLike[], + publishTimes: BigNumberish[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/ReverseRecords.ts b/packages/sdk/src/contracts/types/ReverseRecords.ts index c85f6d3143..6706068a9a 100644 --- a/packages/sdk/src/contracts/types/ReverseRecords.ts +++ b/packages/sdk/src/contracts/types/ReverseRecords.ts @@ -2,73 +2,89 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface ReverseRecordsInterface extends utils.Interface { - functions: { - 'getNames(address[])': FunctionFragment - } + functions: { + "getNames(address[])": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'getNames'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "getNames"): FunctionFragment; - encodeFunctionData(functionFragment: 'getNames', values: [string[]]): string + encodeFunctionData(functionFragment: "getNames", values: [string[]]): string; - decodeFunctionResult(functionFragment: 'getNames', data: BytesLike): Result + decodeFunctionResult(functionFragment: "getNames", data: BytesLike): Result; - events: {} + events: {}; } export interface ReverseRecords extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ReverseRecordsInterface + interface: ReverseRecordsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - getNames(addresses: string[], overrides?: CallOverrides): Promise<[string[]] & { r: string[] }> - } + functions: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise<[string[]] & { r: string[] }>; + }; - getNames(addresses: string[], overrides?: CallOverrides): Promise + getNames(addresses: string[], overrides?: CallOverrides): Promise; - callStatic: { - getNames(addresses: string[], overrides?: CallOverrides): Promise - } + callStatic: { + getNames(addresses: string[], overrides?: CallOverrides): Promise; + }; - filters: {} + filters: {}; - estimateGas: { - getNames(addresses: string[], overrides?: CallOverrides): Promise - } + estimateGas: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise; + }; - populateTransaction: { - getNames(addresses: string[], overrides?: CallOverrides): Promise - } + populateTransaction: { + getNames( + addresses: string[], + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/RewardEscrow.ts b/packages/sdk/src/contracts/types/RewardEscrow.ts index 0a94cc27ca..c82c6c2944 100644 --- a/packages/sdk/src/contracts/types/RewardEscrow.ts +++ b/packages/sdk/src/contracts/types/RewardEscrow.ts @@ -2,892 +2,1137 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace VestingEntries { - export type VestingEntryWithIDStruct = { - endTime: BigNumberish - escrowAmount: BigNumberish - entryID: BigNumberish - } - - export type VestingEntryWithIDStructOutput = [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - entryID: BigNumber - } + export type VestingEntryWithIDStruct = { + endTime: BigNumberish; + escrowAmount: BigNumberish; + entryID: BigNumberish; + }; + + export type VestingEntryWithIDStructOutput = [ + BigNumber, + BigNumber, + BigNumber + ] & { endTime: BigNumber; escrowAmount: BigNumber; entryID: BigNumber }; } export interface RewardEscrowInterface extends utils.Interface { - functions: { - 'MAX_DURATION()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'accountVestingEntryIDs(address,uint256)': FunctionFragment - 'appendVestingEntry(address,uint256,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'createEscrowEntry(address,uint256,uint256)': FunctionFragment - 'getAccountVestingEntryIDs(address,uint256,uint256)': FunctionFragment - 'getKwentaAddress()': FunctionFragment - 'getVestingEntry(address,uint256)': FunctionFragment - 'getVestingEntryClaimable(address,uint256)': FunctionFragment - 'getVestingQuantity(address,uint256[])': FunctionFragment - 'getVestingSchedules(address,uint256,uint256)': FunctionFragment - 'nextEntryId()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'numVestingEntries(address)': FunctionFragment - 'owner()': FunctionFragment - 'setStakingRewards(address)': FunctionFragment - 'setTreasuryDAO(address)': FunctionFragment - 'stakeEscrow(uint256)': FunctionFragment - 'stakingRewards()': FunctionFragment - 'totalEscrowedAccountBalance(address)': FunctionFragment - 'totalEscrowedBalance()': FunctionFragment - 'totalVestedAccountBalance(address)': FunctionFragment - 'treasuryDAO()': FunctionFragment - 'unstakeEscrow(uint256)': FunctionFragment - 'vest(uint256[])': FunctionFragment - 'vestingSchedules(address,uint256)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'MAX_DURATION' - | 'acceptOwnership' - | 'accountVestingEntryIDs' - | 'appendVestingEntry' - | 'balanceOf' - | 'createEscrowEntry' - | 'getAccountVestingEntryIDs' - | 'getKwentaAddress' - | 'getVestingEntry' - | 'getVestingEntryClaimable' - | 'getVestingQuantity' - | 'getVestingSchedules' - | 'nextEntryId' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'numVestingEntries' - | 'owner' - | 'setStakingRewards' - | 'setTreasuryDAO' - | 'stakeEscrow' - | 'stakingRewards' - | 'totalEscrowedAccountBalance' - | 'totalEscrowedBalance' - | 'totalVestedAccountBalance' - | 'treasuryDAO' - | 'unstakeEscrow' - | 'vest' - | 'vestingSchedules' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'MAX_DURATION', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData( - functionFragment: 'accountVestingEntryIDs', - values: [string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'appendVestingEntry', - values: [string, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData( - functionFragment: 'createEscrowEntry', - values: [string, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'getAccountVestingEntryIDs', - values: [string, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'getKwentaAddress', values?: undefined): string - encodeFunctionData(functionFragment: 'getVestingEntry', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'getVestingEntryClaimable', - values: [string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'getVestingQuantity', - values: [string, BigNumberish[]] - ): string - encodeFunctionData( - functionFragment: 'getVestingSchedules', - values: [string, BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'nextEntryId', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'numVestingEntries', values: [string]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'setStakingRewards', values: [string]): string - encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [string]): string - encodeFunctionData(functionFragment: 'stakeEscrow', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stakingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'totalEscrowedAccountBalance', values: [string]): string - encodeFunctionData(functionFragment: 'totalEscrowedBalance', values?: undefined): string - encodeFunctionData(functionFragment: 'totalVestedAccountBalance', values: [string]): string - encodeFunctionData(functionFragment: 'treasuryDAO', values?: undefined): string - encodeFunctionData(functionFragment: 'unstakeEscrow', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'vest', values: [BigNumberish[]]): string - encodeFunctionData(functionFragment: 'vestingSchedules', values: [string, BigNumberish]): string - - decodeFunctionResult(functionFragment: 'MAX_DURATION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accountVestingEntryIDs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'appendVestingEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'createEscrowEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountVestingEntryIDs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getKwentaAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingEntry', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingEntryClaimable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingQuantity', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getVestingSchedules', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nextEntryId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'numVestingEntries', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTreasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalEscrowedAccountBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalEscrowedBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalVestedAccountBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'treasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unstakeEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vest', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vestingSchedules', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'StakingRewardsSet(address)': EventFragment - 'TreasuryDAOSet(address)': EventFragment - 'Vested(address,uint256)': EventFragment - 'VestingEntryCreated(address,uint256,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'StakingRewardsSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TreasuryDAOSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Vested'): EventFragment - getEvent(nameOrSignatureOrTopic: 'VestingEntryCreated'): EventFragment + functions: { + "MAX_DURATION()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "accountVestingEntryIDs(address,uint256)": FunctionFragment; + "appendVestingEntry(address,uint256,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "createEscrowEntry(address,uint256,uint256)": FunctionFragment; + "getAccountVestingEntryIDs(address,uint256,uint256)": FunctionFragment; + "getKwentaAddress()": FunctionFragment; + "getVestingEntry(address,uint256)": FunctionFragment; + "getVestingEntryClaimable(address,uint256)": FunctionFragment; + "getVestingQuantity(address,uint256[])": FunctionFragment; + "getVestingSchedules(address,uint256,uint256)": FunctionFragment; + "nextEntryId()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "numVestingEntries(address)": FunctionFragment; + "owner()": FunctionFragment; + "setStakingRewards(address)": FunctionFragment; + "setTreasuryDAO(address)": FunctionFragment; + "stakeEscrow(uint256)": FunctionFragment; + "stakingRewards()": FunctionFragment; + "totalEscrowedAccountBalance(address)": FunctionFragment; + "totalEscrowedBalance()": FunctionFragment; + "totalVestedAccountBalance(address)": FunctionFragment; + "treasuryDAO()": FunctionFragment; + "unstakeEscrow(uint256)": FunctionFragment; + "vest(uint256[])": FunctionFragment; + "vestingSchedules(address,uint256)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "MAX_DURATION" + | "acceptOwnership" + | "accountVestingEntryIDs" + | "appendVestingEntry" + | "balanceOf" + | "createEscrowEntry" + | "getAccountVestingEntryIDs" + | "getKwentaAddress" + | "getVestingEntry" + | "getVestingEntryClaimable" + | "getVestingQuantity" + | "getVestingSchedules" + | "nextEntryId" + | "nominateNewOwner" + | "nominatedOwner" + | "numVestingEntries" + | "owner" + | "setStakingRewards" + | "setTreasuryDAO" + | "stakeEscrow" + | "stakingRewards" + | "totalEscrowedAccountBalance" + | "totalEscrowedBalance" + | "totalVestedAccountBalance" + | "treasuryDAO" + | "unstakeEscrow" + | "vest" + | "vestingSchedules" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "MAX_DURATION", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accountVestingEntryIDs", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "appendVestingEntry", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "createEscrowEntry", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAccountVestingEntryIDs", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getKwentaAddress", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getVestingEntry", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getVestingEntryClaimable", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getVestingQuantity", + values: [string, BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "getVestingSchedules", + values: [string, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "nextEntryId", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "numVestingEntries", + values: [string] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "setStakingRewards", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTreasuryDAO", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "stakeEscrow", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "stakingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalEscrowedAccountBalance", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "totalEscrowedBalance", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalVestedAccountBalance", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "treasuryDAO", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "unstakeEscrow", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "vest", + values: [BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "vestingSchedules", + values: [string, BigNumberish] + ): string; + + decodeFunctionResult( + functionFragment: "MAX_DURATION", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accountVestingEntryIDs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "appendVestingEntry", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "createEscrowEntry", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountVestingEntryIDs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getKwentaAddress", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingEntry", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingEntryClaimable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingQuantity", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getVestingSchedules", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nextEntryId", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "numVestingEntries", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTreasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "stakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "stakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalEscrowedAccountBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalEscrowedBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalVestedAccountBalance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "treasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unstakeEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "vest", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "vestingSchedules", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "StakingRewardsSet(address)": EventFragment; + "TreasuryDAOSet(address)": EventFragment; + "Vested(address,uint256)": EventFragment; + "VestingEntryCreated(address,uint256,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "StakingRewardsSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TreasuryDAOSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Vested"): EventFragment; + getEvent(nameOrSignatureOrTopic: "VestingEntryCreated"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface StakingRewardsSetEventObject { - rewardEscrow: string + rewardEscrow: string; } -export type StakingRewardsSetEvent = TypedEvent<[string], StakingRewardsSetEventObject> +export type StakingRewardsSetEvent = TypedEvent< + [string], + StakingRewardsSetEventObject +>; -export type StakingRewardsSetEventFilter = TypedEventFilter +export type StakingRewardsSetEventFilter = + TypedEventFilter; export interface TreasuryDAOSetEventObject { - treasuryDAO: string + treasuryDAO: string; } -export type TreasuryDAOSetEvent = TypedEvent<[string], TreasuryDAOSetEventObject> +export type TreasuryDAOSetEvent = TypedEvent< + [string], + TreasuryDAOSetEventObject +>; -export type TreasuryDAOSetEventFilter = TypedEventFilter +export type TreasuryDAOSetEventFilter = TypedEventFilter; export interface VestedEventObject { - beneficiary: string - value: BigNumber + beneficiary: string; + value: BigNumber; } -export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject> +export type VestedEvent = TypedEvent<[string, BigNumber], VestedEventObject>; -export type VestedEventFilter = TypedEventFilter +export type VestedEventFilter = TypedEventFilter; export interface VestingEntryCreatedEventObject { - beneficiary: string - value: BigNumber - duration: BigNumber - entryID: BigNumber + beneficiary: string; + value: BigNumber; + duration: BigNumber; + entryID: BigNumber; } export type VestingEntryCreatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - VestingEntryCreatedEventObject -> + [string, BigNumber, BigNumber, BigNumber], + VestingEntryCreatedEventObject +>; -export type VestingEntryCreatedEventFilter = TypedEventFilter +export type VestingEntryCreatedEventFilter = + TypedEventFilter; export interface RewardEscrow extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: RewardEscrowInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber[]]> - - getKwentaAddress(overrides?: CallOverrides): Promise<[string]> - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]> - - nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - numVestingEntries(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - owner(overrides?: CallOverrides): Promise<[string]> - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise<[string]> - - totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - - totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]> - - totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - - treasuryDAO(overrides?: CallOverrides): Promise<[string]> - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - } - - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries(account: string, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - callStatic: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: CallOverrides - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: CallOverrides - ): Promise - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }> - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise<[BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber }> - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries(account: string, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards(_stakingRewards: string, overrides?: CallOverrides): Promise - - setTreasuryDAO(_treasuryDAO: string, overrides?: CallOverrides): Promise - - stakeEscrow(_amount: BigNumberish, overrides?: CallOverrides): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow(_amount: BigNumberish, overrides?: CallOverrides): Promise - - vest(entryIDs: BigNumberish[], overrides?: CallOverrides): Promise - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - endTime: BigNumber - escrowAmount: BigNumber - duration: BigNumber - } - > - } - - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'StakingRewardsSet(address)'(rewardEscrow?: null): StakingRewardsSetEventFilter - StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter - - 'TreasuryDAOSet(address)'(treasuryDAO?: null): TreasuryDAOSetEventFilter - TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter - - 'Vested(address,uint256)'(beneficiary?: string | null, value?: null): VestedEventFilter - Vested(beneficiary?: string | null, value?: null): VestedEventFilter - - 'VestingEntryCreated(address,uint256,uint256,uint256)'( - beneficiary?: string | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter - VestingEntryCreated( - beneficiary?: string | null, - value?: null, - duration?: null, - entryID?: null - ): VestingEntryCreatedEventFilter - } - - estimateGas: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries(account: string, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance(arg0: string, overrides?: CallOverrides): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - vest(entryIDs: BigNumberish[], overrides?: Overrides & { from?: string }): Promise - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - MAX_DURATION(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accountVestingEntryIDs( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - - appendVestingEntry( - account: string, - quantity: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - createEscrowEntry( - beneficiary: string, - deposit: BigNumberish, - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - getAccountVestingEntryIDs( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - getKwentaAddress(overrides?: CallOverrides): Promise - - getVestingEntry( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise - - getVestingEntryClaimable( - account: string, - entryID: BigNumberish, - overrides?: CallOverrides - ): Promise - - getVestingQuantity( - account: string, - entryIDs: BigNumberish[], - overrides?: CallOverrides - ): Promise - - getVestingSchedules( - account: string, - index: BigNumberish, - pageSize: BigNumberish, - overrides?: CallOverrides - ): Promise - - nextEntryId(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - numVestingEntries(account: string, overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise - - stakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - stakingRewards(overrides?: CallOverrides): Promise - - totalEscrowedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise - - totalEscrowedBalance(overrides?: CallOverrides): Promise - - totalVestedAccountBalance( - arg0: string, - overrides?: CallOverrides - ): Promise - - treasuryDAO(overrides?: CallOverrides): Promise - - unstakeEscrow( - _amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - vest( - entryIDs: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - vestingSchedules( - arg0: string, - arg1: BigNumberish, - overrides?: CallOverrides - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: RewardEscrowInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + MAX_DURATION(overrides?: CallOverrides): Promise<[BigNumber]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber[]]>; + + getKwentaAddress(overrides?: CallOverrides): Promise<[string]>; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } + >; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise<[VestingEntries.VestingEntryWithIDStructOutput[]]>; + + nextEntryId(overrides?: CallOverrides): Promise<[BigNumber]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise<[string]>; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + totalEscrowedBalance(overrides?: CallOverrides): Promise<[BigNumber]>; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + treasuryDAO(overrides?: CallOverrides): Promise<[string]>; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + }; + + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber }>; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + callStatic: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { quantity: BigNumber; fee: BigNumber } + >; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber] & { total: BigNumber; totalFee: BigNumber } + >; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: CallOverrides + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: CallOverrides + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + vest(entryIDs: BigNumberish[], overrides?: CallOverrides): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + endTime: BigNumber; + escrowAmount: BigNumber; + duration: BigNumber; + } + >; + }; + + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "StakingRewardsSet(address)"( + rewardEscrow?: null + ): StakingRewardsSetEventFilter; + StakingRewardsSet(rewardEscrow?: null): StakingRewardsSetEventFilter; + + "TreasuryDAOSet(address)"(treasuryDAO?: null): TreasuryDAOSetEventFilter; + TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter; + + "Vested(address,uint256)"( + beneficiary?: string | null, + value?: null + ): VestedEventFilter; + Vested(beneficiary?: string | null, value?: null): VestedEventFilter; + + "VestingEntryCreated(address,uint256,uint256,uint256)"( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter; + VestingEntryCreated( + beneficiary?: string | null, + value?: null, + duration?: null, + entryID?: null + ): VestingEntryCreatedEventFilter; + }; + + estimateGas: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance(overrides?: CallOverrides): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + MAX_DURATION(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accountVestingEntryIDs( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + appendVestingEntry( + account: string, + quantity: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + createEscrowEntry( + beneficiary: string, + deposit: BigNumberish, + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getAccountVestingEntryIDs( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getKwentaAddress(overrides?: CallOverrides): Promise; + + getVestingEntry( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingEntryClaimable( + account: string, + entryID: BigNumberish, + overrides?: CallOverrides + ): Promise; + + getVestingQuantity( + account: string, + entryIDs: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + getVestingSchedules( + account: string, + index: BigNumberish, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; + + nextEntryId(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + numVestingEntries( + account: string, + overrides?: CallOverrides + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; + + stakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + stakingRewards(overrides?: CallOverrides): Promise; + + totalEscrowedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + totalEscrowedBalance( + overrides?: CallOverrides + ): Promise; + + totalVestedAccountBalance( + arg0: string, + overrides?: CallOverrides + ): Promise; + + treasuryDAO(overrides?: CallOverrides): Promise; + + unstakeEscrow( + _amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + vest( + entryIDs: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + vestingSchedules( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccount.ts b/packages/sdk/src/contracts/types/SmartMarginAccount.ts index d4fa3ae1fc..75f741ce5f 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccount.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccount.ts @@ -2,643 +2,761 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export declare namespace IAccount { - export type ConditionalOrderStruct = { - marketKey: BytesLike - marginDelta: BigNumberish - sizeDelta: BigNumberish - targetPrice: BigNumberish - gelatoTaskId: BytesLike - conditionalOrderType: BigNumberish - desiredFillPrice: BigNumberish - reduceOnly: boolean - } - - export type ConditionalOrderStructOutput = [ - string, - BigNumber, - BigNumber, - BigNumber, - string, - number, - BigNumber, - boolean - ] & { - marketKey: string - marginDelta: BigNumber - sizeDelta: BigNumber - targetPrice: BigNumber - gelatoTaskId: string - conditionalOrderType: number - desiredFillPrice: BigNumber - reduceOnly: boolean - } + export type ConditionalOrderStruct = { + marketKey: BytesLike; + marginDelta: BigNumberish; + sizeDelta: BigNumberish; + targetPrice: BigNumberish; + gelatoTaskId: BytesLike; + conditionalOrderType: BigNumberish; + desiredFillPrice: BigNumberish; + reduceOnly: boolean; + }; + + export type ConditionalOrderStructOutput = [ + string, + BigNumber, + BigNumber, + BigNumber, + string, + number, + BigNumber, + boolean + ] & { + marketKey: string; + marginDelta: BigNumber; + sizeDelta: BigNumber; + targetPrice: BigNumber; + gelatoTaskId: string; + conditionalOrderType: number; + desiredFillPrice: BigNumber; + reduceOnly: boolean; + }; } export declare namespace IPerpsV2MarketConsolidated { - export type DelayedOrderStruct = { - isOffchain: boolean - sizeDelta: BigNumberish - desiredFillPrice: BigNumberish - targetRoundId: BigNumberish - commitDeposit: BigNumberish - keeperDeposit: BigNumberish - executableAtTime: BigNumberish - intentionTime: BigNumberish - trackingCode: BytesLike - } - - export type DelayedOrderStructOutput = [ - boolean, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - BigNumber, - string - ] & { - isOffchain: boolean - sizeDelta: BigNumber - desiredFillPrice: BigNumber - targetRoundId: BigNumber - commitDeposit: BigNumber - keeperDeposit: BigNumber - executableAtTime: BigNumber - intentionTime: BigNumber - trackingCode: string - } - - export type PositionStruct = { - id: BigNumberish - lastFundingIndex: BigNumberish - margin: BigNumberish - lastPrice: BigNumberish - size: BigNumberish - } - - export type PositionStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber] & { - id: BigNumber - lastFundingIndex: BigNumber - margin: BigNumber - lastPrice: BigNumber - size: BigNumber - } + export type DelayedOrderStruct = { + isOffchain: boolean; + sizeDelta: BigNumberish; + desiredFillPrice: BigNumberish; + targetRoundId: BigNumberish; + commitDeposit: BigNumberish; + keeperDeposit: BigNumberish; + executableAtTime: BigNumberish; + intentionTime: BigNumberish; + trackingCode: BytesLike; + }; + + export type DelayedOrderStructOutput = [ + boolean, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string + ] & { + isOffchain: boolean; + sizeDelta: BigNumber; + desiredFillPrice: BigNumber; + targetRoundId: BigNumber; + commitDeposit: BigNumber; + keeperDeposit: BigNumber; + executableAtTime: BigNumber; + intentionTime: BigNumber; + trackingCode: string; + }; + + export type PositionStruct = { + id: BigNumberish; + lastFundingIndex: BigNumberish; + margin: BigNumberish; + lastPrice: BigNumberish; + size: BigNumberish; + }; + + export type PositionStructOutput = [ + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber + ] & { + id: BigNumber; + lastFundingIndex: BigNumber; + margin: BigNumber; + lastPrice: BigNumber; + size: BigNumber; + }; } export interface SmartMarginAccountInterface extends utils.Interface { - functions: { - 'ETH()': FunctionFragment - 'GELATO()': FunctionFragment - 'OPS()': FunctionFragment - 'VERSION()': FunctionFragment - 'addDelegate(address)': FunctionFragment - 'checker(uint256)': FunctionFragment - 'committedMargin()': FunctionFragment - 'conditionalOrderId()': FunctionFragment - 'delegates(address)': FunctionFragment - 'execute(uint8[],bytes[])': FunctionFragment - 'executeConditionalOrder(uint256)': FunctionFragment - 'freeMargin()': FunctionFragment - 'getConditionalOrder(uint256)': FunctionFragment - 'getDelayedOrder(bytes32)': FunctionFragment - 'getPosition(bytes32)': FunctionFragment - 'isAuth()': FunctionFragment - 'isOwner()': FunctionFragment - 'owner()': FunctionFragment - 'removeDelegate(address)': FunctionFragment - 'setInitialOwnership(address)': FunctionFragment - 'transferOwnership(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'ETH' - | 'GELATO' - | 'OPS' - | 'VERSION' - | 'addDelegate' - | 'checker' - | 'committedMargin' - | 'conditionalOrderId' - | 'delegates' - | 'execute' - | 'executeConditionalOrder' - | 'freeMargin' - | 'getConditionalOrder' - | 'getDelayedOrder' - | 'getPosition' - | 'isAuth' - | 'isOwner' - | 'owner' - | 'removeDelegate' - | 'setInitialOwnership' - | 'transferOwnership' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'ETH', values?: undefined): string - encodeFunctionData(functionFragment: 'GELATO', values?: undefined): string - encodeFunctionData(functionFragment: 'OPS', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'addDelegate', values: [string]): string - encodeFunctionData(functionFragment: 'checker', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'committedMargin', values?: undefined): string - encodeFunctionData(functionFragment: 'conditionalOrderId', values?: undefined): string - encodeFunctionData(functionFragment: 'delegates', values: [string]): string - encodeFunctionData(functionFragment: 'execute', values: [BigNumberish[], BytesLike[]]): string - encodeFunctionData(functionFragment: 'executeConditionalOrder', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'freeMargin', values?: undefined): string - encodeFunctionData(functionFragment: 'getConditionalOrder', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'getDelayedOrder', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'getPosition', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'isAuth', values?: undefined): string - encodeFunctionData(functionFragment: 'isOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'removeDelegate', values: [string]): string - encodeFunctionData(functionFragment: 'setInitialOwnership', values: [string]): string - encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string - - decodeFunctionResult(functionFragment: 'ETH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'GELATO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'OPS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addDelegate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'checker', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'committedMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'conditionalOrderId', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'delegates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'execute', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeConditionalOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'freeMargin', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getConditionalOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getDelayedOrder', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getPosition', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isAuth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeDelegate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setInitialOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result - - events: { - 'DelegatedAccountAdded(address,address)': EventFragment - 'DelegatedAccountRemoved(address,address)': EventFragment - 'OwnershipTransferred(address,address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'DelegatedAccountAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DelegatedAccountRemoved'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment + functions: { + "ETH()": FunctionFragment; + "GELATO()": FunctionFragment; + "OPS()": FunctionFragment; + "VERSION()": FunctionFragment; + "addDelegate(address)": FunctionFragment; + "checker(uint256)": FunctionFragment; + "committedMargin()": FunctionFragment; + "conditionalOrderId()": FunctionFragment; + "delegates(address)": FunctionFragment; + "execute(uint8[],bytes[])": FunctionFragment; + "executeConditionalOrder(uint256)": FunctionFragment; + "freeMargin()": FunctionFragment; + "getConditionalOrder(uint256)": FunctionFragment; + "getDelayedOrder(bytes32)": FunctionFragment; + "getPosition(bytes32)": FunctionFragment; + "isAuth()": FunctionFragment; + "isOwner()": FunctionFragment; + "owner()": FunctionFragment; + "removeDelegate(address)": FunctionFragment; + "setInitialOwnership(address)": FunctionFragment; + "transferOwnership(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "ETH" + | "GELATO" + | "OPS" + | "VERSION" + | "addDelegate" + | "checker" + | "committedMargin" + | "conditionalOrderId" + | "delegates" + | "execute" + | "executeConditionalOrder" + | "freeMargin" + | "getConditionalOrder" + | "getDelayedOrder" + | "getPosition" + | "isAuth" + | "isOwner" + | "owner" + | "removeDelegate" + | "setInitialOwnership" + | "transferOwnership" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "ETH", values?: undefined): string; + encodeFunctionData(functionFragment: "GELATO", values?: undefined): string; + encodeFunctionData(functionFragment: "OPS", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "addDelegate", values: [string]): string; + encodeFunctionData( + functionFragment: "checker", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "committedMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "conditionalOrderId", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "delegates", values: [string]): string; + encodeFunctionData( + functionFragment: "execute", + values: [BigNumberish[], BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "executeConditionalOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "freeMargin", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getConditionalOrder", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getDelayedOrder", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getPosition", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "isAuth", values?: undefined): string; + encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "removeDelegate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setInitialOwnership", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "transferOwnership", + values: [string] + ): string; + + decodeFunctionResult(functionFragment: "ETH", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "GELATO", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "OPS", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "addDelegate", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "checker", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "committedMargin", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "conditionalOrderId", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "delegates", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "executeConditionalOrder", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "freeMargin", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getConditionalOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getDelayedOrder", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getPosition", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isAuth", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "removeDelegate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setInitialOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferOwnership", + data: BytesLike + ): Result; + + events: { + "DelegatedAccountAdded(address,address)": EventFragment; + "DelegatedAccountRemoved(address,address)": EventFragment; + "OwnershipTransferred(address,address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "DelegatedAccountAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "DelegatedAccountRemoved"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export interface DelegatedAccountAddedEventObject { - caller: string - delegate: string + caller: string; + delegate: string; } export type DelegatedAccountAddedEvent = TypedEvent< - [string, string], - DelegatedAccountAddedEventObject -> + [string, string], + DelegatedAccountAddedEventObject +>; -export type DelegatedAccountAddedEventFilter = TypedEventFilter +export type DelegatedAccountAddedEventFilter = + TypedEventFilter; export interface DelegatedAccountRemovedEventObject { - caller: string - delegate: string + caller: string; + delegate: string; } export type DelegatedAccountRemovedEvent = TypedEvent< - [string, string], - DelegatedAccountRemovedEventObject -> + [string, string], + DelegatedAccountRemovedEventObject +>; -export type DelegatedAccountRemovedEventFilter = TypedEventFilter +export type DelegatedAccountRemovedEventFilter = + TypedEventFilter; export interface OwnershipTransferredEventObject { - caller: string - newOwner: string + caller: string; + newOwner: string; } export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject -> + [string, string], + OwnershipTransferredEventObject +>; -export type OwnershipTransferredEventFilter = TypedEventFilter +export type OwnershipTransferredEventFilter = + TypedEventFilter; export interface SmartMarginAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SmartMarginAccountInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - ETH(overrides?: CallOverrides): Promise<[string]> - - GELATO(overrides?: CallOverrides): Promise<[string]> - - OPS(overrides?: CallOverrides): Promise<[string]> - - VERSION(overrides?: CallOverrides): Promise<[string]> - - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise - - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> - - committedMargin(overrides?: CallOverrides): Promise<[BigNumber]> - - conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]> - - delegates(delegate: string, overrides?: CallOverrides): Promise<[boolean]> + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SmartMarginAccountInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + ETH(overrides?: CallOverrides): Promise<[string]>; - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise + GELATO(overrides?: CallOverrides): Promise<[string]>; - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + OPS(overrides?: CallOverrides): Promise<[string]>; - freeMargin(overrides?: CallOverrides): Promise<[BigNumber]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[IAccount.ConditionalOrderStructOutput]> + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { - order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput - } - > + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [IPerpsV2MarketConsolidated.PositionStructOutput] & { - position: IPerpsV2MarketConsolidated.PositionStructOutput - } - > + committedMargin(overrides?: CallOverrides): Promise<[BigNumber]>; - isAuth(overrides?: CallOverrides): Promise<[boolean]> + conditionalOrderId(overrides?: CallOverrides): Promise<[BigNumber]>; - isOwner(overrides?: CallOverrides): Promise<[boolean]> + delegates(delegate: string, overrides?: CallOverrides): Promise<[boolean]>; - owner(overrides?: CallOverrides): Promise<[string]> + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + freeMargin(overrides?: CallOverrides): Promise<[BigNumber]>; - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - } + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[IAccount.ConditionalOrderStructOutput]>; - ETH(overrides?: CallOverrides): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.DelayedOrderStructOutput] & { + order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput; + } + >; - GELATO(overrides?: CallOverrides): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [IPerpsV2MarketConsolidated.PositionStructOutput] & { + position: IPerpsV2MarketConsolidated.PositionStructOutput; + } + >; - OPS(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise<[boolean]>; - VERSION(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise<[boolean]>; - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise + owner(overrides?: CallOverrides): Promise<[string]>; - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - conditionalOrderId(overrides?: CallOverrides): Promise + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; - delegates(delegate: string, overrides?: CallOverrides): Promise + ETH(overrides?: CallOverrides): Promise; - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise + GELATO(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + OPS(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise + committedMargin(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + freeMargin(overrides?: CallOverrides): Promise; - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - callStatic: { - ETH(overrides?: CallOverrides): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - GELATO(overrides?: CallOverrides): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - OPS(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise; - addDelegate(_delegate: string, overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }> + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - conditionalOrderId(overrides?: CallOverrides): Promise + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - delegates(delegate: string, overrides?: CallOverrides): Promise + callStatic: { + ETH(overrides?: CallOverrides): Promise; - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: CallOverrides - ): Promise + GELATO(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + OPS(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + addDelegate(_delegate: string, overrides?: CallOverrides): Promise; - getDelayedOrder( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise<[boolean, string] & { canExec: boolean; execPayload: string }>; - getPosition( - _marketKey: BytesLike, - overrides?: CallOverrides - ): Promise + committedMargin(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: CallOverrides + ): Promise; - removeDelegate(_delegate: string, overrides?: CallOverrides): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - setInitialOwnership(_owner: string, overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - transferOwnership(_newOwner: string, overrides?: CallOverrides): Promise - } + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - filters: { - 'DelegatedAccountAdded(address,address)'( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountAddedEventFilter - DelegatedAccountAdded( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountAddedEventFilter + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'DelegatedAccountRemoved(address,address)'( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountRemovedEventFilter - DelegatedAccountRemoved( - caller?: string | null, - delegate?: string | null - ): DelegatedAccountRemovedEventFilter + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'OwnershipTransferred(address,address)'( - caller?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter - OwnershipTransferred( - caller?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter - } + isAuth(overrides?: CallOverrides): Promise; - estimateGas: { - ETH(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise; - GELATO(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - OPS(overrides?: CallOverrides): Promise + removeDelegate(_delegate: string, overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + setInitialOwnership( + _owner: string, + overrides?: CallOverrides + ): Promise; - addDelegate(_delegate: string, overrides?: Overrides & { from?: string }): Promise + transferOwnership( + _newOwner: string, + overrides?: CallOverrides + ): Promise; + }; - checker(_conditionalOrderId: BigNumberish, overrides?: CallOverrides): Promise + filters: { + "DelegatedAccountAdded(address,address)"( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter; + DelegatedAccountAdded( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountAddedEventFilter; - committedMargin(overrides?: CallOverrides): Promise + "DelegatedAccountRemoved(address,address)"( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter; + DelegatedAccountRemoved( + caller?: string | null, + delegate?: string | null + ): DelegatedAccountRemovedEventFilter; - conditionalOrderId(overrides?: CallOverrides): Promise + "OwnershipTransferred(address,address)"( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + OwnershipTransferred( + caller?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + }; - delegates(delegate: string, overrides?: CallOverrides): Promise + estimateGas: { + ETH(overrides?: CallOverrides): Promise; - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise + GELATO(overrides?: CallOverrides): Promise; - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + OPS(overrides?: CallOverrides): Promise; - freeMargin(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - getDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - getPosition(_marketKey: BytesLike, overrides?: CallOverrides): Promise + committedMargin(overrides?: CallOverrides): Promise; - isAuth(overrides?: CallOverrides): Promise + conditionalOrderId(overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + delegates(delegate: string, overrides?: CallOverrides): Promise; + + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; + + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - removeDelegate(_delegate: string, overrides?: Overrides & { from?: string }): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - } + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - populateTransaction: { - ETH(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; + + isOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + ETH(overrides?: CallOverrides): Promise; - GELATO(overrides?: CallOverrides): Promise + GELATO(overrides?: CallOverrides): Promise; - OPS(overrides?: CallOverrides): Promise + OPS(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - addDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise + addDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - checker( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + checker( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - committedMargin(overrides?: CallOverrides): Promise + committedMargin(overrides?: CallOverrides): Promise; - conditionalOrderId(overrides?: CallOverrides): Promise + conditionalOrderId( + overrides?: CallOverrides + ): Promise; - delegates(delegate: string, overrides?: CallOverrides): Promise + delegates( + delegate: string, + overrides?: CallOverrides + ): Promise; - execute( - _commands: BigNumberish[], - _inputs: BytesLike[], - overrides?: PayableOverrides & { from?: string } - ): Promise + execute( + _commands: BigNumberish[], + _inputs: BytesLike[], + overrides?: PayableOverrides & { from?: string } + ): Promise; - executeConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + executeConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - freeMargin(overrides?: CallOverrides): Promise + freeMargin(overrides?: CallOverrides): Promise; - getConditionalOrder( - _conditionalOrderId: BigNumberish, - overrides?: CallOverrides - ): Promise + getConditionalOrder( + _conditionalOrderId: BigNumberish, + overrides?: CallOverrides + ): Promise; - getDelayedOrder(_marketKey: BytesLike, overrides?: CallOverrides): Promise + getDelayedOrder( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - getPosition(_marketKey: BytesLike, overrides?: CallOverrides): Promise + getPosition( + _marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - isAuth(overrides?: CallOverrides): Promise + isAuth(overrides?: CallOverrides): Promise; - isOwner(overrides?: CallOverrides): Promise + isOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - removeDelegate( - _delegate: string, - overrides?: Overrides & { from?: string } - ): Promise + removeDelegate( + _delegate: string, + overrides?: Overrides & { from?: string } + ): Promise; - setInitialOwnership( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + setInitialOwnership( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - transferOwnership( - _newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - } + transferOwnership( + _newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts index f304d2b58b..d93d9128a3 100644 --- a/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts +++ b/packages/sdk/src/contracts/types/SmartMarginAccountFactory.ts @@ -2,334 +2,451 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SmartMarginAccountFactoryInterface extends utils.Interface { - functions: { - 'accounts(address)': FunctionFragment - 'canUpgrade()': FunctionFragment - 'getAccountOwner(address)': FunctionFragment - 'getAccountsOwnedBy(address)': FunctionFragment - 'implementation()': FunctionFragment - 'newAccount()': FunctionFragment - 'owner()': FunctionFragment - 'removeUpgradability()': FunctionFragment - 'transferOwnership(address)': FunctionFragment - 'updateAccountOwnership(address,address,address)': FunctionFragment - 'upgradeAccountImplementation(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'accounts' - | 'canUpgrade' - | 'getAccountOwner' - | 'getAccountsOwnedBy' - | 'implementation' - | 'newAccount' - | 'owner' - | 'removeUpgradability' - | 'transferOwnership' - | 'updateAccountOwnership' - | 'upgradeAccountImplementation' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accounts', values: [string]): string - encodeFunctionData(functionFragment: 'canUpgrade', values?: undefined): string - encodeFunctionData(functionFragment: 'getAccountOwner', values: [string]): string - encodeFunctionData(functionFragment: 'getAccountsOwnedBy', values: [string]): string - encodeFunctionData(functionFragment: 'implementation', values?: undefined): string - encodeFunctionData(functionFragment: 'newAccount', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'removeUpgradability', values?: undefined): string - encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string - encodeFunctionData( - functionFragment: 'updateAccountOwnership', - values: [string, string, string] - ): string - encodeFunctionData(functionFragment: 'upgradeAccountImplementation', values: [string]): string - - decodeFunctionResult(functionFragment: 'accounts', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'canUpgrade', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAccountsOwnedBy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'implementation', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'newAccount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeUpgradability', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateAccountOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'upgradeAccountImplementation', data: BytesLike): Result - - events: { - 'AccountImplementationUpgraded(address)': EventFragment - 'NewAccount(address,address,bytes32)': EventFragment - 'OwnershipTransferred(address,address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccountImplementationUpgraded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'NewAccount'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment + functions: { + "accounts(address)": FunctionFragment; + "canUpgrade()": FunctionFragment; + "getAccountOwner(address)": FunctionFragment; + "getAccountsOwnedBy(address)": FunctionFragment; + "implementation()": FunctionFragment; + "newAccount()": FunctionFragment; + "owner()": FunctionFragment; + "removeUpgradability()": FunctionFragment; + "transferOwnership(address)": FunctionFragment; + "updateAccountOwnership(address,address,address)": FunctionFragment; + "upgradeAccountImplementation(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "accounts" + | "canUpgrade" + | "getAccountOwner" + | "getAccountsOwnedBy" + | "implementation" + | "newAccount" + | "owner" + | "removeUpgradability" + | "transferOwnership" + | "updateAccountOwnership" + | "upgradeAccountImplementation" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "accounts", values: [string]): string; + encodeFunctionData( + functionFragment: "canUpgrade", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getAccountOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "getAccountsOwnedBy", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "implementation", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "newAccount", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "removeUpgradability", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transferOwnership", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "updateAccountOwnership", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "upgradeAccountImplementation", + values: [string] + ): string; + + decodeFunctionResult(functionFragment: "accounts", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "canUpgrade", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getAccountOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getAccountsOwnedBy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "implementation", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "newAccount", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "removeUpgradability", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateAccountOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "upgradeAccountImplementation", + data: BytesLike + ): Result; + + events: { + "AccountImplementationUpgraded(address)": EventFragment; + "NewAccount(address,address,bytes32)": EventFragment; + "OwnershipTransferred(address,address)": EventFragment; + }; + + getEvent( + nameOrSignatureOrTopic: "AccountImplementationUpgraded" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "NewAccount"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export interface AccountImplementationUpgradedEventObject { - implementation: string + implementation: string; } export type AccountImplementationUpgradedEvent = TypedEvent< - [string], - AccountImplementationUpgradedEventObject -> + [string], + AccountImplementationUpgradedEventObject +>; export type AccountImplementationUpgradedEventFilter = - TypedEventFilter + TypedEventFilter; export interface NewAccountEventObject { - creator: string - account: string - version: string + creator: string; + account: string; + version: string; } -export type NewAccountEvent = TypedEvent<[string, string, string], NewAccountEventObject> +export type NewAccountEvent = TypedEvent< + [string, string, string], + NewAccountEventObject +>; -export type NewAccountEventFilter = TypedEventFilter +export type NewAccountEventFilter = TypedEventFilter; export interface OwnershipTransferredEventObject { - user: string - newOwner: string + user: string; + newOwner: string; } export type OwnershipTransferredEvent = TypedEvent< - [string, string], - OwnershipTransferredEventObject -> + [string, string], + OwnershipTransferredEventObject +>; -export type OwnershipTransferredEventFilter = TypedEventFilter +export type OwnershipTransferredEventFilter = + TypedEventFilter; export interface SmartMarginAccountFactory extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SmartMarginAccountFactoryInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - accounts(accounts: string, overrides?: CallOverrides): Promise<[boolean] & { exist: boolean }> - - canUpgrade(overrides?: CallOverrides): Promise<[boolean]> - - getAccountOwner(_account: string, overrides?: CallOverrides): Promise<[string]> - - getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise<[string[]]> - - implementation(overrides?: CallOverrides): Promise<[string]> - - newAccount(overrides?: Overrides & { from?: string }): Promise - - owner(overrides?: CallOverrides): Promise<[string]> - - removeUpgradability(overrides?: Overrides & { from?: string }): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccountOwnership( - _account: string, - _newOwner: string, - _oldOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeAccountImplementation( - _implementation: string, - overrides?: Overrides & { from?: string } - ): Promise - } - - accounts(accounts: string, overrides?: CallOverrides): Promise - - canUpgrade(overrides?: CallOverrides): Promise - - getAccountOwner(_account: string, overrides?: CallOverrides): Promise - - getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise - - implementation(overrides?: CallOverrides): Promise - - newAccount(overrides?: Overrides & { from?: string }): Promise - - owner(overrides?: CallOverrides): Promise - - removeUpgradability(overrides?: Overrides & { from?: string }): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccountOwnership( - _account: string, - _newOwner: string, - _oldOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeAccountImplementation( - _implementation: string, - overrides?: Overrides & { from?: string } - ): Promise - - callStatic: { - accounts(accounts: string, overrides?: CallOverrides): Promise - - canUpgrade(overrides?: CallOverrides): Promise - - getAccountOwner(_account: string, overrides?: CallOverrides): Promise - - getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise - - implementation(overrides?: CallOverrides): Promise - - newAccount(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - removeUpgradability(overrides?: CallOverrides): Promise - - transferOwnership(newOwner: string, overrides?: CallOverrides): Promise - - updateAccountOwnership( - _account: string, - _newOwner: string, - _oldOwner: string, - overrides?: CallOverrides - ): Promise - - upgradeAccountImplementation(_implementation: string, overrides?: CallOverrides): Promise - } - - filters: { - 'AccountImplementationUpgraded(address)'( - implementation?: null - ): AccountImplementationUpgradedEventFilter - AccountImplementationUpgraded(implementation?: null): AccountImplementationUpgradedEventFilter - - 'NewAccount(address,address,bytes32)'( - creator?: string | null, - account?: string | null, - version?: null - ): NewAccountEventFilter - NewAccount( - creator?: string | null, - account?: string | null, - version?: null - ): NewAccountEventFilter - - 'OwnershipTransferred(address,address)'( - user?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter - OwnershipTransferred( - user?: string | null, - newOwner?: string | null - ): OwnershipTransferredEventFilter - } - - estimateGas: { - accounts(accounts: string, overrides?: CallOverrides): Promise - - canUpgrade(overrides?: CallOverrides): Promise - - getAccountOwner(_account: string, overrides?: CallOverrides): Promise - - getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise - - implementation(overrides?: CallOverrides): Promise - - newAccount(overrides?: Overrides & { from?: string }): Promise - - owner(overrides?: CallOverrides): Promise - - removeUpgradability(overrides?: Overrides & { from?: string }): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccountOwnership( - _account: string, - _newOwner: string, - _oldOwner: string, - overrides?: Overrides & { from?: string } - ): Promise - - upgradeAccountImplementation( - _implementation: string, - overrides?: Overrides & { from?: string } - ): Promise - } - - populateTransaction: { - accounts(accounts: string, overrides?: CallOverrides): Promise - - canUpgrade(overrides?: CallOverrides): Promise - - getAccountOwner(_account: string, overrides?: CallOverrides): Promise - - getAccountsOwnedBy(_owner: string, overrides?: CallOverrides): Promise - - implementation(overrides?: CallOverrides): Promise - - newAccount(overrides?: Overrides & { from?: string }): Promise - - owner(overrides?: CallOverrides): Promise - - removeUpgradability(overrides?: Overrides & { from?: string }): Promise - - transferOwnership( - newOwner: string, - overrides?: Overrides & { from?: string } - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SmartMarginAccountFactoryInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + accounts( + accounts: string, + overrides?: CallOverrides + ): Promise<[boolean] & { exist: boolean }>; + + canUpgrade(overrides?: CallOverrides): Promise<[boolean]>; + + getAccountOwner( + _account: string, + overrides?: CallOverrides + ): Promise<[string]>; - updateAccountOwnership( - _account: string, - _newOwner: string, - _oldOwner: string, - overrides?: Overrides & { from?: string } - ): Promise + getAccountsOwnedBy( + _owner: string, + overrides?: CallOverrides + ): Promise<[string[]]>; - upgradeAccountImplementation( - _implementation: string, - overrides?: Overrides & { from?: string } - ): Promise - } + implementation(overrides?: CallOverrides): Promise<[string]>; + + newAccount( + overrides?: Overrides & { from?: string } + ): Promise; + + owner(overrides?: CallOverrides): Promise<[string]>; + + removeUpgradability( + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccountOwnership( + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeAccountImplementation( + _implementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + accounts(accounts: string, overrides?: CallOverrides): Promise; + + canUpgrade(overrides?: CallOverrides): Promise; + + getAccountOwner(_account: string, overrides?: CallOverrides): Promise; + + getAccountsOwnedBy( + _owner: string, + overrides?: CallOverrides + ): Promise; + + implementation(overrides?: CallOverrides): Promise; + + newAccount( + overrides?: Overrides & { from?: string } + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeUpgradability( + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccountOwnership( + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeAccountImplementation( + _implementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + accounts(accounts: string, overrides?: CallOverrides): Promise; + + canUpgrade(overrides?: CallOverrides): Promise; + + getAccountOwner( + _account: string, + overrides?: CallOverrides + ): Promise; + + getAccountsOwnedBy( + _owner: string, + overrides?: CallOverrides + ): Promise; + + implementation(overrides?: CallOverrides): Promise; + + newAccount(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeUpgradability(overrides?: CallOverrides): Promise; + + transferOwnership( + newOwner: string, + overrides?: CallOverrides + ): Promise; + + updateAccountOwnership( + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: CallOverrides + ): Promise; + + upgradeAccountImplementation( + _implementation: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccountImplementationUpgraded(address)"( + implementation?: null + ): AccountImplementationUpgradedEventFilter; + AccountImplementationUpgraded( + implementation?: null + ): AccountImplementationUpgradedEventFilter; + + "NewAccount(address,address,bytes32)"( + creator?: string | null, + account?: string | null, + version?: null + ): NewAccountEventFilter; + NewAccount( + creator?: string | null, + account?: string | null, + version?: null + ): NewAccountEventFilter; + + "OwnershipTransferred(address,address)"( + user?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + OwnershipTransferred( + user?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; + }; + + estimateGas: { + accounts(accounts: string, overrides?: CallOverrides): Promise; + + canUpgrade(overrides?: CallOverrides): Promise; + + getAccountOwner( + _account: string, + overrides?: CallOverrides + ): Promise; + + getAccountsOwnedBy( + _owner: string, + overrides?: CallOverrides + ): Promise; + + implementation(overrides?: CallOverrides): Promise; + + newAccount(overrides?: Overrides & { from?: string }): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeUpgradability( + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccountOwnership( + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeAccountImplementation( + _implementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + accounts( + accounts: string, + overrides?: CallOverrides + ): Promise; + + canUpgrade(overrides?: CallOverrides): Promise; + + getAccountOwner( + _account: string, + overrides?: CallOverrides + ): Promise; + + getAccountsOwnedBy( + _owner: string, + overrides?: CallOverrides + ): Promise; + + implementation(overrides?: CallOverrides): Promise; + + newAccount( + overrides?: Overrides & { from?: string } + ): Promise; + + owner(overrides?: CallOverrides): Promise; + + removeUpgradability( + overrides?: Overrides & { from?: string } + ): Promise; + + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccountOwnership( + _account: string, + _newOwner: string, + _oldOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeAccountImplementation( + _implementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/StakingRewards.ts b/packages/sdk/src/contracts/types/StakingRewards.ts index 6101925d30..0176b20466 100644 --- a/packages/sdk/src/contracts/types/StakingRewards.ts +++ b/packages/sdk/src/contracts/types/StakingRewards.ts @@ -2,706 +2,952 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface StakingRewardsInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'earned(address)': FunctionFragment - 'exit()': FunctionFragment - 'getReward()': FunctionFragment - 'getRewardForDuration()': FunctionFragment - 'lastPauseTime()': FunctionFragment - 'lastTimeRewardApplicable()': FunctionFragment - 'lastUpdateTime()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'notifyRewardAmount(uint256)': FunctionFragment - 'owner()': FunctionFragment - 'paused()': FunctionFragment - 'periodFinish()': FunctionFragment - 'recoverERC20(address,uint256)': FunctionFragment - 'rewardPerToken()': FunctionFragment - 'rewardPerTokenStored()': FunctionFragment - 'rewardRate()': FunctionFragment - 'rewards(address)': FunctionFragment - 'rewardsDistribution()': FunctionFragment - 'rewardsDuration()': FunctionFragment - 'rewardsToken()': FunctionFragment - 'setPaused(bool)': FunctionFragment - 'setRewardsDistribution(address)': FunctionFragment - 'setRewardsDuration(uint256)': FunctionFragment - 'stake(uint256)': FunctionFragment - 'stakingToken()': FunctionFragment - 'totalSupply()': FunctionFragment - 'userRewardPerTokenPaid(address)': FunctionFragment - 'withdraw(uint256)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'balanceOf' - | 'earned' - | 'exit' - | 'getReward' - | 'getRewardForDuration' - | 'lastPauseTime' - | 'lastTimeRewardApplicable' - | 'lastUpdateTime' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'notifyRewardAmount' - | 'owner' - | 'paused' - | 'periodFinish' - | 'recoverERC20' - | 'rewardPerToken' - | 'rewardPerTokenStored' - | 'rewardRate' - | 'rewards' - | 'rewardsDistribution' - | 'rewardsDuration' - | 'rewardsToken' - | 'setPaused' - | 'setRewardsDistribution' - | 'setRewardsDuration' - | 'stake' - | 'stakingToken' - | 'totalSupply' - | 'userRewardPerTokenPaid' - | 'withdraw' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'earned', values: [string]): string - encodeFunctionData(functionFragment: 'exit', values?: undefined): string - encodeFunctionData(functionFragment: 'getReward', values?: undefined): string - encodeFunctionData(functionFragment: 'getRewardForDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'lastPauseTime', values?: undefined): string - encodeFunctionData(functionFragment: 'lastTimeRewardApplicable', values?: undefined): string - encodeFunctionData(functionFragment: 'lastUpdateTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'notifyRewardAmount', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'paused', values?: undefined): string - encodeFunctionData(functionFragment: 'periodFinish', values?: undefined): string - encodeFunctionData(functionFragment: 'recoverERC20', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'rewardPerToken', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardPerTokenStored', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardRate', values?: undefined): string - encodeFunctionData(functionFragment: 'rewards', values: [string]): string - encodeFunctionData(functionFragment: 'rewardsDistribution', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardsDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'rewardsToken', values?: undefined): string - encodeFunctionData(functionFragment: 'setPaused', values: [boolean]): string - encodeFunctionData(functionFragment: 'setRewardsDistribution', values: [string]): string - encodeFunctionData(functionFragment: 'setRewardsDuration', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stake', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stakingToken', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'userRewardPerTokenPaid', values: [string]): string - encodeFunctionData(functionFragment: 'withdraw', values: [BigNumberish]): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'earned', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRewardForDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastPauseTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastTimeRewardApplicable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastUpdateTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'notifyRewardAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'paused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'periodFinish', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recoverERC20', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardPerTokenStored', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDistribution', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardsToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setPaused', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDistribution', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setRewardsDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakingToken', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'userRewardPerTokenPaid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdraw', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'PauseChanged(bool)': EventFragment - 'Recovered(address,uint256)': EventFragment - 'RewardAdded(uint256)': EventFragment - 'RewardPaid(address,uint256)': EventFragment - 'RewardsDurationUpdated(uint256)': EventFragment - 'Staked(address,uint256)': EventFragment - 'Withdrawn(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PauseChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Recovered'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardAdded'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardPaid'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RewardsDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Staked'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Withdrawn'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "earned(address)": FunctionFragment; + "exit()": FunctionFragment; + "getReward()": FunctionFragment; + "getRewardForDuration()": FunctionFragment; + "lastPauseTime()": FunctionFragment; + "lastTimeRewardApplicable()": FunctionFragment; + "lastUpdateTime()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "notifyRewardAmount(uint256)": FunctionFragment; + "owner()": FunctionFragment; + "paused()": FunctionFragment; + "periodFinish()": FunctionFragment; + "recoverERC20(address,uint256)": FunctionFragment; + "rewardPerToken()": FunctionFragment; + "rewardPerTokenStored()": FunctionFragment; + "rewardRate()": FunctionFragment; + "rewards(address)": FunctionFragment; + "rewardsDistribution()": FunctionFragment; + "rewardsDuration()": FunctionFragment; + "rewardsToken()": FunctionFragment; + "setPaused(bool)": FunctionFragment; + "setRewardsDistribution(address)": FunctionFragment; + "setRewardsDuration(uint256)": FunctionFragment; + "stake(uint256)": FunctionFragment; + "stakingToken()": FunctionFragment; + "totalSupply()": FunctionFragment; + "userRewardPerTokenPaid(address)": FunctionFragment; + "withdraw(uint256)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "balanceOf" + | "earned" + | "exit" + | "getReward" + | "getRewardForDuration" + | "lastPauseTime" + | "lastTimeRewardApplicable" + | "lastUpdateTime" + | "nominateNewOwner" + | "nominatedOwner" + | "notifyRewardAmount" + | "owner" + | "paused" + | "periodFinish" + | "recoverERC20" + | "rewardPerToken" + | "rewardPerTokenStored" + | "rewardRate" + | "rewards" + | "rewardsDistribution" + | "rewardsDuration" + | "rewardsToken" + | "setPaused" + | "setRewardsDistribution" + | "setRewardsDuration" + | "stake" + | "stakingToken" + | "totalSupply" + | "userRewardPerTokenPaid" + | "withdraw" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "earned", values: [string]): string; + encodeFunctionData(functionFragment: "exit", values?: undefined): string; + encodeFunctionData(functionFragment: "getReward", values?: undefined): string; + encodeFunctionData( + functionFragment: "getRewardForDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastPauseTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastTimeRewardApplicable", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "lastUpdateTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "notifyRewardAmount", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "paused", values?: undefined): string; + encodeFunctionData( + functionFragment: "periodFinish", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "recoverERC20", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "rewardPerToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardPerTokenStored", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardRate", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "rewards", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardsDistribution", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardsDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rewardsToken", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "setPaused", values: [boolean]): string; + encodeFunctionData( + functionFragment: "setRewardsDistribution", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setRewardsDuration", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "stakingToken", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "userRewardPerTokenPaid", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "withdraw", + values: [BigNumberish] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "earned", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "exit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getReward", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getRewardForDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastPauseTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastTimeRewardApplicable", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "lastUpdateTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "notifyRewardAmount", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "periodFinish", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "recoverERC20", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardPerTokenStored", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "rewardRate", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "rewards", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardsDistribution", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rewardsToken", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setPaused", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setRewardsDistribution", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setRewardsDuration", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "stakingToken", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "userRewardPerTokenPaid", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "PauseChanged(bool)": EventFragment; + "Recovered(address,uint256)": EventFragment; + "RewardAdded(uint256)": EventFragment; + "RewardPaid(address,uint256)": EventFragment; + "RewardsDurationUpdated(uint256)": EventFragment; + "Staked(address,uint256)": EventFragment; + "Withdrawn(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "PauseChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Recovered"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardAdded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardPaid"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RewardsDurationUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PauseChangedEventObject { - isPaused: boolean + isPaused: boolean; } -export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject> +export type PauseChangedEvent = TypedEvent<[boolean], PauseChangedEventObject>; -export type PauseChangedEventFilter = TypedEventFilter +export type PauseChangedEventFilter = TypedEventFilter; export interface RecoveredEventObject { - token: string - amount: BigNumber + token: string; + amount: BigNumber; } -export type RecoveredEvent = TypedEvent<[string, BigNumber], RecoveredEventObject> +export type RecoveredEvent = TypedEvent< + [string, BigNumber], + RecoveredEventObject +>; -export type RecoveredEventFilter = TypedEventFilter +export type RecoveredEventFilter = TypedEventFilter; export interface RewardAddedEventObject { - reward: BigNumber + reward: BigNumber; } -export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject> +export type RewardAddedEvent = TypedEvent<[BigNumber], RewardAddedEventObject>; -export type RewardAddedEventFilter = TypedEventFilter +export type RewardAddedEventFilter = TypedEventFilter; export interface RewardPaidEventObject { - user: string - reward: BigNumber + user: string; + reward: BigNumber; } -export type RewardPaidEvent = TypedEvent<[string, BigNumber], RewardPaidEventObject> +export type RewardPaidEvent = TypedEvent< + [string, BigNumber], + RewardPaidEventObject +>; -export type RewardPaidEventFilter = TypedEventFilter +export type RewardPaidEventFilter = TypedEventFilter; export interface RewardsDurationUpdatedEventObject { - newDuration: BigNumber + newDuration: BigNumber; } -export type RewardsDurationUpdatedEvent = TypedEvent<[BigNumber], RewardsDurationUpdatedEventObject> +export type RewardsDurationUpdatedEvent = TypedEvent< + [BigNumber], + RewardsDurationUpdatedEventObject +>; -export type RewardsDurationUpdatedEventFilter = TypedEventFilter +export type RewardsDurationUpdatedEventFilter = + TypedEventFilter; export interface StakedEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject> +export type StakedEvent = TypedEvent<[string, BigNumber], StakedEventObject>; -export type StakedEventFilter = TypedEventFilter +export type StakedEventFilter = TypedEventFilter; export interface WithdrawnEventObject { - user: string - amount: BigNumber + user: string; + amount: BigNumber; } -export type WithdrawnEvent = TypedEvent<[string, BigNumber], WithdrawnEventObject> +export type WithdrawnEvent = TypedEvent< + [string, BigNumber], + WithdrawnEventObject +>; -export type WithdrawnEventFilter = TypedEventFilter +export type WithdrawnEventFilter = TypedEventFilter; export interface StakingRewards extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: StakingRewardsInterface + interface: StakingRewardsInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]> + earned(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; - exit(overrides?: Overrides & { from?: string }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]> + getRewardForDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastPauseTime(overrides?: CallOverrides): Promise<[BigNumber]>; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]> + lastTimeRewardApplicable(overrides?: CallOverrides): Promise<[BigNumber]>; - lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]> + lastUpdateTime(overrides?: CallOverrides): Promise<[BigNumber]>; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - paused(overrides?: CallOverrides): Promise<[boolean]> + paused(overrides?: CallOverrides): Promise<[boolean]>; - periodFinish(overrides?: CallOverrides): Promise<[BigNumber]> + periodFinish(overrides?: CallOverrides): Promise<[BigNumber]>; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerToken(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]> + rewardPerTokenStored(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardRate(overrides?: CallOverrides): Promise<[BigNumber]> + rewardRate(overrides?: CallOverrides): Promise<[BigNumber]>; - rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + rewards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsDistribution(overrides?: CallOverrides): Promise<[string]> + rewardsDistribution(overrides?: CallOverrides): Promise<[string]>; - rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]> + rewardsDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - rewardsToken(overrides?: CallOverrides): Promise<[string]> + rewardsToken(overrides?: CallOverrides): Promise<[string]>; - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise<[string]> + stakingToken(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: CallOverrides): Promise + exit(overrides?: CallOverrides): Promise; - getReward(overrides?: CallOverrides): Promise + getReward(overrides?: CallOverrides): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount(reward: BigNumberish, overrides?: CallOverrides): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: CallOverrides - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused(_paused: boolean, overrides?: CallOverrides): Promise + setPaused(_paused: boolean, overrides?: CallOverrides): Promise; - setRewardsDistribution(_rewardsDistribution: string, overrides?: CallOverrides): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: CallOverrides + ): Promise; - setRewardsDuration(_rewardsDuration: BigNumberish, overrides?: CallOverrides): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: CallOverrides + ): Promise; - stake(amount: BigNumberish, overrides?: CallOverrides): Promise + stake(amount: BigNumberish, overrides?: CallOverrides): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw(amount: BigNumberish, overrides?: CallOverrides): Promise - } + withdraw(amount: BigNumberish, overrides?: CallOverrides): Promise; + }; - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'PauseChanged(bool)'(isPaused?: null): PauseChangedEventFilter - PauseChanged(isPaused?: null): PauseChangedEventFilter + "PauseChanged(bool)"(isPaused?: null): PauseChangedEventFilter; + PauseChanged(isPaused?: null): PauseChangedEventFilter; - 'Recovered(address,uint256)'(token?: null, amount?: null): RecoveredEventFilter - Recovered(token?: null, amount?: null): RecoveredEventFilter + "Recovered(address,uint256)"( + token?: null, + amount?: null + ): RecoveredEventFilter; + Recovered(token?: null, amount?: null): RecoveredEventFilter; - 'RewardAdded(uint256)'(reward?: null): RewardAddedEventFilter - RewardAdded(reward?: null): RewardAddedEventFilter + "RewardAdded(uint256)"(reward?: null): RewardAddedEventFilter; + RewardAdded(reward?: null): RewardAddedEventFilter; - 'RewardPaid(address,uint256)'(user?: string | null, reward?: null): RewardPaidEventFilter - RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter + "RewardPaid(address,uint256)"( + user?: string | null, + reward?: null + ): RewardPaidEventFilter; + RewardPaid(user?: string | null, reward?: null): RewardPaidEventFilter; - 'RewardsDurationUpdated(uint256)'(newDuration?: null): RewardsDurationUpdatedEventFilter - RewardsDurationUpdated(newDuration?: null): RewardsDurationUpdatedEventFilter + "RewardsDurationUpdated(uint256)"( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; + RewardsDurationUpdated( + newDuration?: null + ): RewardsDurationUpdatedEventFilter; - 'Staked(address,uint256)'(user?: string | null, amount?: null): StakedEventFilter - Staked(user?: string | null, amount?: null): StakedEventFilter + "Staked(address,uint256)"( + user?: string | null, + amount?: null + ): StakedEventFilter; + Staked(user?: string | null, amount?: null): StakedEventFilter; - 'Withdrawn(address,uint256)'(user?: string | null, amount?: null): WithdrawnEventFilter - Withdrawn(user?: string | null, amount?: null): WithdrawnEventFilter - } + "Withdrawn(address,uint256)"( + user?: string | null, + amount?: null + ): WithdrawnEventFilter; + Withdrawn(user?: string | null, amount?: null): WithdrawnEventFilter; + }; - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned(account: string, overrides?: CallOverrides): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit(overrides?: Overrides & { from?: string }): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward(overrides?: Overrides & { from?: string }): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration(overrides?: CallOverrides): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable(overrides?: CallOverrides): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored(overrides?: CallOverrides): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards(arg0: string, overrides?: CallOverrides): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution(overrides?: CallOverrides): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused(_paused: boolean, overrides?: Overrides & { from?: string }): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - earned(account: string, overrides?: CallOverrides): Promise + earned( + account: string, + overrides?: CallOverrides + ): Promise; - exit(overrides?: Overrides & { from?: string }): Promise + exit( + overrides?: Overrides & { from?: string } + ): Promise; - getReward(overrides?: Overrides & { from?: string }): Promise + getReward( + overrides?: Overrides & { from?: string } + ): Promise; - getRewardForDuration(overrides?: CallOverrides): Promise + getRewardForDuration( + overrides?: CallOverrides + ): Promise; - lastPauseTime(overrides?: CallOverrides): Promise + lastPauseTime(overrides?: CallOverrides): Promise; - lastTimeRewardApplicable(overrides?: CallOverrides): Promise + lastTimeRewardApplicable( + overrides?: CallOverrides + ): Promise; - lastUpdateTime(overrides?: CallOverrides): Promise + lastUpdateTime(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - notifyRewardAmount( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + notifyRewardAmount( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - paused(overrides?: CallOverrides): Promise + paused(overrides?: CallOverrides): Promise; - periodFinish(overrides?: CallOverrides): Promise + periodFinish(overrides?: CallOverrides): Promise; - recoverERC20( - tokenAddress: string, - tokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + recoverERC20( + tokenAddress: string, + tokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - rewardPerToken(overrides?: CallOverrides): Promise + rewardPerToken(overrides?: CallOverrides): Promise; - rewardPerTokenStored(overrides?: CallOverrides): Promise + rewardPerTokenStored( + overrides?: CallOverrides + ): Promise; - rewardRate(overrides?: CallOverrides): Promise + rewardRate(overrides?: CallOverrides): Promise; - rewards(arg0: string, overrides?: CallOverrides): Promise + rewards( + arg0: string, + overrides?: CallOverrides + ): Promise; - rewardsDistribution(overrides?: CallOverrides): Promise + rewardsDistribution( + overrides?: CallOverrides + ): Promise; - rewardsDuration(overrides?: CallOverrides): Promise + rewardsDuration(overrides?: CallOverrides): Promise; - rewardsToken(overrides?: CallOverrides): Promise + rewardsToken(overrides?: CallOverrides): Promise; - setPaused( - _paused: boolean, - overrides?: Overrides & { from?: string } - ): Promise + setPaused( + _paused: boolean, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDistribution( - _rewardsDistribution: string, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDistribution( + _rewardsDistribution: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRewardsDuration( - _rewardsDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setRewardsDuration( + _rewardsDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stake( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + stake( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingToken(overrides?: CallOverrides): Promise + stakingToken(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - userRewardPerTokenPaid(arg0: string, overrides?: CallOverrides): Promise + userRewardPerTokenPaid( + arg0: string, + overrides?: CallOverrides + ): Promise; - withdraw( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - } + withdraw( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SupplySchedule.ts b/packages/sdk/src/contracts/types/SupplySchedule.ts index 008295cd24..5d1505125a 100644 --- a/packages/sdk/src/contracts/types/SupplySchedule.ts +++ b/packages/sdk/src/contracts/types/SupplySchedule.ts @@ -2,833 +2,1127 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SupplyScheduleInterface extends utils.Interface { - functions: { - 'DECAY_RATE()': FunctionFragment - 'INITIAL_SUPPLY()': FunctionFragment - 'INITIAL_WEEKLY_SUPPLY()': FunctionFragment - 'MAX_MINTER_REWARD()': FunctionFragment - 'MINT_BUFFER()': FunctionFragment - 'MINT_PERIOD_DURATION()': FunctionFragment - 'SUPPLY_DECAY_END()': FunctionFragment - 'SUPPLY_DECAY_START()': FunctionFragment - 'TERMINAL_SUPPLY_RATE_ANNUAL()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'inflationStartDate()': FunctionFragment - 'isMintable()': FunctionFragment - 'kwenta()': FunctionFragment - 'lastMintEvent()': FunctionFragment - 'mint()': FunctionFragment - 'mintableSupply()': FunctionFragment - 'minterReward()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'setKwenta(address)': FunctionFragment - 'setMinterReward(uint256)': FunctionFragment - 'setStakingRewards(address)': FunctionFragment - 'setTradingRewards(address)': FunctionFragment - 'setTradingRewardsDiversion(uint256)': FunctionFragment - 'setTreasuryDAO(address)': FunctionFragment - 'setTreasuryDiversion(uint256)': FunctionFragment - 'stakingRewards()': FunctionFragment - 'terminalInflationSupply(uint256,uint256)': FunctionFragment - 'tokenDecaySupplyForWeek(uint256)': FunctionFragment - 'tradingRewards()': FunctionFragment - 'tradingRewardsDiversion()': FunctionFragment - 'treasuryDAO()': FunctionFragment - 'treasuryDiversion()': FunctionFragment - 'weekCounter()': FunctionFragment - 'weeksSinceLastIssuance()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'DECAY_RATE' - | 'INITIAL_SUPPLY' - | 'INITIAL_WEEKLY_SUPPLY' - | 'MAX_MINTER_REWARD' - | 'MINT_BUFFER' - | 'MINT_PERIOD_DURATION' - | 'SUPPLY_DECAY_END' - | 'SUPPLY_DECAY_START' - | 'TERMINAL_SUPPLY_RATE_ANNUAL' - | 'acceptOwnership' - | 'inflationStartDate' - | 'isMintable' - | 'kwenta' - | 'lastMintEvent' - | 'mint' - | 'mintableSupply' - | 'minterReward' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'setKwenta' - | 'setMinterReward' - | 'setStakingRewards' - | 'setTradingRewards' - | 'setTradingRewardsDiversion' - | 'setTreasuryDAO' - | 'setTreasuryDiversion' - | 'stakingRewards' - | 'terminalInflationSupply' - | 'tokenDecaySupplyForWeek' - | 'tradingRewards' - | 'tradingRewardsDiversion' - | 'treasuryDAO' - | 'treasuryDiversion' - | 'weekCounter' - | 'weeksSinceLastIssuance' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'DECAY_RATE', values?: undefined): string - encodeFunctionData(functionFragment: 'INITIAL_SUPPLY', values?: undefined): string - encodeFunctionData(functionFragment: 'INITIAL_WEEKLY_SUPPLY', values?: undefined): string - encodeFunctionData(functionFragment: 'MAX_MINTER_REWARD', values?: undefined): string - encodeFunctionData(functionFragment: 'MINT_BUFFER', values?: undefined): string - encodeFunctionData(functionFragment: 'MINT_PERIOD_DURATION', values?: undefined): string - encodeFunctionData(functionFragment: 'SUPPLY_DECAY_END', values?: undefined): string - encodeFunctionData(functionFragment: 'SUPPLY_DECAY_START', values?: undefined): string - encodeFunctionData(functionFragment: 'TERMINAL_SUPPLY_RATE_ANNUAL', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'inflationStartDate', values?: undefined): string - encodeFunctionData(functionFragment: 'isMintable', values?: undefined): string - encodeFunctionData(functionFragment: 'kwenta', values?: undefined): string - encodeFunctionData(functionFragment: 'lastMintEvent', values?: undefined): string - encodeFunctionData(functionFragment: 'mint', values?: undefined): string - encodeFunctionData(functionFragment: 'mintableSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'minterReward', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'setKwenta', values: [string]): string - encodeFunctionData(functionFragment: 'setMinterReward', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setStakingRewards', values: [string]): string - encodeFunctionData(functionFragment: 'setTradingRewards', values: [string]): string - encodeFunctionData(functionFragment: 'setTradingRewardsDiversion', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setTreasuryDAO', values: [string]): string - encodeFunctionData(functionFragment: 'setTreasuryDiversion', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'stakingRewards', values?: undefined): string - encodeFunctionData( - functionFragment: 'terminalInflationSupply', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'tokenDecaySupplyForWeek', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'tradingRewards', values?: undefined): string - encodeFunctionData(functionFragment: 'tradingRewardsDiversion', values?: undefined): string - encodeFunctionData(functionFragment: 'treasuryDAO', values?: undefined): string - encodeFunctionData(functionFragment: 'treasuryDiversion', values?: undefined): string - encodeFunctionData(functionFragment: 'weekCounter', values?: undefined): string - encodeFunctionData(functionFragment: 'weeksSinceLastIssuance', values?: undefined): string - - decodeFunctionResult(functionFragment: 'DECAY_RATE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'INITIAL_SUPPLY', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'INITIAL_WEEKLY_SUPPLY', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'MAX_MINTER_REWARD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'MINT_BUFFER', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'MINT_PERIOD_DURATION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SUPPLY_DECAY_END', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SUPPLY_DECAY_START', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'TERMINAL_SUPPLY_RATE_ANNUAL', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'inflationStartDate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isMintable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'kwenta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'lastMintEvent', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mintableSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minterReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setKwenta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinterReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setStakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTradingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTradingRewardsDiversion', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTreasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTreasuryDiversion', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'stakingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'terminalInflationSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tokenDecaySupplyForWeek', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tradingRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tradingRewardsDiversion', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'treasuryDAO', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'treasuryDiversion', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'weekCounter', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'weeksSinceLastIssuance', data: BytesLike): Result - - events: { - 'KwentaUpdated(address)': EventFragment - 'MinterRewardUpdated(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'StakingRewardsUpdated(address)': EventFragment - 'SupplyMinted(uint256,uint256,uint256)': EventFragment - 'TradingRewardsDiversionUpdated(uint256)': EventFragment - 'TradingRewardsUpdated(address)': EventFragment - 'TreasuryDAOSet(address)': EventFragment - 'TreasuryDiversionUpdated(uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'KwentaUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinterRewardUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'StakingRewardsUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SupplyMinted'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TradingRewardsDiversionUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TradingRewardsUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TreasuryDAOSet'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TreasuryDiversionUpdated'): EventFragment + functions: { + "DECAY_RATE()": FunctionFragment; + "INITIAL_SUPPLY()": FunctionFragment; + "INITIAL_WEEKLY_SUPPLY()": FunctionFragment; + "MAX_MINTER_REWARD()": FunctionFragment; + "MINT_BUFFER()": FunctionFragment; + "MINT_PERIOD_DURATION()": FunctionFragment; + "SUPPLY_DECAY_END()": FunctionFragment; + "SUPPLY_DECAY_START()": FunctionFragment; + "TERMINAL_SUPPLY_RATE_ANNUAL()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "inflationStartDate()": FunctionFragment; + "isMintable()": FunctionFragment; + "kwenta()": FunctionFragment; + "lastMintEvent()": FunctionFragment; + "mint()": FunctionFragment; + "mintableSupply()": FunctionFragment; + "minterReward()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "setKwenta(address)": FunctionFragment; + "setMinterReward(uint256)": FunctionFragment; + "setStakingRewards(address)": FunctionFragment; + "setTradingRewards(address)": FunctionFragment; + "setTradingRewardsDiversion(uint256)": FunctionFragment; + "setTreasuryDAO(address)": FunctionFragment; + "setTreasuryDiversion(uint256)": FunctionFragment; + "stakingRewards()": FunctionFragment; + "terminalInflationSupply(uint256,uint256)": FunctionFragment; + "tokenDecaySupplyForWeek(uint256)": FunctionFragment; + "tradingRewards()": FunctionFragment; + "tradingRewardsDiversion()": FunctionFragment; + "treasuryDAO()": FunctionFragment; + "treasuryDiversion()": FunctionFragment; + "weekCounter()": FunctionFragment; + "weeksSinceLastIssuance()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "DECAY_RATE" + | "INITIAL_SUPPLY" + | "INITIAL_WEEKLY_SUPPLY" + | "MAX_MINTER_REWARD" + | "MINT_BUFFER" + | "MINT_PERIOD_DURATION" + | "SUPPLY_DECAY_END" + | "SUPPLY_DECAY_START" + | "TERMINAL_SUPPLY_RATE_ANNUAL" + | "acceptOwnership" + | "inflationStartDate" + | "isMintable" + | "kwenta" + | "lastMintEvent" + | "mint" + | "mintableSupply" + | "minterReward" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "setKwenta" + | "setMinterReward" + | "setStakingRewards" + | "setTradingRewards" + | "setTradingRewardsDiversion" + | "setTreasuryDAO" + | "setTreasuryDiversion" + | "stakingRewards" + | "terminalInflationSupply" + | "tokenDecaySupplyForWeek" + | "tradingRewards" + | "tradingRewardsDiversion" + | "treasuryDAO" + | "treasuryDiversion" + | "weekCounter" + | "weeksSinceLastIssuance" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "DECAY_RATE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "INITIAL_SUPPLY", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "INITIAL_WEEKLY_SUPPLY", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "MAX_MINTER_REWARD", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "MINT_BUFFER", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "MINT_PERIOD_DURATION", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SUPPLY_DECAY_END", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SUPPLY_DECAY_START", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "TERMINAL_SUPPLY_RATE_ANNUAL", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "inflationStartDate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isMintable", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "kwenta", values?: undefined): string; + encodeFunctionData( + functionFragment: "lastMintEvent", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "mint", values?: undefined): string; + encodeFunctionData( + functionFragment: "mintableSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "minterReward", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "setKwenta", values: [string]): string; + encodeFunctionData( + functionFragment: "setMinterReward", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setStakingRewards", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTradingRewards", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTradingRewardsDiversion", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTreasuryDAO", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTreasuryDiversion", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "stakingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "terminalInflationSupply", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "tokenDecaySupplyForWeek", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "tradingRewards", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "tradingRewardsDiversion", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "treasuryDAO", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "treasuryDiversion", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "weekCounter", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "weeksSinceLastIssuance", + values?: undefined + ): string; + + decodeFunctionResult(functionFragment: "DECAY_RATE", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "INITIAL_SUPPLY", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "INITIAL_WEEKLY_SUPPLY", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "MAX_MINTER_REWARD", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "MINT_BUFFER", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "MINT_PERIOD_DURATION", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SUPPLY_DECAY_END", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SUPPLY_DECAY_START", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "TERMINAL_SUPPLY_RATE_ANNUAL", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "inflationStartDate", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "isMintable", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "kwenta", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "lastMintEvent", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "mintableSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minterReward", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "setKwenta", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMinterReward", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setStakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTradingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTradingRewardsDiversion", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTreasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTreasuryDiversion", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "stakingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "terminalInflationSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tokenDecaySupplyForWeek", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tradingRewards", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tradingRewardsDiversion", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "treasuryDAO", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "treasuryDiversion", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "weekCounter", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "weeksSinceLastIssuance", + data: BytesLike + ): Result; + + events: { + "KwentaUpdated(address)": EventFragment; + "MinterRewardUpdated(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "StakingRewardsUpdated(address)": EventFragment; + "SupplyMinted(uint256,uint256,uint256)": EventFragment; + "TradingRewardsDiversionUpdated(uint256)": EventFragment; + "TradingRewardsUpdated(address)": EventFragment; + "TreasuryDAOSet(address)": EventFragment; + "TreasuryDiversionUpdated(uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "KwentaUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinterRewardUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "StakingRewardsUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SupplyMinted"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "TradingRewardsDiversionUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "TradingRewardsUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TreasuryDAOSet"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TreasuryDiversionUpdated"): EventFragment; } export interface KwentaUpdatedEventObject { - newAddress: string + newAddress: string; } -export type KwentaUpdatedEvent = TypedEvent<[string], KwentaUpdatedEventObject> +export type KwentaUpdatedEvent = TypedEvent<[string], KwentaUpdatedEventObject>; -export type KwentaUpdatedEventFilter = TypedEventFilter +export type KwentaUpdatedEventFilter = TypedEventFilter; export interface MinterRewardUpdatedEventObject { - newRewardAmount: BigNumber + newRewardAmount: BigNumber; } -export type MinterRewardUpdatedEvent = TypedEvent<[BigNumber], MinterRewardUpdatedEventObject> +export type MinterRewardUpdatedEvent = TypedEvent< + [BigNumber], + MinterRewardUpdatedEventObject +>; -export type MinterRewardUpdatedEventFilter = TypedEventFilter +export type MinterRewardUpdatedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface StakingRewardsUpdatedEventObject { - newAddress: string + newAddress: string; } -export type StakingRewardsUpdatedEvent = TypedEvent<[string], StakingRewardsUpdatedEventObject> +export type StakingRewardsUpdatedEvent = TypedEvent< + [string], + StakingRewardsUpdatedEventObject +>; -export type StakingRewardsUpdatedEventFilter = TypedEventFilter +export type StakingRewardsUpdatedEventFilter = + TypedEventFilter; export interface SupplyMintedEventObject { - supplyMinted: BigNumber - numberOfWeeksIssued: BigNumber - lastMintEvent: BigNumber + supplyMinted: BigNumber; + numberOfWeeksIssued: BigNumber; + lastMintEvent: BigNumber; } export type SupplyMintedEvent = TypedEvent< - [BigNumber, BigNumber, BigNumber], - SupplyMintedEventObject -> + [BigNumber, BigNumber, BigNumber], + SupplyMintedEventObject +>; -export type SupplyMintedEventFilter = TypedEventFilter +export type SupplyMintedEventFilter = TypedEventFilter; export interface TradingRewardsDiversionUpdatedEventObject { - newPercentage: BigNumber + newPercentage: BigNumber; } export type TradingRewardsDiversionUpdatedEvent = TypedEvent< - [BigNumber], - TradingRewardsDiversionUpdatedEventObject -> + [BigNumber], + TradingRewardsDiversionUpdatedEventObject +>; export type TradingRewardsDiversionUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface TradingRewardsUpdatedEventObject { - newAddress: string + newAddress: string; } -export type TradingRewardsUpdatedEvent = TypedEvent<[string], TradingRewardsUpdatedEventObject> +export type TradingRewardsUpdatedEvent = TypedEvent< + [string], + TradingRewardsUpdatedEventObject +>; -export type TradingRewardsUpdatedEventFilter = TypedEventFilter +export type TradingRewardsUpdatedEventFilter = + TypedEventFilter; export interface TreasuryDAOSetEventObject { - treasuryDAO: string + treasuryDAO: string; } -export type TreasuryDAOSetEvent = TypedEvent<[string], TreasuryDAOSetEventObject> +export type TreasuryDAOSetEvent = TypedEvent< + [string], + TreasuryDAOSetEventObject +>; -export type TreasuryDAOSetEventFilter = TypedEventFilter +export type TreasuryDAOSetEventFilter = TypedEventFilter; export interface TreasuryDiversionUpdatedEventObject { - newPercentage: BigNumber + newPercentage: BigNumber; } export type TreasuryDiversionUpdatedEvent = TypedEvent< - [BigNumber], - TreasuryDiversionUpdatedEventObject -> + [BigNumber], + TreasuryDiversionUpdatedEventObject +>; -export type TreasuryDiversionUpdatedEventFilter = TypedEventFilter +export type TreasuryDiversionUpdatedEventFilter = + TypedEventFilter; export interface SupplySchedule extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: SupplyScheduleInterface + interface: SupplyScheduleInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - DECAY_RATE(overrides?: CallOverrides): Promise<[BigNumber]> + functions: { + DECAY_RATE(overrides?: CallOverrides): Promise<[BigNumber]>; - INITIAL_SUPPLY(overrides?: CallOverrides): Promise<[BigNumber]> + INITIAL_SUPPLY(overrides?: CallOverrides): Promise<[BigNumber]>; - INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise<[BigNumber]> + INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise<[BigNumber]>; - MAX_MINTER_REWARD(overrides?: CallOverrides): Promise<[BigNumber]> + MAX_MINTER_REWARD(overrides?: CallOverrides): Promise<[BigNumber]>; - MINT_BUFFER(overrides?: CallOverrides): Promise<[BigNumber]> + MINT_BUFFER(overrides?: CallOverrides): Promise<[BigNumber]>; - MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise<[BigNumber]> + MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise<[BigNumber]>; - SUPPLY_DECAY_END(overrides?: CallOverrides): Promise<[number]> + SUPPLY_DECAY_END(overrides?: CallOverrides): Promise<[number]>; - SUPPLY_DECAY_START(overrides?: CallOverrides): Promise<[number]> + SUPPLY_DECAY_START(overrides?: CallOverrides): Promise<[number]>; - TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise<[BigNumber]> + TERMINAL_SUPPLY_RATE_ANNUAL( + overrides?: CallOverrides + ): Promise<[BigNumber]>; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - inflationStartDate(overrides?: CallOverrides): Promise<[BigNumber]> + inflationStartDate(overrides?: CallOverrides): Promise<[BigNumber]>; - isMintable(overrides?: CallOverrides): Promise<[boolean]> + isMintable(overrides?: CallOverrides): Promise<[boolean]>; - kwenta(overrides?: CallOverrides): Promise<[string]> + kwenta(overrides?: CallOverrides): Promise<[string]>; - lastMintEvent(overrides?: CallOverrides): Promise<[BigNumber]> + lastMintEvent(overrides?: CallOverrides): Promise<[BigNumber]>; - mint(overrides?: Overrides & { from?: string }): Promise + mint( + overrides?: Overrides & { from?: string } + ): Promise; - mintableSupply(overrides?: CallOverrides): Promise<[BigNumber]> + mintableSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - minterReward(overrides?: CallOverrides): Promise<[BigNumber]> + minterReward(overrides?: CallOverrides): Promise<[BigNumber]>; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise<[string]> + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; - setKwenta( - _kwenta: string, - overrides?: Overrides & { from?: string } - ): Promise + setKwenta( + _kwenta: string, + overrides?: Overrides & { from?: string } + ): Promise; - setMinterReward( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setMinterReward( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewards( - _tradingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewards( + _tradingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewardsDiversion( - _tradingRewardsDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewardsDiversion( + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDiversion( - _treasuryDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDiversion( + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingRewards(overrides?: CallOverrides): Promise<[string]> + stakingRewards(overrides?: CallOverrides): Promise<[string]>; - terminalInflationSupply( - totalSupply: BigNumberish, - numOfWeeks: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> + terminalInflationSupply( + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]> + tokenDecaySupplyForWeek( + counter: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - tradingRewards(overrides?: CallOverrides): Promise<[string]> + tradingRewards(overrides?: CallOverrides): Promise<[string]>; - tradingRewardsDiversion(overrides?: CallOverrides): Promise<[BigNumber]> + tradingRewardsDiversion(overrides?: CallOverrides): Promise<[BigNumber]>; - treasuryDAO(overrides?: CallOverrides): Promise<[string]> + treasuryDAO(overrides?: CallOverrides): Promise<[string]>; - treasuryDiversion(overrides?: CallOverrides): Promise<[BigNumber]> + treasuryDiversion(overrides?: CallOverrides): Promise<[BigNumber]>; - weekCounter(overrides?: CallOverrides): Promise<[BigNumber]> + weekCounter(overrides?: CallOverrides): Promise<[BigNumber]>; - weeksSinceLastIssuance(overrides?: CallOverrides): Promise<[BigNumber]> - } + weeksSinceLastIssuance(overrides?: CallOverrides): Promise<[BigNumber]>; + }; - DECAY_RATE(overrides?: CallOverrides): Promise + DECAY_RATE(overrides?: CallOverrides): Promise; - INITIAL_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_SUPPLY(overrides?: CallOverrides): Promise; - INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise; - MAX_MINTER_REWARD(overrides?: CallOverrides): Promise + MAX_MINTER_REWARD(overrides?: CallOverrides): Promise; - MINT_BUFFER(overrides?: CallOverrides): Promise + MINT_BUFFER(overrides?: CallOverrides): Promise; - MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise + MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_END(overrides?: CallOverrides): Promise + SUPPLY_DECAY_END(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_START(overrides?: CallOverrides): Promise + SUPPLY_DECAY_START(overrides?: CallOverrides): Promise; - TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise + TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - inflationStartDate(overrides?: CallOverrides): Promise + inflationStartDate(overrides?: CallOverrides): Promise; - isMintable(overrides?: CallOverrides): Promise + isMintable(overrides?: CallOverrides): Promise; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - lastMintEvent(overrides?: CallOverrides): Promise + lastMintEvent(overrides?: CallOverrides): Promise; - mint(overrides?: Overrides & { from?: string }): Promise + mint(overrides?: Overrides & { from?: string }): Promise; - mintableSupply(overrides?: CallOverrides): Promise + mintableSupply(overrides?: CallOverrides): Promise; - minterReward(overrides?: CallOverrides): Promise + minterReward(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setKwenta( - _kwenta: string, - overrides?: Overrides & { from?: string } - ): Promise + setKwenta( + _kwenta: string, + overrides?: Overrides & { from?: string } + ): Promise; - setMinterReward( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setMinterReward( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewards( - _tradingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewards( + _tradingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewardsDiversion( - _tradingRewardsDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewardsDiversion( + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDiversion( - _treasuryDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDiversion( + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingRewards(overrides?: CallOverrides): Promise + stakingRewards(overrides?: CallOverrides): Promise; - terminalInflationSupply( - totalSupply: BigNumberish, - numOfWeeks: BigNumberish, - overrides?: CallOverrides - ): Promise + terminalInflationSupply( + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, + overrides?: CallOverrides + ): Promise; - tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise + tokenDecaySupplyForWeek( + counter: BigNumberish, + overrides?: CallOverrides + ): Promise; - tradingRewards(overrides?: CallOverrides): Promise + tradingRewards(overrides?: CallOverrides): Promise; - tradingRewardsDiversion(overrides?: CallOverrides): Promise + tradingRewardsDiversion(overrides?: CallOverrides): Promise; - treasuryDAO(overrides?: CallOverrides): Promise + treasuryDAO(overrides?: CallOverrides): Promise; - treasuryDiversion(overrides?: CallOverrides): Promise + treasuryDiversion(overrides?: CallOverrides): Promise; - weekCounter(overrides?: CallOverrides): Promise + weekCounter(overrides?: CallOverrides): Promise; - weeksSinceLastIssuance(overrides?: CallOverrides): Promise + weeksSinceLastIssuance(overrides?: CallOverrides): Promise; - callStatic: { - DECAY_RATE(overrides?: CallOverrides): Promise + callStatic: { + DECAY_RATE(overrides?: CallOverrides): Promise; - INITIAL_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_SUPPLY(overrides?: CallOverrides): Promise; - INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise; - MAX_MINTER_REWARD(overrides?: CallOverrides): Promise + MAX_MINTER_REWARD(overrides?: CallOverrides): Promise; - MINT_BUFFER(overrides?: CallOverrides): Promise + MINT_BUFFER(overrides?: CallOverrides): Promise; - MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise + MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_END(overrides?: CallOverrides): Promise + SUPPLY_DECAY_END(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_START(overrides?: CallOverrides): Promise + SUPPLY_DECAY_START(overrides?: CallOverrides): Promise; - TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise + TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: CallOverrides): Promise + acceptOwnership(overrides?: CallOverrides): Promise; - inflationStartDate(overrides?: CallOverrides): Promise + inflationStartDate(overrides?: CallOverrides): Promise; - isMintable(overrides?: CallOverrides): Promise + isMintable(overrides?: CallOverrides): Promise; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - lastMintEvent(overrides?: CallOverrides): Promise + lastMintEvent(overrides?: CallOverrides): Promise; - mint(overrides?: CallOverrides): Promise + mint(overrides?: CallOverrides): Promise; - mintableSupply(overrides?: CallOverrides): Promise + mintableSupply(overrides?: CallOverrides): Promise; - minterReward(overrides?: CallOverrides): Promise + minterReward(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setKwenta(_kwenta: string, overrides?: CallOverrides): Promise + setKwenta(_kwenta: string, overrides?: CallOverrides): Promise; - setMinterReward(amount: BigNumberish, overrides?: CallOverrides): Promise + setMinterReward( + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - setStakingRewards(_stakingRewards: string, overrides?: CallOverrides): Promise + setStakingRewards( + _stakingRewards: string, + overrides?: CallOverrides + ): Promise; - setTradingRewards(_tradingRewards: string, overrides?: CallOverrides): Promise + setTradingRewards( + _tradingRewards: string, + overrides?: CallOverrides + ): Promise; - setTradingRewardsDiversion( - _tradingRewardsDiversion: BigNumberish, - overrides?: CallOverrides - ): Promise + setTradingRewardsDiversion( + _tradingRewardsDiversion: BigNumberish, + overrides?: CallOverrides + ): Promise; - setTreasuryDAO(_treasuryDAO: string, overrides?: CallOverrides): Promise + setTreasuryDAO( + _treasuryDAO: string, + overrides?: CallOverrides + ): Promise; - setTreasuryDiversion(_treasuryDiversion: BigNumberish, overrides?: CallOverrides): Promise + setTreasuryDiversion( + _treasuryDiversion: BigNumberish, + overrides?: CallOverrides + ): Promise; - stakingRewards(overrides?: CallOverrides): Promise + stakingRewards(overrides?: CallOverrides): Promise; - terminalInflationSupply( - totalSupply: BigNumberish, - numOfWeeks: BigNumberish, - overrides?: CallOverrides - ): Promise + terminalInflationSupply( + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, + overrides?: CallOverrides + ): Promise; - tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise + tokenDecaySupplyForWeek( + counter: BigNumberish, + overrides?: CallOverrides + ): Promise; - tradingRewards(overrides?: CallOverrides): Promise + tradingRewards(overrides?: CallOverrides): Promise; - tradingRewardsDiversion(overrides?: CallOverrides): Promise + tradingRewardsDiversion(overrides?: CallOverrides): Promise; - treasuryDAO(overrides?: CallOverrides): Promise + treasuryDAO(overrides?: CallOverrides): Promise; - treasuryDiversion(overrides?: CallOverrides): Promise + treasuryDiversion(overrides?: CallOverrides): Promise; - weekCounter(overrides?: CallOverrides): Promise + weekCounter(overrides?: CallOverrides): Promise; - weeksSinceLastIssuance(overrides?: CallOverrides): Promise - } + weeksSinceLastIssuance(overrides?: CallOverrides): Promise; + }; - filters: { - 'KwentaUpdated(address)'(newAddress?: null): KwentaUpdatedEventFilter - KwentaUpdated(newAddress?: null): KwentaUpdatedEventFilter + filters: { + "KwentaUpdated(address)"(newAddress?: null): KwentaUpdatedEventFilter; + KwentaUpdated(newAddress?: null): KwentaUpdatedEventFilter; - 'MinterRewardUpdated(uint256)'(newRewardAmount?: null): MinterRewardUpdatedEventFilter - MinterRewardUpdated(newRewardAmount?: null): MinterRewardUpdatedEventFilter + "MinterRewardUpdated(uint256)"( + newRewardAmount?: null + ): MinterRewardUpdatedEventFilter; + MinterRewardUpdated(newRewardAmount?: null): MinterRewardUpdatedEventFilter; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - 'StakingRewardsUpdated(address)'(newAddress?: null): StakingRewardsUpdatedEventFilter - StakingRewardsUpdated(newAddress?: null): StakingRewardsUpdatedEventFilter + "StakingRewardsUpdated(address)"( + newAddress?: null + ): StakingRewardsUpdatedEventFilter; + StakingRewardsUpdated(newAddress?: null): StakingRewardsUpdatedEventFilter; - 'SupplyMinted(uint256,uint256,uint256)'( - supplyMinted?: null, - numberOfWeeksIssued?: null, - lastMintEvent?: null - ): SupplyMintedEventFilter - SupplyMinted( - supplyMinted?: null, - numberOfWeeksIssued?: null, - lastMintEvent?: null - ): SupplyMintedEventFilter + "SupplyMinted(uint256,uint256,uint256)"( + supplyMinted?: null, + numberOfWeeksIssued?: null, + lastMintEvent?: null + ): SupplyMintedEventFilter; + SupplyMinted( + supplyMinted?: null, + numberOfWeeksIssued?: null, + lastMintEvent?: null + ): SupplyMintedEventFilter; - 'TradingRewardsDiversionUpdated(uint256)'( - newPercentage?: null - ): TradingRewardsDiversionUpdatedEventFilter - TradingRewardsDiversionUpdated(newPercentage?: null): TradingRewardsDiversionUpdatedEventFilter + "TradingRewardsDiversionUpdated(uint256)"( + newPercentage?: null + ): TradingRewardsDiversionUpdatedEventFilter; + TradingRewardsDiversionUpdated( + newPercentage?: null + ): TradingRewardsDiversionUpdatedEventFilter; - 'TradingRewardsUpdated(address)'(newAddress?: null): TradingRewardsUpdatedEventFilter - TradingRewardsUpdated(newAddress?: null): TradingRewardsUpdatedEventFilter + "TradingRewardsUpdated(address)"( + newAddress?: null + ): TradingRewardsUpdatedEventFilter; + TradingRewardsUpdated(newAddress?: null): TradingRewardsUpdatedEventFilter; - 'TreasuryDAOSet(address)'(treasuryDAO?: null): TreasuryDAOSetEventFilter - TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter + "TreasuryDAOSet(address)"(treasuryDAO?: null): TreasuryDAOSetEventFilter; + TreasuryDAOSet(treasuryDAO?: null): TreasuryDAOSetEventFilter; - 'TreasuryDiversionUpdated(uint256)'(newPercentage?: null): TreasuryDiversionUpdatedEventFilter - TreasuryDiversionUpdated(newPercentage?: null): TreasuryDiversionUpdatedEventFilter - } + "TreasuryDiversionUpdated(uint256)"( + newPercentage?: null + ): TreasuryDiversionUpdatedEventFilter; + TreasuryDiversionUpdated( + newPercentage?: null + ): TreasuryDiversionUpdatedEventFilter; + }; - estimateGas: { - DECAY_RATE(overrides?: CallOverrides): Promise + estimateGas: { + DECAY_RATE(overrides?: CallOverrides): Promise; - INITIAL_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_SUPPLY(overrides?: CallOverrides): Promise; - INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise; - MAX_MINTER_REWARD(overrides?: CallOverrides): Promise + MAX_MINTER_REWARD(overrides?: CallOverrides): Promise; - MINT_BUFFER(overrides?: CallOverrides): Promise + MINT_BUFFER(overrides?: CallOverrides): Promise; - MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise + MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_END(overrides?: CallOverrides): Promise + SUPPLY_DECAY_END(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_START(overrides?: CallOverrides): Promise + SUPPLY_DECAY_START(overrides?: CallOverrides): Promise; - TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise + TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - inflationStartDate(overrides?: CallOverrides): Promise + inflationStartDate(overrides?: CallOverrides): Promise; - isMintable(overrides?: CallOverrides): Promise + isMintable(overrides?: CallOverrides): Promise; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - lastMintEvent(overrides?: CallOverrides): Promise + lastMintEvent(overrides?: CallOverrides): Promise; - mint(overrides?: Overrides & { from?: string }): Promise + mint(overrides?: Overrides & { from?: string }): Promise; - mintableSupply(overrides?: CallOverrides): Promise + mintableSupply(overrides?: CallOverrides): Promise; - minterReward(overrides?: CallOverrides): Promise + minterReward(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setKwenta(_kwenta: string, overrides?: Overrides & { from?: string }): Promise + setKwenta( + _kwenta: string, + overrides?: Overrides & { from?: string } + ): Promise; - setMinterReward( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setMinterReward( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewards( - _tradingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewards( + _tradingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewardsDiversion( - _tradingRewardsDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewardsDiversion( + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDiversion( - _treasuryDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDiversion( + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingRewards(overrides?: CallOverrides): Promise + stakingRewards(overrides?: CallOverrides): Promise; - terminalInflationSupply( - totalSupply: BigNumberish, - numOfWeeks: BigNumberish, - overrides?: CallOverrides - ): Promise + terminalInflationSupply( + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, + overrides?: CallOverrides + ): Promise; - tokenDecaySupplyForWeek(counter: BigNumberish, overrides?: CallOverrides): Promise + tokenDecaySupplyForWeek( + counter: BigNumberish, + overrides?: CallOverrides + ): Promise; - tradingRewards(overrides?: CallOverrides): Promise + tradingRewards(overrides?: CallOverrides): Promise; - tradingRewardsDiversion(overrides?: CallOverrides): Promise + tradingRewardsDiversion(overrides?: CallOverrides): Promise; - treasuryDAO(overrides?: CallOverrides): Promise + treasuryDAO(overrides?: CallOverrides): Promise; - treasuryDiversion(overrides?: CallOverrides): Promise + treasuryDiversion(overrides?: CallOverrides): Promise; - weekCounter(overrides?: CallOverrides): Promise + weekCounter(overrides?: CallOverrides): Promise; - weeksSinceLastIssuance(overrides?: CallOverrides): Promise - } + weeksSinceLastIssuance(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - DECAY_RATE(overrides?: CallOverrides): Promise + populateTransaction: { + DECAY_RATE(overrides?: CallOverrides): Promise; - INITIAL_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_SUPPLY(overrides?: CallOverrides): Promise; - INITIAL_WEEKLY_SUPPLY(overrides?: CallOverrides): Promise + INITIAL_WEEKLY_SUPPLY( + overrides?: CallOverrides + ): Promise; - MAX_MINTER_REWARD(overrides?: CallOverrides): Promise + MAX_MINTER_REWARD(overrides?: CallOverrides): Promise; - MINT_BUFFER(overrides?: CallOverrides): Promise + MINT_BUFFER(overrides?: CallOverrides): Promise; - MINT_PERIOD_DURATION(overrides?: CallOverrides): Promise + MINT_PERIOD_DURATION( + overrides?: CallOverrides + ): Promise; - SUPPLY_DECAY_END(overrides?: CallOverrides): Promise + SUPPLY_DECAY_END(overrides?: CallOverrides): Promise; - SUPPLY_DECAY_START(overrides?: CallOverrides): Promise + SUPPLY_DECAY_START( + overrides?: CallOverrides + ): Promise; - TERMINAL_SUPPLY_RATE_ANNUAL(overrides?: CallOverrides): Promise + TERMINAL_SUPPLY_RATE_ANNUAL( + overrides?: CallOverrides + ): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - inflationStartDate(overrides?: CallOverrides): Promise + inflationStartDate( + overrides?: CallOverrides + ): Promise; - isMintable(overrides?: CallOverrides): Promise + isMintable(overrides?: CallOverrides): Promise; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - lastMintEvent(overrides?: CallOverrides): Promise + lastMintEvent(overrides?: CallOverrides): Promise; - mint(overrides?: Overrides & { from?: string }): Promise + mint( + overrides?: Overrides & { from?: string } + ): Promise; - mintableSupply(overrides?: CallOverrides): Promise + mintableSupply(overrides?: CallOverrides): Promise; - minterReward(overrides?: CallOverrides): Promise + minterReward(overrides?: CallOverrides): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - setKwenta( - _kwenta: string, - overrides?: Overrides & { from?: string } - ): Promise + setKwenta( + _kwenta: string, + overrides?: Overrides & { from?: string } + ): Promise; - setMinterReward( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setMinterReward( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setStakingRewards( - _stakingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setStakingRewards( + _stakingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewards( - _tradingRewards: string, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewards( + _tradingRewards: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewardsDiversion( - _tradingRewardsDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTradingRewardsDiversion( + _tradingRewardsDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDAO( - _treasuryDAO: string, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDAO( + _treasuryDAO: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTreasuryDiversion( - _treasuryDiversion: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTreasuryDiversion( + _treasuryDiversion: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - stakingRewards(overrides?: CallOverrides): Promise + stakingRewards(overrides?: CallOverrides): Promise; - terminalInflationSupply( - totalSupply: BigNumberish, - numOfWeeks: BigNumberish, - overrides?: CallOverrides - ): Promise + terminalInflationSupply( + totalSupply: BigNumberish, + numOfWeeks: BigNumberish, + overrides?: CallOverrides + ): Promise; - tokenDecaySupplyForWeek( - counter: BigNumberish, - overrides?: CallOverrides - ): Promise + tokenDecaySupplyForWeek( + counter: BigNumberish, + overrides?: CallOverrides + ): Promise; - tradingRewards(overrides?: CallOverrides): Promise + tradingRewards(overrides?: CallOverrides): Promise; - tradingRewardsDiversion(overrides?: CallOverrides): Promise + tradingRewardsDiversion( + overrides?: CallOverrides + ): Promise; - treasuryDAO(overrides?: CallOverrides): Promise + treasuryDAO(overrides?: CallOverrides): Promise; - treasuryDiversion(overrides?: CallOverrides): Promise + treasuryDiversion(overrides?: CallOverrides): Promise; - weekCounter(overrides?: CallOverrides): Promise + weekCounter(overrides?: CallOverrides): Promise; - weeksSinceLastIssuance(overrides?: CallOverrides): Promise - } + weeksSinceLastIssuance( + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Synth.ts b/packages/sdk/src/contracts/types/Synth.ts index e39757c100..6ee560645b 100644 --- a/packages/sdk/src/contracts/types/Synth.ts +++ b/packages/sdk/src/contracts/types/Synth.ts @@ -2,843 +2,1103 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'DECIMALS()': FunctionFragment - 'FEE_ADDRESS()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'allowance(address,address)': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'burn(address,uint256)': FunctionFragment - 'currencyKey()': FunctionFragment - 'decimals()': FunctionFragment - 'isResolverCached()': FunctionFragment - 'issue(address,uint256)': FunctionFragment - 'messageSender()': FunctionFragment - 'name()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'proxy()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'setMessageSender(address)': FunctionFragment - 'setProxy(address)': FunctionFragment - 'setTokenState(address)': FunctionFragment - 'setTotalSupply(uint256)': FunctionFragment - 'symbol()': FunctionFragment - 'tokenState()': FunctionFragment - 'totalSupply()': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'transferAndSettle(address,uint256)': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'transferFromAndSettle(address,address,uint256)': FunctionFragment - 'transferableSynths(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'DECIMALS' - | 'FEE_ADDRESS' - | 'acceptOwnership' - | 'allowance' - | 'approve' - | 'balanceOf' - | 'burn' - | 'currencyKey' - | 'decimals' - | 'isResolverCached' - | 'issue' - | 'messageSender' - | 'name' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'proxy' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'setMessageSender' - | 'setProxy' - | 'setTokenState' - | 'setTotalSupply' - | 'symbol' - | 'tokenState' - | 'totalSupply' - | 'transfer' - | 'transferAndSettle' - | 'transferFrom' - | 'transferFromAndSettle' - | 'transferableSynths' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string - encodeFunctionData(functionFragment: 'FEE_ADDRESS', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string - encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'burn', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'currencyKey', values?: undefined): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'issue', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'proxy', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'setMessageSender', values: [string]): string - encodeFunctionData(functionFragment: 'setProxy', values: [string]): string - encodeFunctionData(functionFragment: 'setTokenState', values: [string]): string - encodeFunctionData(functionFragment: 'setTotalSupply', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'transferAndSettle', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [string, string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'transferFromAndSettle', - values: [string, string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'transferableSynths', values: [string]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'FEE_ADDRESS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burn', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'currencyKey', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issue', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTotalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferAndSettle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFromAndSettle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferableSynths', data: BytesLike): Result - - events: { - 'Approval(address,address,uint256)': EventFragment - 'Burned(address,uint256)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'Issued(address,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ProxyUpdated(address)': EventFragment - 'TokenStateUpdated(address)': EventFragment - 'Transfer(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Burned'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Issued'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "DECIMALS()": FunctionFragment; + "FEE_ADDRESS()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "allowance(address,address)": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burn(address,uint256)": FunctionFragment; + "currencyKey()": FunctionFragment; + "decimals()": FunctionFragment; + "isResolverCached()": FunctionFragment; + "issue(address,uint256)": FunctionFragment; + "messageSender()": FunctionFragment; + "name()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "proxy()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "setMessageSender(address)": FunctionFragment; + "setProxy(address)": FunctionFragment; + "setTokenState(address)": FunctionFragment; + "setTotalSupply(uint256)": FunctionFragment; + "symbol()": FunctionFragment; + "tokenState()": FunctionFragment; + "totalSupply()": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "transferAndSettle(address,uint256)": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "transferFromAndSettle(address,address,uint256)": FunctionFragment; + "transferableSynths(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "DECIMALS" + | "FEE_ADDRESS" + | "acceptOwnership" + | "allowance" + | "approve" + | "balanceOf" + | "burn" + | "currencyKey" + | "decimals" + | "isResolverCached" + | "issue" + | "messageSender" + | "name" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "proxy" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "setMessageSender" + | "setProxy" + | "setTokenState" + | "setTotalSupply" + | "symbol" + | "tokenState" + | "totalSupply" + | "transfer" + | "transferAndSettle" + | "transferFrom" + | "transferFromAndSettle" + | "transferableSynths" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; + encodeFunctionData( + functionFragment: "FEE_ADDRESS", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "burn", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "currencyKey", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issue", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "messageSender", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "proxy", values?: undefined): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setMessageSender", + values: [string] + ): string; + encodeFunctionData(functionFragment: "setProxy", values: [string]): string; + encodeFunctionData( + functionFragment: "setTokenState", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setTotalSupply", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "tokenState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferAndSettle", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFromAndSettle", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferableSynths", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "FEE_ADDRESS", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "currencyKey", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "issue", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "messageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMessageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setTokenState", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTotalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferAndSettle", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFromAndSettle", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferableSynths", + data: BytesLike + ): Result; + + events: { + "Approval(address,address,uint256)": EventFragment; + "Burned(address,uint256)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "Issued(address,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ProxyUpdated(address)": EventFragment; + "TokenStateUpdated(address)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Burned"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Issued"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; } export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface BurnedEventObject { - account: string - value: BigNumber + account: string; + value: BigNumber; } -export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject> +export type BurnedEvent = TypedEvent<[string, BigNumber], BurnedEventObject>; -export type BurnedEventFilter = TypedEventFilter +export type BurnedEventFilter = TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface IssuedEventObject { - account: string - value: BigNumber + account: string; + value: BigNumber; } -export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject> +export type IssuedEvent = TypedEvent<[string, BigNumber], IssuedEventObject>; -export type IssuedEventFilter = TypedEventFilter +export type IssuedEventFilter = TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ProxyUpdatedEventObject { - proxyAddress: string + proxyAddress: string; } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; -export type ProxyUpdatedEventFilter = TypedEventFilter +export type ProxyUpdatedEventFilter = TypedEventFilter; export interface TokenStateUpdatedEventObject { - newTokenState: string + newTokenState: string; } -export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> +export type TokenStateUpdatedEvent = TypedEvent< + [string], + TokenStateUpdatedEventObject +>; -export type TokenStateUpdatedEventFilter = TypedEventFilter +export type TokenStateUpdatedEventFilter = + TypedEventFilter; export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface Synth extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - DECIMALS(overrides?: CallOverrides): Promise<[number]> - - FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - currencyKey(overrides?: CallOverrides): Promise<[string]> - - decimals(overrides?: CallOverrides): Promise<[number]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - messageSender(overrides?: CallOverrides): Promise<[string]> - - name(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - proxy(overrides?: CallOverrides): Promise<[string]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise - - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - symbol(overrides?: CallOverrides): Promise<[string]> - - tokenState(overrides?: CallOverrides): Promise<[string]> - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferableSynths(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - FEE_ADDRESS(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - currencyKey(overrides?: CallOverrides): Promise - - decimals(overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + interface: SynthInterface; - messageSender(overrides?: CallOverrides): Promise + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - name(overrides?: CallOverrides): Promise + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - nominatedOwner(overrides?: CallOverrides): Promise + DECIMALS(overrides?: CallOverrides): Promise<[number]>; - owner(overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise<[string]>; - proxy(overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - resolver(overrides?: CallOverrides): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + currencyKey(overrides?: CallOverrides): Promise<[string]>; - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise + decimals(overrides?: CallOverrides): Promise<[number]>; - setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + messageSender(overrides?: CallOverrides): Promise<[string]>; - symbol(overrides?: CallOverrides): Promise + name(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - tokenState(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise<[string]>; - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + proxy(overrides?: CallOverrides): Promise<[string]>; - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + resolver(overrides?: CallOverrides): Promise<[string]>; - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; - transferableSynths(account: string, overrides?: CallOverrides): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - DECIMALS(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - acceptOwnership(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise<[string]>; - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise<[string]>; - approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; - balanceOf(account: string, overrides?: CallOverrides): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - burn(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - currencyKey(overrides?: CallOverrides): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - decimals(overrides?: CallOverrides): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; - issue(account: string, amount: BigNumberish, overrides?: CallOverrides): Promise + CONTRACT_NAME(overrides?: CallOverrides): Promise; - messageSender(overrides?: CallOverrides): Promise + DECIMALS(overrides?: CallOverrides): Promise; - name(overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - proxy(overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - rebuildCache(overrides?: CallOverrides): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolver(overrides?: CallOverrides): Promise + currencyKey(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + decimals(overrides?: CallOverrides): Promise; - setMessageSender(sender: string, overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - setProxy(_proxy: string, overrides?: CallOverrides): Promise + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTokenState(_tokenState: string, overrides?: CallOverrides): Promise + messageSender(overrides?: CallOverrides): Promise; - setTotalSupply(amount: BigNumberish, overrides?: CallOverrides): Promise + name(overrides?: CallOverrides): Promise; - symbol(overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - tokenState(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - transfer(to: string, value: BigNumberish, overrides?: CallOverrides): Promise + proxy(overrides?: CallOverrides): Promise; - transferAndSettle(to: string, value: BigNumberish, overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise + resolver(overrides?: CallOverrides): Promise; - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - transferableSynths(account: string, overrides?: CallOverrides): Promise - } + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - filters: { - 'Approval(address,address,uint256)'( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter - Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - 'Burned(address,uint256)'(account?: string | null, value?: null): BurnedEventFilter - Burned(account?: string | null, value?: null): BurnedEventFilter + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - 'Issued(address,uint256)'(account?: string | null, value?: null): IssuedEventFilter - Issued(account?: string | null, value?: null): IssuedEventFilter + symbol(overrides?: CallOverrides): Promise; - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter + tokenState(overrides?: CallOverrides): Promise; - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter + totalSupply(overrides?: CallOverrides): Promise; - 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - 'Transfer(address,address,uint256)'( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter - Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter - } + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - DECIMALS(overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + DECIMALS(overrides?: CallOverrides): Promise; - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + acceptOwnership(overrides?: CallOverrides): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - currencyKey(overrides?: CallOverrides): Promise + balanceOf(account: string, overrides?: CallOverrides): Promise; - decimals(overrides?: CallOverrides): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + currencyKey(overrides?: CallOverrides): Promise; - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + decimals(overrides?: CallOverrides): Promise; - messageSender(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - name(overrides?: CallOverrides): Promise + issue( + account: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + messageSender(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + name(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; - proxy(overrides?: CallOverrides): Promise + proxy(overrides?: CallOverrides): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + rebuildCache(overrides?: CallOverrides): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - setMessageSender(sender: string, overrides?: Overrides & { from?: string }): Promise + setMessageSender(sender: string, overrides?: CallOverrides): Promise; - setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise + setProxy(_proxy: string, overrides?: CallOverrides): Promise; - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise + setTokenState( + _tokenState: string, + overrides?: CallOverrides + ): Promise; + + setTotalSupply( + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenState(overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; - symbol(overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; - tokenState(overrides?: CallOverrides): Promise + "Burned(address,uint256)"( + account?: string | null, + value?: null + ): BurnedEventFilter; + Burned(account?: string | null, value?: null): BurnedEventFilter; - totalSupply(overrides?: CallOverrides): Promise + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + "Issued(address,uint256)"( + account?: string | null, + value?: null + ): IssuedEventFilter; + Issued(account?: string | null, value?: null): IssuedEventFilter; - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; + + "TokenStateUpdated(address)"( + newTokenState?: null + ): TokenStateUpdatedEventFilter; + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + FEE_ADDRESS(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + currencyKey(overrides?: CallOverrides): Promise; + + decimals(overrides?: CallOverrides): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; - transferableSynths(account: string, overrides?: CallOverrides): Promise - } + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - DECIMALS(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - FEE_ADDRESS(overrides?: CallOverrides): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - burn( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + tokenState(overrides?: CallOverrides): Promise; - currencyKey(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - decimals(overrides?: CallOverrides): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - issue( - account: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - messageSender(overrides?: CallOverrides): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - name(overrides?: CallOverrides): Promise + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + DECIMALS(overrides?: CallOverrides): Promise; - owner(overrides?: CallOverrides): Promise + FEE_ADDRESS(overrides?: CallOverrides): Promise; - proxy(overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise + burn( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise + currencyKey(overrides?: CallOverrides): Promise; - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise + decimals(overrides?: CallOverrides): Promise; - setTotalSupply( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + isResolverCached(overrides?: CallOverrides): Promise; + + issue( + account: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - symbol(overrides?: CallOverrides): Promise + setTotalSupply( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - tokenState(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - totalSupply(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise; - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - transferAndSettle( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transferAndSettle( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferFromAndSettle( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transferFromAndSettle( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynths(account: string, overrides?: CallOverrides): Promise - } + transferableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthRedeemer.ts b/packages/sdk/src/contracts/types/SynthRedeemer.ts index 82ea2a3c44..ab7d1f6e1f 100644 --- a/packages/sdk/src/contracts/types/SynthRedeemer.ts +++ b/packages/sdk/src/contracts/types/SynthRedeemer.ts @@ -2,375 +2,475 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthRedeemerInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'balanceOf(address,address)': FunctionFragment - 'deprecate(address,uint256)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'redeem(address)': FunctionFragment - 'redeemAll(address[])': FunctionFragment - 'redeemPartial(address,uint256)': FunctionFragment - 'redemptions(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'totalSupply(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'balanceOf' - | 'deprecate' - | 'isResolverCached' - | 'rebuildCache' - | 'redeem' - | 'redeemAll' - | 'redeemPartial' - | 'redemptions' - | 'resolver' - | 'resolverAddressesRequired' - | 'totalSupply' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string, string]): string - encodeFunctionData(functionFragment: 'deprecate', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'redeem', values: [string]): string - encodeFunctionData(functionFragment: 'redeemAll', values: [string[]]): string - encodeFunctionData(functionFragment: 'redeemPartial', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'redemptions', values: [string]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSupply', values: [string]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'deprecate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeemAll', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeemPartial', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redemptions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - - events: { - 'CacheUpdated(bytes32,address)': EventFragment - 'SynthDeprecated(address,uint256,uint256,uint256)': EventFragment - 'SynthRedeemed(address,address,uint256,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthDeprecated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthRedeemed'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "balanceOf(address,address)": FunctionFragment; + "deprecate(address,uint256)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "redeem(address)": FunctionFragment; + "redeemAll(address[])": FunctionFragment; + "redeemPartial(address,uint256)": FunctionFragment; + "redemptions(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "totalSupply(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "balanceOf" + | "deprecate" + | "isResolverCached" + | "rebuildCache" + | "redeem" + | "redeemAll" + | "redeemPartial" + | "redemptions" + | "resolver" + | "resolverAddressesRequired" + | "totalSupply" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "balanceOf", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "deprecate", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "redeem", values: [string]): string; + encodeFunctionData(functionFragment: "redeemAll", values: [string[]]): string; + encodeFunctionData( + functionFragment: "redeemPartial", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "redemptions", values: [string]): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "totalSupply", values: [string]): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "deprecate", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "redeemAll", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "redeemPartial", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "redemptions", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + + events: { + "CacheUpdated(bytes32,address)": EventFragment; + "SynthDeprecated(address,uint256,uint256,uint256)": EventFragment; + "SynthRedeemed(address,address,uint256,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthDeprecated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthRedeemed"): EventFragment; } export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface SynthDeprecatedEventObject { - synth: string - rateToRedeem: BigNumber - totalSynthSupply: BigNumber - supplyInsUSD: BigNumber + synth: string; + rateToRedeem: BigNumber; + totalSynthSupply: BigNumber; + supplyInsUSD: BigNumber; } export type SynthDeprecatedEvent = TypedEvent< - [string, BigNumber, BigNumber, BigNumber], - SynthDeprecatedEventObject -> + [string, BigNumber, BigNumber, BigNumber], + SynthDeprecatedEventObject +>; -export type SynthDeprecatedEventFilter = TypedEventFilter +export type SynthDeprecatedEventFilter = TypedEventFilter; export interface SynthRedeemedEventObject { - synth: string - account: string - amountOfSynth: BigNumber - amountInsUSD: BigNumber + synth: string; + account: string; + amountOfSynth: BigNumber; + amountInsUSD: BigNumber; } export type SynthRedeemedEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - SynthRedeemedEventObject -> + [string, string, BigNumber, BigNumber], + SynthRedeemedEventObject +>; -export type SynthRedeemedEventFilter = TypedEventFilter +export type SynthRedeemedEventFilter = TypedEventFilter; export interface SynthRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthRedeemerInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }> - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - redemptions(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - totalSupply( - synthProxy: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - redemptions(arg0: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: string, overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - redeem(synthProxy: string, overrides?: CallOverrides): Promise - - redeemAll(synthProxies: string[], overrides?: CallOverrides): Promise - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: CallOverrides - ): Promise - - redemptions(arg0: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: string, overrides?: CallOverrides): Promise - } - - filters: { - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'SynthDeprecated(address,uint256,uint256,uint256)'( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter - SynthDeprecated( - synth?: null, - rateToRedeem?: null, - totalSynthSupply?: null, - supplyInsUSD?: null - ): SynthDeprecatedEventFilter - - 'SynthRedeemed(address,address,uint256,uint256)'( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter - SynthRedeemed( - synth?: null, - account?: null, - amountOfSynth?: null, - amountInsUSD?: null - ): SynthRedeemedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf(synthProxy: string, account: string, overrides?: CallOverrides): Promise - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - redeem(synthProxy: string, overrides?: Overrides & { from?: string }): Promise - - redeemAll(synthProxies: string[], overrides?: Overrides & { from?: string }): Promise - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - redemptions(arg0: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: string, overrides?: CallOverrides): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - balanceOf( - synthProxy: string, - account: string, - overrides?: CallOverrides - ): Promise - - deprecate( - synthProxy: string, - rateToRedeem: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - redeem( - synthProxy: string, - overrides?: Overrides & { from?: string } - ): Promise - - redeemAll( - synthProxies: string[], - overrides?: Overrides & { from?: string } - ): Promise - - redeemPartial( - synthProxy: string, - amountOfSynth: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - redemptions(arg0: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - totalSupply(synthProxy: string, overrides?: CallOverrides): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthRedeemerInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { balanceInsUSD: BigNumber }>; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { supplyInsUSD: BigNumber }>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + redeem(synthProxy: string, overrides?: CallOverrides): Promise; + + redeemAll(synthProxies: string[], overrides?: CallOverrides): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: CallOverrides + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "SynthDeprecated(address,uint256,uint256,uint256)"( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter; + SynthDeprecated( + synth?: null, + rateToRedeem?: null, + totalSynthSupply?: null, + supplyInsUSD?: null + ): SynthDeprecatedEventFilter; + + "SynthRedeemed(address,address,uint256,uint256)"( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter; + SynthRedeemed( + synth?: null, + account?: null, + amountOfSynth?: null, + amountInsUSD?: null + ): SynthRedeemedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions(arg0: string, overrides?: CallOverrides): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + balanceOf( + synthProxy: string, + account: string, + overrides?: CallOverrides + ): Promise; + + deprecate( + synthProxy: string, + rateToRedeem: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + redeem( + synthProxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + redeemAll( + synthProxies: string[], + overrides?: Overrides & { from?: string } + ): Promise; + + redeemPartial( + synthProxy: string, + amountOfSynth: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + redemptions( + arg0: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + totalSupply( + synthProxy: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthSwap.ts b/packages/sdk/src/contracts/types/SynthSwap.ts index b7bdac04de..9ee3a22fdb 100644 --- a/packages/sdk/src/contracts/types/SynthSwap.ts +++ b/packages/sdk/src/contracts/types/SynthSwap.ts @@ -2,402 +2,491 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PayableOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthSwapInterface extends utils.Interface { - functions: { - 'acceptOwnership()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'rescueFunds(address,uint256)': FunctionFragment - 'swapInto(bytes32,bytes)': FunctionFragment - 'swapOutOf(bytes32,uint256,bytes)': FunctionFragment - 'uniswapSwapInto(bytes32,address,uint256,bytes)': FunctionFragment - 'uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'acceptOwnership' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'rescueFunds' - | 'swapInto' - | 'swapOutOf' - | 'uniswapSwapInto' - | 'uniswapSwapOutOf' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'rescueFunds', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'swapInto', values: [BytesLike, BytesLike]): string - encodeFunctionData( - functionFragment: 'swapOutOf', - values: [BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'uniswapSwapInto', - values: [BytesLike, string, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'uniswapSwapOutOf', - values: [BytesLike, string, BigNumberish, BigNumberish, BytesLike] - ): string - - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rescueFunds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'swapInto', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'swapOutOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapSwapInto', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'uniswapSwapOutOf', data: BytesLike): Result - - events: { - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'Received(address,uint256)': EventFragment - 'SwapInto(address,uint256)': EventFragment - 'SwapOutOf(address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Received'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SwapInto'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SwapOutOf'): EventFragment + functions: { + "acceptOwnership()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "rescueFunds(address,uint256)": FunctionFragment; + "swapInto(bytes32,bytes)": FunctionFragment; + "swapOutOf(bytes32,uint256,bytes)": FunctionFragment; + "uniswapSwapInto(bytes32,address,uint256,bytes)": FunctionFragment; + "uniswapSwapOutOf(bytes32,address,uint256,uint256,bytes)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "rescueFunds" + | "swapInto" + | "swapOutOf" + | "uniswapSwapInto" + | "uniswapSwapOutOf" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "rescueFunds", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "swapInto", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "swapOutOf", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "uniswapSwapInto", + values: [BytesLike, string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "uniswapSwapOutOf", + values: [BytesLike, string, BigNumberish, BigNumberish, BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rescueFunds", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "swapInto", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "swapOutOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "uniswapSwapInto", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "uniswapSwapOutOf", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Received(address,uint256)": EventFragment; + "SwapInto(address,uint256)": EventFragment; + "SwapOutOf(address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Received"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SwapInto"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SwapOutOf"): EventFragment; } export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ReceivedEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type ReceivedEvent = TypedEvent<[string, BigNumber], ReceivedEventObject> +export type ReceivedEvent = TypedEvent< + [string, BigNumber], + ReceivedEventObject +>; -export type ReceivedEventFilter = TypedEventFilter +export type ReceivedEventFilter = TypedEventFilter; export interface SwapIntoEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type SwapIntoEvent = TypedEvent<[string, BigNumber], SwapIntoEventObject> +export type SwapIntoEvent = TypedEvent< + [string, BigNumber], + SwapIntoEventObject +>; -export type SwapIntoEventFilter = TypedEventFilter +export type SwapIntoEventFilter = TypedEventFilter; export interface SwapOutOfEventObject { - from: string - amountReceived: BigNumber + from: string; + amountReceived: BigNumber; } -export type SwapOutOfEvent = TypedEvent<[string, BigNumber], SwapOutOfEventObject> +export type SwapOutOfEvent = TypedEvent< + [string, BigNumber], + SwapOutOfEventObject +>; -export type SwapOutOfEventFilter = TypedEventFilter +export type SwapOutOfEventFilter = TypedEventFilter; export interface SynthSwap extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthSwapInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - } - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - callStatic: { - acceptOwnership(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds(token: string, amount: BigNumberish, overrides?: CallOverrides): Promise - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: CallOverrides - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: CallOverrides - ): Promise - } - - filters: { - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'Received(address,uint256)'(from?: null, amountReceived?: null): ReceivedEventFilter - Received(from?: null, amountReceived?: null): ReceivedEventFilter - - 'SwapInto(address,uint256)'(from?: string | null, amountReceived?: null): SwapIntoEventFilter - SwapInto(from?: string | null, amountReceived?: null): SwapIntoEventFilter - - 'SwapOutOf(address,uint256)'(from?: string | null, amountReceived?: null): SwapOutOfEventFilter - SwapOutOf(from?: string | null, amountReceived?: null): SwapOutOfEventFilter - } - - estimateGas: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - } - - populateTransaction: { - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - rescueFunds( - token: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - swapInto( - _destSynthCurrencyKey: BytesLike, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - swapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _sourceAmount: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - uniswapSwapInto( - _destSynthCurrencyKey: BytesLike, - _sourceTokenAddress: string, - _amount: BigNumberish, - _data: BytesLike, - overrides?: PayableOverrides & { from?: string } - ): Promise - - uniswapSwapOutOf( - _sourceSynthCurrencyKey: BytesLike, - _destTokenAddress: string, - _amountOfSynth: BigNumberish, - _expectedAmountOfSUSDFromSwap: BigNumberish, - _data: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - } + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthSwapInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "Received(address,uint256)"( + from?: null, + amountReceived?: null + ): ReceivedEventFilter; + Received(from?: null, amountReceived?: null): ReceivedEventFilter; + + "SwapInto(address,uint256)"( + from?: string | null, + amountReceived?: null + ): SwapIntoEventFilter; + SwapInto(from?: string | null, amountReceived?: null): SwapIntoEventFilter; + + "SwapOutOf(address,uint256)"( + from?: string | null, + amountReceived?: null + ): SwapOutOfEventFilter; + SwapOutOf( + from?: string | null, + amountReceived?: null + ): SwapOutOfEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + rescueFunds( + token: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + swapInto( + _destSynthCurrencyKey: BytesLike, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + swapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _sourceAmount: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + uniswapSwapInto( + _destSynthCurrencyKey: BytesLike, + _sourceTokenAddress: string, + _amount: BigNumberish, + _data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + uniswapSwapOutOf( + _sourceSynthCurrencyKey: BytesLike, + _destTokenAddress: string, + _amountOfSynth: BigNumberish, + _expectedAmountOfSUSDFromSwap: BigNumberish, + _data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SynthUtil.ts b/packages/sdk/src/contracts/types/SynthUtil.ts index 87ebd8b09a..d6d203a2d6 100644 --- a/packages/sdk/src/contracts/types/SynthUtil.ts +++ b/packages/sdk/src/contracts/types/SynthUtil.ts @@ -2,161 +2,214 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthUtilInterface extends utils.Interface { - functions: { - 'addressResolverProxy()': FunctionFragment - 'synthsBalances(address)': FunctionFragment - 'synthsRates()': FunctionFragment - 'synthsTotalSupplies()': FunctionFragment - 'totalSynthsInKey(address,bytes32)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'addressResolverProxy' - | 'synthsBalances' - | 'synthsRates' - | 'synthsTotalSupplies' - | 'totalSynthsInKey' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'addressResolverProxy', values?: undefined): string - encodeFunctionData(functionFragment: 'synthsBalances', values: [string]): string - encodeFunctionData(functionFragment: 'synthsRates', values?: undefined): string - encodeFunctionData(functionFragment: 'synthsTotalSupplies', values?: undefined): string - encodeFunctionData(functionFragment: 'totalSynthsInKey', values: [string, BytesLike]): string - - decodeFunctionResult(functionFragment: 'addressResolverProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsBalances', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsRates', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsTotalSupplies', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalSynthsInKey', data: BytesLike): Result - - events: {} + functions: { + "addressResolverProxy()": FunctionFragment; + "synthsBalances(address)": FunctionFragment; + "synthsRates()": FunctionFragment; + "synthsTotalSupplies()": FunctionFragment; + "totalSynthsInKey(address,bytes32)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "addressResolverProxy" + | "synthsBalances" + | "synthsRates" + | "synthsTotalSupplies" + | "totalSynthsInKey" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addressResolverProxy", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthsBalances", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "synthsRates", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "synthsTotalSupplies", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalSynthsInKey", + values: [string, BytesLike] + ): string; + + decodeFunctionResult( + functionFragment: "addressResolverProxy", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsBalances", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsRates", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthsTotalSupplies", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSynthsInKey", + data: BytesLike + ): Result; + + events: {}; } export interface SynthUtil extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthUtilInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - addressResolverProxy(overrides?: CallOverrides): Promise<[string]> - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber] & { total: BigNumber }> - } - - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - callStatic: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances( - account: string, - overrides?: CallOverrides - ): Promise<[string[], BigNumber[], BigNumber[]]> - - synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]> - - synthsTotalSupplies(overrides?: CallOverrides): Promise<[string[], BigNumber[], BigNumber[]]> - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - } - - filters: {} - - estimateGas: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances(account: string, overrides?: CallOverrides): Promise - - synthsRates(overrides?: CallOverrides): Promise - - synthsTotalSupplies(overrides?: CallOverrides): Promise - - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - } - - populateTransaction: { - addressResolverProxy(overrides?: CallOverrides): Promise - - synthsBalances(account: string, overrides?: CallOverrides): Promise - - synthsRates(overrides?: CallOverrides): Promise - - synthsTotalSupplies(overrides?: CallOverrides): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthUtilInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + addressResolverProxy(overrides?: CallOverrides): Promise<[string]>; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber] & { total: BigNumber }>; + }; + + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + callStatic: { + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + synthsRates(overrides?: CallOverrides): Promise<[string[], BigNumber[]]>; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise<[string[], BigNumber[], BigNumber[]]>; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + addressResolverProxy(overrides?: CallOverrides): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise; + + synthsRates(overrides?: CallOverrides): Promise; + + synthsTotalSupplies(overrides?: CallOverrides): Promise; + + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + addressResolverProxy( + overrides?: CallOverrides + ): Promise; + + synthsBalances( + account: string, + overrides?: CallOverrides + ): Promise; + + synthsRates(overrides?: CallOverrides): Promise; + + synthsTotalSupplies( + overrides?: CallOverrides + ): Promise; - totalSynthsInKey( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - } + totalSynthsInKey( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/Synthetix.ts b/packages/sdk/src/contracts/types/Synthetix.ts index ff495b5ae9..72faf56063 100644 --- a/packages/sdk/src/contracts/types/Synthetix.ts +++ b/packages/sdk/src/contracts/types/Synthetix.ts @@ -2,2199 +2,2774 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SynthetixInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'DECIMALS()': FunctionFragment - 'TOKEN_NAME()': FunctionFragment - 'TOKEN_SYMBOL()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'allowance(address,address)': FunctionFragment - 'anySynthOrSNXRateIsInvalid()': FunctionFragment - 'approve(address,uint256)': FunctionFragment - 'availableCurrencyKeys()': FunctionFragment - 'availableSynthCount()': FunctionFragment - 'availableSynths(uint256)': FunctionFragment - 'balanceOf(address)': FunctionFragment - 'burnSecondary(address,uint256)': FunctionFragment - 'burnSynths(uint256)': FunctionFragment - 'burnSynthsOnBehalf(address,uint256)': FunctionFragment - 'burnSynthsToTarget()': FunctionFragment - 'burnSynthsToTargetOnBehalf(address)': FunctionFragment - 'collateral(address)': FunctionFragment - 'collateralisationRatio(address)': FunctionFragment - 'debtBalanceOf(address,bytes32)': FunctionFragment - 'decimals()': FunctionFragment - 'emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment - 'emitExchangeRebate(address,bytes32,uint256)': FunctionFragment - 'emitExchangeReclaim(address,bytes32,uint256)': FunctionFragment - 'emitExchangeTracking(bytes32,bytes32,uint256,uint256)': FunctionFragment - 'emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': FunctionFragment - 'exchange(bytes32,uint256,bytes32)': FunctionFragment - 'exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)': FunctionFragment - 'exchangeOnBehalf(address,bytes32,uint256,bytes32)': FunctionFragment - 'exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)': FunctionFragment - 'exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)': FunctionFragment - 'getFirstNonZeroEscrowIndex(address)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'isWaitingPeriod(bytes32)': FunctionFragment - 'issueMaxSynths()': FunctionFragment - 'issueMaxSynthsOnBehalf(address)': FunctionFragment - 'issueSynths(uint256)': FunctionFragment - 'issueSynthsOnBehalf(address,uint256)': FunctionFragment - 'liquidateDelinquentAccount(address)': FunctionFragment - 'liquidateDelinquentAccountEscrowIndex(address,uint256)': FunctionFragment - 'liquidateSelf()': FunctionFragment - 'maxIssuableSynths(address)': FunctionFragment - 'messageSender()': FunctionFragment - 'migrateEscrowBalanceToRewardEscrowV2()': FunctionFragment - 'migrateEscrowContractBalance()': FunctionFragment - 'mint()': FunctionFragment - 'mintSecondary(address,uint256)': FunctionFragment - 'mintSecondaryRewards(uint256)': FunctionFragment - 'name()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'proxy()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'remainingIssuableSynths(address)': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'sUSD()': FunctionFragment - 'setMessageSender(address)': FunctionFragment - 'setProxy(address)': FunctionFragment - 'setTokenState(address)': FunctionFragment - 'settle(bytes32)': FunctionFragment - 'symbol()': FunctionFragment - 'synths(bytes32)': FunctionFragment - 'synthsByAddress(address)': FunctionFragment - 'tokenState()': FunctionFragment - 'totalIssuedSynths(bytes32)': FunctionFragment - 'totalIssuedSynthsExcludeOtherCollateral(bytes32)': FunctionFragment - 'totalSupply()': FunctionFragment - 'transfer(address,uint256)': FunctionFragment - 'transferFrom(address,address,uint256)': FunctionFragment - 'transferableSynthetix(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'DECIMALS' - | 'TOKEN_NAME' - | 'TOKEN_SYMBOL' - | 'acceptOwnership' - | 'allowance' - | 'anySynthOrSNXRateIsInvalid' - | 'approve' - | 'availableCurrencyKeys' - | 'availableSynthCount' - | 'availableSynths' - | 'balanceOf' - | 'burnSecondary' - | 'burnSynths' - | 'burnSynthsOnBehalf' - | 'burnSynthsToTarget' - | 'burnSynthsToTargetOnBehalf' - | 'collateral' - | 'collateralisationRatio' - | 'debtBalanceOf' - | 'decimals' - | 'emitAtomicSynthExchange' - | 'emitExchangeRebate' - | 'emitExchangeReclaim' - | 'emitExchangeTracking' - | 'emitSynthExchange' - | 'exchange' - | 'exchangeAtomically' - | 'exchangeOnBehalf' - | 'exchangeOnBehalfWithTracking' - | 'exchangeWithTracking' - | 'exchangeWithTrackingForInitiator' - | 'exchangeWithVirtual' - | 'getFirstNonZeroEscrowIndex' - | 'isResolverCached' - | 'isWaitingPeriod' - | 'issueMaxSynths' - | 'issueMaxSynthsOnBehalf' - | 'issueSynths' - | 'issueSynthsOnBehalf' - | 'liquidateDelinquentAccount' - | 'liquidateDelinquentAccountEscrowIndex' - | 'liquidateSelf' - | 'maxIssuableSynths' - | 'messageSender' - | 'migrateEscrowBalanceToRewardEscrowV2' - | 'migrateEscrowContractBalance' - | 'mint' - | 'mintSecondary' - | 'mintSecondaryRewards' - | 'name' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'proxy' - | 'rebuildCache' - | 'remainingIssuableSynths' - | 'resolver' - | 'resolverAddressesRequired' - | 'sUSD' - | 'setMessageSender' - | 'setProxy' - | 'setTokenState' - | 'settle' - | 'symbol' - | 'synths' - | 'synthsByAddress' - | 'tokenState' - | 'totalIssuedSynths' - | 'totalIssuedSynthsExcludeOtherCollateral' - | 'totalSupply' - | 'transfer' - | 'transferFrom' - | 'transferableSynthetix' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'DECIMALS', values?: undefined): string - encodeFunctionData(functionFragment: 'TOKEN_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'TOKEN_SYMBOL', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'allowance', values: [string, string]): string - encodeFunctionData(functionFragment: 'anySynthOrSNXRateIsInvalid', values?: undefined): string - encodeFunctionData(functionFragment: 'approve', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'availableCurrencyKeys', values?: undefined): string - encodeFunctionData(functionFragment: 'availableSynthCount', values?: undefined): string - encodeFunctionData(functionFragment: 'availableSynths', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'balanceOf', values: [string]): string - encodeFunctionData(functionFragment: 'burnSecondary', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'burnSynths', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'burnSynthsOnBehalf', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'burnSynthsToTarget', values?: undefined): string - encodeFunctionData(functionFragment: 'burnSynthsToTargetOnBehalf', values: [string]): string - encodeFunctionData(functionFragment: 'collateral', values: [string]): string - encodeFunctionData(functionFragment: 'collateralisationRatio', values: [string]): string - encodeFunctionData(functionFragment: 'debtBalanceOf', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'decimals', values?: undefined): string - encodeFunctionData( - functionFragment: 'emitAtomicSynthExchange', - values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeRebate', - values: [string, BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeReclaim', - values: [string, BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'emitExchangeTracking', - values: [BytesLike, BytesLike, BigNumberish, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'emitSynthExchange', - values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] - ): string - encodeFunctionData( - functionFragment: 'exchange', - values: [BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeAtomically', - values: [BytesLike, BigNumberish, BytesLike, BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'exchangeOnBehalf', - values: [string, BytesLike, BigNumberish, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeOnBehalfWithTracking', - values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithTracking', - values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithTrackingForInitiator', - values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] - ): string - encodeFunctionData( - functionFragment: 'exchangeWithVirtual', - values: [BytesLike, BigNumberish, BytesLike, BytesLike] - ): string - encodeFunctionData(functionFragment: 'getFirstNonZeroEscrowIndex', values: [string]): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'isWaitingPeriod', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'issueMaxSynths', values?: undefined): string - encodeFunctionData(functionFragment: 'issueMaxSynthsOnBehalf', values: [string]): string - encodeFunctionData(functionFragment: 'issueSynths', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'issueSynthsOnBehalf', - values: [string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'liquidateDelinquentAccount', values: [string]): string - encodeFunctionData( - functionFragment: 'liquidateDelinquentAccountEscrowIndex', - values: [string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'liquidateSelf', values?: undefined): string - encodeFunctionData(functionFragment: 'maxIssuableSynths', values: [string]): string - encodeFunctionData(functionFragment: 'messageSender', values?: undefined): string - encodeFunctionData( - functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', - values?: undefined - ): string - encodeFunctionData(functionFragment: 'migrateEscrowContractBalance', values?: undefined): string - encodeFunctionData(functionFragment: 'mint', values?: undefined): string - encodeFunctionData(functionFragment: 'mintSecondary', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'mintSecondaryRewards', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'name', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'proxy', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'remainingIssuableSynths', values: [string]): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'sUSD', values?: undefined): string - encodeFunctionData(functionFragment: 'setMessageSender', values: [string]): string - encodeFunctionData(functionFragment: 'setProxy', values: [string]): string - encodeFunctionData(functionFragment: 'setTokenState', values: [string]): string - encodeFunctionData(functionFragment: 'settle', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'symbol', values?: undefined): string - encodeFunctionData(functionFragment: 'synths', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'synthsByAddress', values: [string]): string - encodeFunctionData(functionFragment: 'tokenState', values?: undefined): string - encodeFunctionData(functionFragment: 'totalIssuedSynths', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', - values: [BytesLike] - ): string - encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string - encodeFunctionData(functionFragment: 'transfer', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'transferFrom', - values: [string, string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'transferableSynthetix', values: [string]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'DECIMALS', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'TOKEN_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'TOKEN_SYMBOL', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'anySynthOrSNXRateIsInvalid', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableCurrencyKeys', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableSynthCount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'availableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSecondary', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsToTarget', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'burnSynthsToTargetOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'collateral', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'collateralisationRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'debtBalanceOf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitAtomicSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeRebate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeReclaim', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitExchangeTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'emitSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeAtomically', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeOnBehalfWithTracking', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeWithTracking', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'exchangeWithTrackingForInitiator', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'exchangeWithVirtual', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFirstNonZeroEscrowIndex', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isWaitingPeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueMaxSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueMaxSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issueSynthsOnBehalf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidateDelinquentAccount', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'liquidateDelinquentAccountEscrowIndex', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'liquidateSelf', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'maxIssuableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'messageSender', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'migrateEscrowBalanceToRewardEscrowV2', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'migrateEscrowContractBalance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mintSecondary', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'mintSecondaryRewards', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'proxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'remainingIssuableSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'sUSD', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMessageSender', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setProxy', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'settle', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthsByAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tokenState', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'totalIssuedSynths', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'totalIssuedSynthsExcludeOtherCollateral', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferableSynthetix', data: BytesLike): Result - - events: { - 'AccountLiquidated(address,uint256,uint256,address)': EventFragment - 'Approval(address,address,uint256)': EventFragment - 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'ExchangeRebate(address,bytes32,uint256)': EventFragment - 'ExchangeReclaim(address,bytes32,uint256)': EventFragment - 'ExchangeTracking(bytes32,bytes32,uint256,uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'ProxyUpdated(address)': EventFragment - 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)': EventFragment - 'TokenStateUpdated(address)': EventFragment - 'Transfer(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccountLiquidated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Approval'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicSynthExchange'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeRebate'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeReclaim'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeTracking'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ProxyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchange'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TokenStateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Transfer'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "DECIMALS()": FunctionFragment; + "TOKEN_NAME()": FunctionFragment; + "TOKEN_SYMBOL()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "allowance(address,address)": FunctionFragment; + "anySynthOrSNXRateIsInvalid()": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "availableCurrencyKeys()": FunctionFragment; + "availableSynthCount()": FunctionFragment; + "availableSynths(uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burnSecondary(address,uint256)": FunctionFragment; + "burnSynths(uint256)": FunctionFragment; + "burnSynthsOnBehalf(address,uint256)": FunctionFragment; + "burnSynthsToTarget()": FunctionFragment; + "burnSynthsToTargetOnBehalf(address)": FunctionFragment; + "collateral(address)": FunctionFragment; + "collateralisationRatio(address)": FunctionFragment; + "debtBalanceOf(address,bytes32)": FunctionFragment; + "decimals()": FunctionFragment; + "emitAtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; + "emitExchangeRebate(address,bytes32,uint256)": FunctionFragment; + "emitExchangeReclaim(address,bytes32,uint256)": FunctionFragment; + "emitExchangeTracking(bytes32,bytes32,uint256,uint256)": FunctionFragment; + "emitSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": FunctionFragment; + "exchange(bytes32,uint256,bytes32)": FunctionFragment; + "exchangeAtomically(bytes32,uint256,bytes32,bytes32,uint256)": FunctionFragment; + "exchangeOnBehalf(address,bytes32,uint256,bytes32)": FunctionFragment; + "exchangeOnBehalfWithTracking(address,bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithTracking(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithTrackingForInitiator(bytes32,uint256,bytes32,address,bytes32)": FunctionFragment; + "exchangeWithVirtual(bytes32,uint256,bytes32,bytes32)": FunctionFragment; + "getFirstNonZeroEscrowIndex(address)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "isWaitingPeriod(bytes32)": FunctionFragment; + "issueMaxSynths()": FunctionFragment; + "issueMaxSynthsOnBehalf(address)": FunctionFragment; + "issueSynths(uint256)": FunctionFragment; + "issueSynthsOnBehalf(address,uint256)": FunctionFragment; + "liquidateDelinquentAccount(address)": FunctionFragment; + "liquidateDelinquentAccountEscrowIndex(address,uint256)": FunctionFragment; + "liquidateSelf()": FunctionFragment; + "maxIssuableSynths(address)": FunctionFragment; + "messageSender()": FunctionFragment; + "migrateEscrowBalanceToRewardEscrowV2()": FunctionFragment; + "migrateEscrowContractBalance()": FunctionFragment; + "mint()": FunctionFragment; + "mintSecondary(address,uint256)": FunctionFragment; + "mintSecondaryRewards(uint256)": FunctionFragment; + "name()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "proxy()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "remainingIssuableSynths(address)": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "sUSD()": FunctionFragment; + "setMessageSender(address)": FunctionFragment; + "setProxy(address)": FunctionFragment; + "setTokenState(address)": FunctionFragment; + "settle(bytes32)": FunctionFragment; + "symbol()": FunctionFragment; + "synths(bytes32)": FunctionFragment; + "synthsByAddress(address)": FunctionFragment; + "tokenState()": FunctionFragment; + "totalIssuedSynths(bytes32)": FunctionFragment; + "totalIssuedSynthsExcludeOtherCollateral(bytes32)": FunctionFragment; + "totalSupply()": FunctionFragment; + "transfer(address,uint256)": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + "transferableSynthetix(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "DECIMALS" + | "TOKEN_NAME" + | "TOKEN_SYMBOL" + | "acceptOwnership" + | "allowance" + | "anySynthOrSNXRateIsInvalid" + | "approve" + | "availableCurrencyKeys" + | "availableSynthCount" + | "availableSynths" + | "balanceOf" + | "burnSecondary" + | "burnSynths" + | "burnSynthsOnBehalf" + | "burnSynthsToTarget" + | "burnSynthsToTargetOnBehalf" + | "collateral" + | "collateralisationRatio" + | "debtBalanceOf" + | "decimals" + | "emitAtomicSynthExchange" + | "emitExchangeRebate" + | "emitExchangeReclaim" + | "emitExchangeTracking" + | "emitSynthExchange" + | "exchange" + | "exchangeAtomically" + | "exchangeOnBehalf" + | "exchangeOnBehalfWithTracking" + | "exchangeWithTracking" + | "exchangeWithTrackingForInitiator" + | "exchangeWithVirtual" + | "getFirstNonZeroEscrowIndex" + | "isResolverCached" + | "isWaitingPeriod" + | "issueMaxSynths" + | "issueMaxSynthsOnBehalf" + | "issueSynths" + | "issueSynthsOnBehalf" + | "liquidateDelinquentAccount" + | "liquidateDelinquentAccountEscrowIndex" + | "liquidateSelf" + | "maxIssuableSynths" + | "messageSender" + | "migrateEscrowBalanceToRewardEscrowV2" + | "migrateEscrowContractBalance" + | "mint" + | "mintSecondary" + | "mintSecondaryRewards" + | "name" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "proxy" + | "rebuildCache" + | "remainingIssuableSynths" + | "resolver" + | "resolverAddressesRequired" + | "sUSD" + | "setMessageSender" + | "setProxy" + | "setTokenState" + | "settle" + | "symbol" + | "synths" + | "synthsByAddress" + | "tokenState" + | "totalIssuedSynths" + | "totalIssuedSynthsExcludeOtherCollateral" + | "totalSupply" + | "transfer" + | "transferFrom" + | "transferableSynthetix" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string; + encodeFunctionData( + functionFragment: "TOKEN_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "TOKEN_SYMBOL", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "allowance", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "anySynthOrSNXRateIsInvalid", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "availableCurrencyKeys", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "availableSynthCount", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "availableSynths", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData( + functionFragment: "burnSecondary", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynths", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynthsOnBehalf", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "burnSynthsToTarget", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "burnSynthsToTargetOnBehalf", + values: [string] + ): string; + encodeFunctionData(functionFragment: "collateral", values: [string]): string; + encodeFunctionData( + functionFragment: "collateralisationRatio", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "debtBalanceOf", + values: [string, BytesLike] + ): string; + encodeFunctionData(functionFragment: "decimals", values?: undefined): string; + encodeFunctionData( + functionFragment: "emitAtomicSynthExchange", + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeRebate", + values: [string, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeReclaim", + values: [string, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitExchangeTracking", + values: [BytesLike, BytesLike, BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "emitSynthExchange", + values: [string, BytesLike, BigNumberish, BytesLike, BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "exchange", + values: [BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeAtomically", + values: [BytesLike, BigNumberish, BytesLike, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "exchangeOnBehalf", + values: [string, BytesLike, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeOnBehalfWithTracking", + values: [string, BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithTracking", + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithTrackingForInitiator", + values: [BytesLike, BigNumberish, BytesLike, string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeWithVirtual", + values: [BytesLike, BigNumberish, BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getFirstNonZeroEscrowIndex", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "isWaitingPeriod", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "issueMaxSynths", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issueMaxSynthsOnBehalf", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "issueSynths", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "issueSynthsOnBehalf", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateDelinquentAccount", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "liquidateDelinquentAccountEscrowIndex", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "liquidateSelf", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "maxIssuableSynths", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "messageSender", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "migrateEscrowBalanceToRewardEscrowV2", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "migrateEscrowContractBalance", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "mint", values?: undefined): string; + encodeFunctionData( + functionFragment: "mintSecondary", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "mintSecondaryRewards", + values: [BigNumberish] + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData(functionFragment: "proxy", values?: undefined): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "remainingIssuableSynths", + values: [string] + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "sUSD", values?: undefined): string; + encodeFunctionData( + functionFragment: "setMessageSender", + values: [string] + ): string; + encodeFunctionData(functionFragment: "setProxy", values: [string]): string; + encodeFunctionData( + functionFragment: "setTokenState", + values: [string] + ): string; + encodeFunctionData(functionFragment: "settle", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData(functionFragment: "synths", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "synthsByAddress", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "tokenState", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "totalIssuedSynths", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "totalIssuedSynthsExcludeOtherCollateral", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transfer", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "transferableSynthetix", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "TOKEN_NAME", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "TOKEN_SYMBOL", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "anySynthOrSNXRateIsInvalid", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "availableCurrencyKeys", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "availableSynthCount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "availableSynths", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "burnSecondary", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "burnSynths", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "burnSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "burnSynthsToTarget", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "burnSynthsToTargetOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "collateral", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "collateralisationRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "debtBalanceOf", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "emitAtomicSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeRebate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeReclaim", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitExchangeTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "emitSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "exchange", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "exchangeAtomically", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeOnBehalfWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithTracking", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithTrackingForInitiator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeWithVirtual", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFirstNonZeroEscrowIndex", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isWaitingPeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueMaxSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueMaxSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issueSynthsOnBehalf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateDelinquentAccount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateDelinquentAccountEscrowIndex", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateSelf", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "maxIssuableSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "messageSender", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "migrateEscrowBalanceToRewardEscrowV2", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "migrateEscrowContractBalance", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "mintSecondary", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "mintSecondaryRewards", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "proxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "remainingIssuableSynths", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "sUSD", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setMessageSender", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "setProxy", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "setTokenState", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "settle", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "synths", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "synthsByAddress", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "tokenState", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalIssuedSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalIssuedSynthsExcludeOtherCollateral", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferableSynthetix", + data: BytesLike + ): Result; + + events: { + "AccountLiquidated(address,uint256,uint256,address)": EventFragment; + "Approval(address,address,uint256)": EventFragment; + "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "ExchangeRebate(address,bytes32,uint256)": EventFragment; + "ExchangeReclaim(address,bytes32,uint256)": EventFragment; + "ExchangeTracking(bytes32,bytes32,uint256,uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "ProxyUpdated(address)": EventFragment; + "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)": EventFragment; + "TokenStateUpdated(address)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccountLiquidated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "AtomicSynthExchange"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeRebate"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeReclaim"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeTracking"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ProxyUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchange"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TokenStateUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; } export interface AccountLiquidatedEventObject { - account: string - snxRedeemed: BigNumber - amountLiquidated: BigNumber - liquidator: string + account: string; + snxRedeemed: BigNumber; + amountLiquidated: BigNumber; + liquidator: string; } export type AccountLiquidatedEvent = TypedEvent< - [string, BigNumber, BigNumber, string], - AccountLiquidatedEventObject -> + [string, BigNumber, BigNumber, string], + AccountLiquidatedEventObject +>; -export type AccountLiquidatedEventFilter = TypedEventFilter +export type AccountLiquidatedEventFilter = + TypedEventFilter; export interface ApprovalEventObject { - owner: string - spender: string - value: BigNumber + owner: string; + spender: string; + value: BigNumber; } -export type ApprovalEvent = TypedEvent<[string, string, BigNumber], ApprovalEventObject> +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; -export type ApprovalEventFilter = TypedEventFilter +export type ApprovalEventFilter = TypedEventFilter; export interface AtomicSynthExchangeEventObject { - account: string - fromCurrencyKey: string - fromAmount: BigNumber - toCurrencyKey: string - toAmount: BigNumber - toAddress: string + account: string; + fromCurrencyKey: string; + fromAmount: BigNumber; + toCurrencyKey: string; + toAmount: BigNumber; + toAddress: string; } export type AtomicSynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - AtomicSynthExchangeEventObject -> + [string, string, BigNumber, string, BigNumber, string], + AtomicSynthExchangeEventObject +>; -export type AtomicSynthExchangeEventFilter = TypedEventFilter +export type AtomicSynthExchangeEventFilter = + TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface ExchangeRebateEventObject { - account: string - currencyKey: string - amount: BigNumber + account: string; + currencyKey: string; + amount: BigNumber; } -export type ExchangeRebateEvent = TypedEvent<[string, string, BigNumber], ExchangeRebateEventObject> +export type ExchangeRebateEvent = TypedEvent< + [string, string, BigNumber], + ExchangeRebateEventObject +>; -export type ExchangeRebateEventFilter = TypedEventFilter +export type ExchangeRebateEventFilter = TypedEventFilter; export interface ExchangeReclaimEventObject { - account: string - currencyKey: string - amount: BigNumber + account: string; + currencyKey: string; + amount: BigNumber; } export type ExchangeReclaimEvent = TypedEvent< - [string, string, BigNumber], - ExchangeReclaimEventObject -> + [string, string, BigNumber], + ExchangeReclaimEventObject +>; -export type ExchangeReclaimEventFilter = TypedEventFilter +export type ExchangeReclaimEventFilter = TypedEventFilter; export interface ExchangeTrackingEventObject { - trackingCode: string - toCurrencyKey: string - toAmount: BigNumber - fee: BigNumber + trackingCode: string; + toCurrencyKey: string; + toAmount: BigNumber; + fee: BigNumber; } export type ExchangeTrackingEvent = TypedEvent< - [string, string, BigNumber, BigNumber], - ExchangeTrackingEventObject -> + [string, string, BigNumber, BigNumber], + ExchangeTrackingEventObject +>; -export type ExchangeTrackingEventFilter = TypedEventFilter +export type ExchangeTrackingEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface ProxyUpdatedEventObject { - proxyAddress: string + proxyAddress: string; } -export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject> +export type ProxyUpdatedEvent = TypedEvent<[string], ProxyUpdatedEventObject>; -export type ProxyUpdatedEventFilter = TypedEventFilter +export type ProxyUpdatedEventFilter = TypedEventFilter; export interface SynthExchangeEventObject { - account: string - fromCurrencyKey: string - fromAmount: BigNumber - toCurrencyKey: string - toAmount: BigNumber - toAddress: string + account: string; + fromCurrencyKey: string; + fromAmount: BigNumber; + toCurrencyKey: string; + toAmount: BigNumber; + toAddress: string; } export type SynthExchangeEvent = TypedEvent< - [string, string, BigNumber, string, BigNumber, string], - SynthExchangeEventObject -> + [string, string, BigNumber, string, BigNumber, string], + SynthExchangeEventObject +>; -export type SynthExchangeEventFilter = TypedEventFilter +export type SynthExchangeEventFilter = TypedEventFilter; export interface TokenStateUpdatedEventObject { - newTokenState: string + newTokenState: string; } -export type TokenStateUpdatedEvent = TypedEvent<[string], TokenStateUpdatedEventObject> +export type TokenStateUpdatedEvent = TypedEvent< + [string], + TokenStateUpdatedEventObject +>; -export type TokenStateUpdatedEventFilter = TypedEventFilter +export type TokenStateUpdatedEventFilter = + TypedEventFilter; export interface TransferEventObject { - from: string - to: string - value: BigNumber + from: string; + to: string; + value: BigNumber; } -export type TransferEvent = TypedEvent<[string, string, BigNumber], TransferEventObject> +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; -export type TransferEventFilter = TypedEventFilter +export type TransferEventFilter = TypedEventFilter; export interface Synthetix extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SynthetixInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - DECIMALS(overrides?: CallOverrides): Promise<[number]> - - TOKEN_NAME(overrides?: CallOverrides): Promise<[string]> - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise<[BigNumber]> - - anySynthOrSNXRateIsInvalid( - overrides?: CallOverrides - ): Promise<[boolean] & { anyRateInvalid: boolean }> - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]> - - availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]> - - availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise<[string]> - - balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - collateral(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise<[BigNumber]> - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - decimals(overrides?: CallOverrides): Promise<[number]> - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - issueMaxSynths(overrides?: Overrides & { from?: string }): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateSelf(overrides?: Overrides & { from?: string }): Promise - - maxIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { maxIssuable: BigNumber }> - - messageSender(overrides?: CallOverrides): Promise<[string]> - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise - - mint(overrides?: Overrides & { from?: string }): Promise - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise<[string]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - proxy(overrides?: CallOverrides): Promise<[string]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - sUSD(overrides?: CallOverrides): Promise<[string]> - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise - - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise - - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - symbol(overrides?: CallOverrides): Promise<[string]> - - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[string]> - - synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise<[string]> - - tokenState(overrides?: CallOverrides): Promise<[string]> - - totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - totalSupply(overrides?: CallOverrides): Promise<[BigNumber]> - - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferableSynthetix( - account: string, - overrides?: CallOverrides - ): Promise<[BigNumber] & { transferable: BigNumber }> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - collateral(account: string, overrides?: CallOverrides): Promise - - collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - issueMaxSynths(overrides?: Overrides & { from?: string }): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateSelf(overrides?: Overrides & { from?: string }): Promise - - maxIssuableSynths(account: string, overrides?: CallOverrides): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise - - mint(overrides?: Overrides & { from?: string }): Promise - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise - - setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise - - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - symbol(overrides?: CallOverrides): Promise - - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise - - tokenState(overrides?: CallOverrides): Promise - - totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - transferableSynthetix(account: string, overrides?: CallOverrides): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve(spender: string, value: BigNumberish, overrides?: CallOverrides): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burnSecondary(arg0: string, arg1: BigNumberish, overrides?: CallOverrides): Promise - - burnSynths(amount: BigNumberish, overrides?: CallOverrides): Promise - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - burnSynthsToTarget(overrides?: CallOverrides): Promise - - burnSynthsToTargetOnBehalf(burnForAddress: string, overrides?: CallOverrides): Promise - - collateral(account: string, overrides?: CallOverrides): Promise - - collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: CallOverrides - ): Promise - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: CallOverrides - ): Promise - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: CallOverrides - ): Promise - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: CallOverrides - ): Promise - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber, string] & { amountReceived: BigNumber; vSynth: string }> - - getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - issueMaxSynths(overrides?: CallOverrides): Promise - - issueMaxSynthsOnBehalf(issueForAddress: string, overrides?: CallOverrides): Promise - - issueSynths(amount: BigNumberish, overrides?: CallOverrides): Promise - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: CallOverrides - ): Promise - - liquidateDelinquentAccount(account: string, overrides?: CallOverrides): Promise - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: CallOverrides - ): Promise - - liquidateSelf(overrides?: CallOverrides): Promise - - maxIssuableSynths(account: string, overrides?: CallOverrides): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2(overrides?: CallOverrides): Promise - - migrateEscrowContractBalance(overrides?: CallOverrides): Promise - - mint(overrides?: CallOverrides): Promise - - mintSecondary(arg0: string, arg1: BigNumberish, overrides?: CallOverrides): Promise - - mintSecondaryRewards(arg0: BigNumberish, overrides?: CallOverrides): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: CallOverrides): Promise - - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - maxIssuable: BigNumber - alreadyIssued: BigNumber - totalSystemDebt: BigNumber - } - > - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender(sender: string, overrides?: CallOverrides): Promise - - setProxy(_proxy: string, overrides?: CallOverrides): Promise - - setTokenState(_tokenState: string, overrides?: CallOverrides): Promise - - settle( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise< - [BigNumber, BigNumber, BigNumber] & { - reclaimed: BigNumber - refunded: BigNumber - numEntriesSettled: BigNumber - } - > - - symbol(overrides?: CallOverrides): Promise - - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise - - tokenState(overrides?: CallOverrides): Promise - - totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - totalSupply(overrides?: CallOverrides): Promise - - transfer(to: string, value: BigNumberish, overrides?: CallOverrides): Promise - - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: CallOverrides - ): Promise - - transferableSynthetix(account: string, overrides?: CallOverrides): Promise - } - - filters: { - 'AccountLiquidated(address,uint256,uint256,address)'( - account?: string | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter - AccountLiquidated( - account?: string | null, - snxRedeemed?: null, - amountLiquidated?: null, - liquidator?: null - ): AccountLiquidatedEventFilter - - 'Approval(address,address,uint256)'( - owner?: string | null, - spender?: string | null, - value?: null - ): ApprovalEventFilter - Approval(owner?: string | null, spender?: string | null, value?: null): ApprovalEventFilter - - 'AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter - AtomicSynthExchange( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): AtomicSynthExchangeEventFilter - - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'ExchangeRebate(address,bytes32,uint256)'( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter - ExchangeRebate( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeRebateEventFilter - - 'ExchangeReclaim(address,bytes32,uint256)'( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter - ExchangeReclaim( - account?: string | null, - currencyKey?: null, - amount?: null - ): ExchangeReclaimEventFilter - - 'ExchangeTracking(bytes32,bytes32,uint256,uint256)'( - trackingCode?: BytesLike | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter - ExchangeTracking( - trackingCode?: BytesLike | null, - toCurrencyKey?: null, - toAmount?: null, - fee?: null - ): ExchangeTrackingEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'ProxyUpdated(address)'(proxyAddress?: null): ProxyUpdatedEventFilter - ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter - - 'SynthExchange(address,bytes32,uint256,bytes32,uint256,address)'( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter - SynthExchange( - account?: string | null, - fromCurrencyKey?: null, - fromAmount?: null, - toCurrencyKey?: null, - toAmount?: null, - toAddress?: null - ): SynthExchangeEventFilter - - 'TokenStateUpdated(address)'(newTokenState?: null): TokenStateUpdatedEventFilter - TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter - - 'Transfer(address,address,uint256)'( - from?: string | null, - to?: string | null, - value?: null - ): TransferEventFilter - Transfer(from?: string | null, to?: string | null, value?: null): TransferEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - DECIMALS(overrides?: CallOverrides): Promise - - TOKEN_NAME(overrides?: CallOverrides): Promise - - TOKEN_SYMBOL(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - allowance(owner: string, spender: string, overrides?: CallOverrides): Promise - - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise - - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - availableCurrencyKeys(overrides?: CallOverrides): Promise - - availableSynthCount(overrides?: CallOverrides): Promise - - availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise - - balanceOf(account: string, overrides?: CallOverrides): Promise - - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynths(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - collateral(account: string, overrides?: CallOverrides): Promise - - collateralisationRatio(_issuer: string, overrides?: CallOverrides): Promise - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getFirstNonZeroEscrowIndex(account: string, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - issueMaxSynths(overrides?: Overrides & { from?: string }): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynths(amount: BigNumberish, overrides?: Overrides & { from?: string }): Promise - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateSelf(overrides?: Overrides & { from?: string }): Promise - - maxIssuableSynths(account: string, overrides?: CallOverrides): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise - - migrateEscrowContractBalance(overrides?: Overrides & { from?: string }): Promise - - mint(overrides?: Overrides & { from?: string }): Promise - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - proxy(overrides?: CallOverrides): Promise - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - remainingIssuableSynths(account: string, overrides?: CallOverrides): Promise - - resolver(overrides?: CallOverrides): Promise - - resolverAddressesRequired(overrides?: CallOverrides): Promise - - sUSD(overrides?: CallOverrides): Promise - - setMessageSender(sender: string, overrides?: Overrides & { from?: string }): Promise - - setProxy(_proxy: string, overrides?: Overrides & { from?: string }): Promise - - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise - - settle(currencyKey: BytesLike, overrides?: Overrides & { from?: string }): Promise - - symbol(overrides?: CallOverrides): Promise - - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise - - tokenState(overrides?: CallOverrides): Promise - - totalIssuedSynths(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SynthetixInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + DECIMALS(overrides?: CallOverrides): Promise<[number]>; + + TOKEN_NAME(overrides?: CallOverrides): Promise<[string]>; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise<[string]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + anySynthOrSNXRateIsInvalid( + overrides?: CallOverrides + ): Promise<[boolean] & { anyRateInvalid: boolean }>; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise<[string[]]>; + + availableSynthCount(overrides?: CallOverrides): Promise<[BigNumber]>; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + decimals(overrides?: CallOverrides): Promise<[number]>; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { maxIssuable: BigNumber }>; + + messageSender(overrides?: CallOverrides): Promise<[string]>; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + proxy(overrides?: CallOverrides): Promise<[string]>; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; + + resolver(overrides?: CallOverrides): Promise<[string]>; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; + + sUSD(overrides?: CallOverrides): Promise<[string]>; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[string]>; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise<[string]>; - totalSupply(overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise<[string]>; - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - transferableSynthetix(account: string, overrides?: CallOverrides): Promise - } + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { transferable: BigNumber }>; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint(overrides?: Overrides & { from?: string }): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; - DECIMALS(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - TOKEN_NAME(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - TOKEN_SYMBOL(overrides?: CallOverrides): Promise + sUSD(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - allowance( - owner: string, - spender: string, - overrides?: CallOverrides - ): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - approve( - spender: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - availableCurrencyKeys(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; - availableSynthCount(overrides?: CallOverrides): Promise + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; - availableSynths(index: BigNumberish, overrides?: CallOverrides): Promise + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; - balanceOf(account: string, overrides?: CallOverrides): Promise + tokenState(overrides?: CallOverrides): Promise; - burnSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - burnSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - burnSynthsOnBehalf( - burnForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - burnSynthsToTarget(overrides?: Overrides & { from?: string }): Promise - - burnSynthsToTargetOnBehalf( - burnForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - collateral(account: string, overrides?: CallOverrides): Promise - - collateralisationRatio( - _issuer: string, - overrides?: CallOverrides - ): Promise - - debtBalanceOf( - account: string, - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - decimals(overrides?: CallOverrides): Promise - - emitAtomicSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeRebate( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeReclaim( - account: string, - currencyKey: BytesLike, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitExchangeTracking( - trackingCode: BytesLike, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - fee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - emitSynthExchange( - account: string, - fromCurrencyKey: BytesLike, - fromAmount: BigNumberish, - toCurrencyKey: BytesLike, - toAmount: BigNumberish, - toAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - exchange( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeAtomically( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - minAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalf( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeOnBehalfWithTracking( - exchangeForAddress: string, - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTracking( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithTrackingForInitiator( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - rewardAddress: string, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - exchangeWithVirtual( - sourceCurrencyKey: BytesLike, - sourceAmount: BigNumberish, - destinationCurrencyKey: BytesLike, - trackingCode: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - getFirstNonZeroEscrowIndex( - account: string, - overrides?: CallOverrides - ): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - isWaitingPeriod( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - issueMaxSynths(overrides?: Overrides & { from?: string }): Promise - - issueMaxSynthsOnBehalf( - issueForAddress: string, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynths( - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - issueSynthsOnBehalf( - issueForAddress: string, - amount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccount( - account: string, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateDelinquentAccountEscrowIndex( - account: string, - escrowStartIndex: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - liquidateSelf(overrides?: Overrides & { from?: string }): Promise - - maxIssuableSynths(account: string, overrides?: CallOverrides): Promise - - messageSender(overrides?: CallOverrides): Promise - - migrateEscrowBalanceToRewardEscrowV2( - overrides?: Overrides & { from?: string } - ): Promise - - migrateEscrowContractBalance( - overrides?: Overrides & { from?: string } - ): Promise - - mint(overrides?: Overrides & { from?: string }): Promise - - mintSecondary( - arg0: string, - arg1: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - mintSecondaryRewards( - arg0: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - name(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - owner(overrides?: CallOverrides): Promise + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; - proxy(overrides?: CallOverrides): Promise + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + burnSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + burnSynthsToTarget(overrides?: CallOverrides): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: CallOverrides + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: CallOverrides + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, string] & { amountReceived: BigNumber; vSynth: string } + >; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths(overrides?: CallOverrides): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: CallOverrides + ): Promise; + + issueSynths(amount: BigNumberish, overrides?: CallOverrides): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: CallOverrides + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: CallOverrides + ): Promise; + + liquidateSelf(overrides?: CallOverrides): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: CallOverrides + ): Promise; + + migrateEscrowContractBalance(overrides?: CallOverrides): Promise; + + mint(overrides?: CallOverrides): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: CallOverrides + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: CallOverrides): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + maxIssuable: BigNumber; + alreadyIssued: BigNumber; + totalSystemDebt: BigNumber; + } + >; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired(overrides?: CallOverrides): Promise; + + sUSD(overrides?: CallOverrides): Promise; + + setMessageSender(sender: string, overrides?: CallOverrides): Promise; + + setProxy(_proxy: string, overrides?: CallOverrides): Promise; + + setTokenState( + _tokenState: string, + overrides?: CallOverrides + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise< + [BigNumber, BigNumber, BigNumber] & { + reclaimed: BigNumber; + refunded: BigNumber; + numEntriesSettled: BigNumber; + } + >; + + symbol(overrides?: CallOverrides): Promise; + + synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; + + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transfer( + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccountLiquidated(address,uint256,uint256,address)"( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter; + AccountLiquidated( + account?: string | null, + snxRedeemed?: null, + amountLiquidated?: null, + liquidator?: null + ): AccountLiquidatedEventFilter; + + "Approval(address,address,uint256)"( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + spender?: string | null, + value?: null + ): ApprovalEventFilter; + + "AtomicSynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter; + AtomicSynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): AtomicSynthExchangeEventFilter; + + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "ExchangeRebate(address,bytes32,uint256)"( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter; + ExchangeRebate( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeRebateEventFilter; + + "ExchangeReclaim(address,bytes32,uint256)"( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter; + ExchangeReclaim( + account?: string | null, + currencyKey?: null, + amount?: null + ): ExchangeReclaimEventFilter; + + "ExchangeTracking(bytes32,bytes32,uint256,uint256)"( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter; + ExchangeTracking( + trackingCode?: BytesLike | null, + toCurrencyKey?: null, + toAmount?: null, + fee?: null + ): ExchangeTrackingEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "ProxyUpdated(address)"(proxyAddress?: null): ProxyUpdatedEventFilter; + ProxyUpdated(proxyAddress?: null): ProxyUpdatedEventFilter; + + "SynthExchange(address,bytes32,uint256,bytes32,uint256,address)"( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter; + SynthExchange( + account?: string | null, + fromCurrencyKey?: null, + fromAmount?: null, + toCurrencyKey?: null, + toAmount?: null, + toAddress?: null + ): SynthExchangeEventFilter; + + "TokenStateUpdated(address)"( + newTokenState?: null + ): TokenStateUpdatedEventFilter; + TokenStateUpdated(newTokenState?: null): TokenStateUpdatedEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + value?: null + ): TransferEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid(overrides?: CallOverrides): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys(overrides?: CallOverrides): Promise; + + availableSynthCount(overrides?: CallOverrides): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(account: string, overrides?: CallOverrides): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral(account: string, overrides?: CallOverrides): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint(overrides?: Overrides & { from?: string }): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - remainingIssuableSynths( - account: string, - overrides?: CallOverrides - ): Promise + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - sUSD(overrides?: CallOverrides): Promise + sUSD(overrides?: CallOverrides): Promise; - setMessageSender( - sender: string, - overrides?: Overrides & { from?: string } - ): Promise + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; - setProxy( - _proxy: string, - overrides?: Overrides & { from?: string } - ): Promise + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; - setTokenState( - _tokenState: string, - overrides?: Overrides & { from?: string } - ): Promise + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; - settle( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - symbol(overrides?: CallOverrides): Promise + symbol(overrides?: CallOverrides): Promise; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; - synths(currencyKey: BytesLike, overrides?: CallOverrides): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - synthsByAddress(synthAddress: string, overrides?: CallOverrides): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - tokenState(overrides?: CallOverrides): Promise + totalSupply(overrides?: CallOverrides): Promise; - totalIssuedSynths( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + DECIMALS(overrides?: CallOverrides): Promise; + + TOKEN_NAME(overrides?: CallOverrides): Promise; + + TOKEN_SYMBOL(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + allowance( + owner: string, + spender: string, + overrides?: CallOverrides + ): Promise; + + anySynthOrSNXRateIsInvalid( + overrides?: CallOverrides + ): Promise; + + approve( + spender: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + availableCurrencyKeys( + overrides?: CallOverrides + ): Promise; + + availableSynthCount( + overrides?: CallOverrides + ): Promise; + + availableSynths( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf( + account: string, + overrides?: CallOverrides + ): Promise; + + burnSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsOnBehalf( + burnForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTarget( + overrides?: Overrides & { from?: string } + ): Promise; + + burnSynthsToTargetOnBehalf( + burnForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + collateral( + account: string, + overrides?: CallOverrides + ): Promise; + + collateralisationRatio( + _issuer: string, + overrides?: CallOverrides + ): Promise; + + debtBalanceOf( + account: string, + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + decimals(overrides?: CallOverrides): Promise; + + emitAtomicSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeRebate( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeReclaim( + account: string, + currencyKey: BytesLike, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitExchangeTracking( + trackingCode: BytesLike, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + fee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + emitSynthExchange( + account: string, + fromCurrencyKey: BytesLike, + fromAmount: BigNumberish, + toCurrencyKey: BytesLike, + toAmount: BigNumberish, + toAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + exchange( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeAtomically( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + minAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalf( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeOnBehalfWithTracking( + exchangeForAddress: string, + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTracking( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithTrackingForInitiator( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + rewardAddress: string, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + exchangeWithVirtual( + sourceCurrencyKey: BytesLike, + sourceAmount: BigNumberish, + destinationCurrencyKey: BytesLike, + trackingCode: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + getFirstNonZeroEscrowIndex( + account: string, + overrides?: CallOverrides + ): Promise; + + isResolverCached(overrides?: CallOverrides): Promise; + + isWaitingPeriod( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + issueMaxSynths( + overrides?: Overrides & { from?: string } + ): Promise; + + issueMaxSynthsOnBehalf( + issueForAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynths( + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + issueSynthsOnBehalf( + issueForAddress: string, + amount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccount( + account: string, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateDelinquentAccountEscrowIndex( + account: string, + escrowStartIndex: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + liquidateSelf( + overrides?: Overrides & { from?: string } + ): Promise; + + maxIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + messageSender(overrides?: CallOverrides): Promise; + + migrateEscrowBalanceToRewardEscrowV2( + overrides?: Overrides & { from?: string } + ): Promise; + + migrateEscrowContractBalance( + overrides?: Overrides & { from?: string } + ): Promise; + + mint( + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondary( + arg0: string, + arg1: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + mintSecondaryRewards( + arg0: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + proxy(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + remainingIssuableSynths( + account: string, + overrides?: CallOverrides + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + sUSD(overrides?: CallOverrides): Promise; + + setMessageSender( + sender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setProxy( + _proxy: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setTokenState( + _tokenState: string, + overrides?: Overrides & { from?: string } + ): Promise; + + settle( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + synths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthsByAddress( + synthAddress: string, + overrides?: CallOverrides + ): Promise; + + tokenState(overrides?: CallOverrides): Promise; - totalIssuedSynthsExcludeOtherCollateral( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + totalIssuedSynths( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - totalSupply(overrides?: CallOverrides): Promise + totalIssuedSynthsExcludeOtherCollateral( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - transfer( - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + totalSupply(overrides?: CallOverrides): Promise; - transferFrom( - from: string, - to: string, - value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + transfer( + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + transferFrom( + from: string, + to: string, + value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - transferableSynthetix(account: string, overrides?: CallOverrides): Promise - } + transferableSynthetix( + account: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SystemSettings.ts b/packages/sdk/src/contracts/types/SystemSettings.ts index f3102b93fd..a830964f6a 100644 --- a/packages/sdk/src/contracts/types/SystemSettings.ts +++ b/packages/sdk/src/contracts/types/SystemSettings.ts @@ -2,2843 +2,3697 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SystemSettingsInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'aggregatorWarningFlags()': FunctionFragment - 'atomicEquivalentForDexPricing(bytes32)': FunctionFragment - 'atomicExchangeFeeRate(bytes32)': FunctionFragment - 'atomicMaxVolumePerBlock()': FunctionFragment - 'atomicTwapWindow()': FunctionFragment - 'atomicVolatilityConsiderationWindow(bytes32)': FunctionFragment - 'atomicVolatilityUpdateThreshold(bytes32)': FunctionFragment - 'collapseFeeRate(address)': FunctionFragment - 'crossChainSynthTransferEnabled(bytes32)': FunctionFragment - 'crossDomainMessageGasLimit(uint8)': FunctionFragment - 'debtSnapshotStaleTime()': FunctionFragment - 'etherWrapperBurnFeeRate()': FunctionFragment - 'etherWrapperMaxETH()': FunctionFragment - 'etherWrapperMintFeeRate()': FunctionFragment - 'exchangeDynamicFeeRounds()': FunctionFragment - 'exchangeDynamicFeeThreshold()': FunctionFragment - 'exchangeDynamicFeeWeightDecay()': FunctionFragment - 'exchangeFeeRate(bytes32)': FunctionFragment - 'exchangeMaxDynamicFee()': FunctionFragment - 'feePeriodDuration()': FunctionFragment - 'flagReward()': FunctionFragment - 'interactionDelay(address)': FunctionFragment - 'isResolverCached()': FunctionFragment - 'issuanceRatio()': FunctionFragment - 'liquidateReward()': FunctionFragment - 'liquidationDelay()': FunctionFragment - 'liquidationEscrowDuration()': FunctionFragment - 'liquidationPenalty()': FunctionFragment - 'liquidationRatio()': FunctionFragment - 'minimumStakeTime()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'priceDeviationThresholdFactor()': FunctionFragment - 'pureChainlinkPriceForAtomicSwapsEnabled(bytes32)': FunctionFragment - 'rateStalePeriod()': FunctionFragment - 'rebuildCache()': FunctionFragment - 'resolver()': FunctionFragment - 'resolverAddressesRequired()': FunctionFragment - 'selfLiquidationPenalty()': FunctionFragment - 'setAggregatorWarningFlags(address)': FunctionFragment - 'setAtomicEquivalentForDexPricing(bytes32,address)': FunctionFragment - 'setAtomicExchangeFeeRate(bytes32,uint256)': FunctionFragment - 'setAtomicMaxVolumePerBlock(uint256)': FunctionFragment - 'setAtomicTwapWindow(uint256)': FunctionFragment - 'setAtomicVolatilityConsiderationWindow(bytes32,uint256)': FunctionFragment - 'setAtomicVolatilityUpdateThreshold(bytes32,uint256)': FunctionFragment - 'setCollapseFeeRate(address,uint256)': FunctionFragment - 'setCrossChainSynthTransferEnabled(bytes32,uint256)': FunctionFragment - 'setCrossDomainMessageGasLimit(uint8,uint256)': FunctionFragment - 'setDebtSnapshotStaleTime(uint256)': FunctionFragment - 'setEtherWrapperBurnFeeRate(uint256)': FunctionFragment - 'setEtherWrapperMaxETH(uint256)': FunctionFragment - 'setEtherWrapperMintFeeRate(uint256)': FunctionFragment - 'setExchangeDynamicFeeRounds(uint256)': FunctionFragment - 'setExchangeDynamicFeeThreshold(uint256)': FunctionFragment - 'setExchangeDynamicFeeWeightDecay(uint256)': FunctionFragment - 'setExchangeFeeRateForSynths(bytes32[],uint256[])': FunctionFragment - 'setExchangeMaxDynamicFee(uint256)': FunctionFragment - 'setFeePeriodDuration(uint256)': FunctionFragment - 'setFlagReward(uint256)': FunctionFragment - 'setInteractionDelay(address,uint256)': FunctionFragment - 'setIssuanceRatio(uint256)': FunctionFragment - 'setLiquidateReward(uint256)': FunctionFragment - 'setLiquidationDelay(uint256)': FunctionFragment - 'setLiquidationEscrowDuration(uint256)': FunctionFragment - 'setLiquidationPenalty(uint256)': FunctionFragment - 'setLiquidationRatio(uint256)': FunctionFragment - 'setMinimumStakeTime(uint256)': FunctionFragment - 'setPriceDeviationThresholdFactor(uint256)': FunctionFragment - 'setPureChainlinkPriceForAtomicSwapsEnabled(bytes32,bool)': FunctionFragment - 'setRateStalePeriod(uint256)': FunctionFragment - 'setSelfLiquidationPenalty(uint256)': FunctionFragment - 'setSnxLiquidationPenalty(uint256)': FunctionFragment - 'setTargetThreshold(uint256)': FunctionFragment - 'setTradingRewardsEnabled(bool)': FunctionFragment - 'setWaitingPeriodSecs(uint256)': FunctionFragment - 'setWrapperBurnFeeRate(address,int256)': FunctionFragment - 'setWrapperMaxTokenAmount(address,uint256)': FunctionFragment - 'setWrapperMintFeeRate(address,int256)': FunctionFragment - 'snxLiquidationPenalty()': FunctionFragment - 'targetThreshold()': FunctionFragment - 'tradingRewardsEnabled()': FunctionFragment - 'waitingPeriodSecs()': FunctionFragment - 'wrapperBurnFeeRate(address)': FunctionFragment - 'wrapperMaxTokenAmount(address)': FunctionFragment - 'wrapperMintFeeRate(address)': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'acceptOwnership' - | 'aggregatorWarningFlags' - | 'atomicEquivalentForDexPricing' - | 'atomicExchangeFeeRate' - | 'atomicMaxVolumePerBlock' - | 'atomicTwapWindow' - | 'atomicVolatilityConsiderationWindow' - | 'atomicVolatilityUpdateThreshold' - | 'collapseFeeRate' - | 'crossChainSynthTransferEnabled' - | 'crossDomainMessageGasLimit' - | 'debtSnapshotStaleTime' - | 'etherWrapperBurnFeeRate' - | 'etherWrapperMaxETH' - | 'etherWrapperMintFeeRate' - | 'exchangeDynamicFeeRounds' - | 'exchangeDynamicFeeThreshold' - | 'exchangeDynamicFeeWeightDecay' - | 'exchangeFeeRate' - | 'exchangeMaxDynamicFee' - | 'feePeriodDuration' - | 'flagReward' - | 'interactionDelay' - | 'isResolverCached' - | 'issuanceRatio' - | 'liquidateReward' - | 'liquidationDelay' - | 'liquidationEscrowDuration' - | 'liquidationPenalty' - | 'liquidationRatio' - | 'minimumStakeTime' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'priceDeviationThresholdFactor' - | 'pureChainlinkPriceForAtomicSwapsEnabled' - | 'rateStalePeriod' - | 'rebuildCache' - | 'resolver' - | 'resolverAddressesRequired' - | 'selfLiquidationPenalty' - | 'setAggregatorWarningFlags' - | 'setAtomicEquivalentForDexPricing' - | 'setAtomicExchangeFeeRate' - | 'setAtomicMaxVolumePerBlock' - | 'setAtomicTwapWindow' - | 'setAtomicVolatilityConsiderationWindow' - | 'setAtomicVolatilityUpdateThreshold' - | 'setCollapseFeeRate' - | 'setCrossChainSynthTransferEnabled' - | 'setCrossDomainMessageGasLimit' - | 'setDebtSnapshotStaleTime' - | 'setEtherWrapperBurnFeeRate' - | 'setEtherWrapperMaxETH' - | 'setEtherWrapperMintFeeRate' - | 'setExchangeDynamicFeeRounds' - | 'setExchangeDynamicFeeThreshold' - | 'setExchangeDynamicFeeWeightDecay' - | 'setExchangeFeeRateForSynths' - | 'setExchangeMaxDynamicFee' - | 'setFeePeriodDuration' - | 'setFlagReward' - | 'setInteractionDelay' - | 'setIssuanceRatio' - | 'setLiquidateReward' - | 'setLiquidationDelay' - | 'setLiquidationEscrowDuration' - | 'setLiquidationPenalty' - | 'setLiquidationRatio' - | 'setMinimumStakeTime' - | 'setPriceDeviationThresholdFactor' - | 'setPureChainlinkPriceForAtomicSwapsEnabled' - | 'setRateStalePeriod' - | 'setSelfLiquidationPenalty' - | 'setSnxLiquidationPenalty' - | 'setTargetThreshold' - | 'setTradingRewardsEnabled' - | 'setWaitingPeriodSecs' - | 'setWrapperBurnFeeRate' - | 'setWrapperMaxTokenAmount' - | 'setWrapperMintFeeRate' - | 'snxLiquidationPenalty' - | 'targetThreshold' - | 'tradingRewardsEnabled' - | 'waitingPeriodSecs' - | 'wrapperBurnFeeRate' - | 'wrapperMaxTokenAmount' - | 'wrapperMintFeeRate' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'aggregatorWarningFlags', values?: undefined): string - encodeFunctionData(functionFragment: 'atomicEquivalentForDexPricing', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'atomicExchangeFeeRate', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'atomicMaxVolumePerBlock', values?: undefined): string - encodeFunctionData(functionFragment: 'atomicTwapWindow', values?: undefined): string - encodeFunctionData( - functionFragment: 'atomicVolatilityConsiderationWindow', - values: [BytesLike] - ): string - encodeFunctionData( - functionFragment: 'atomicVolatilityUpdateThreshold', - values: [BytesLike] - ): string - encodeFunctionData(functionFragment: 'collapseFeeRate', values: [string]): string - encodeFunctionData( - functionFragment: 'crossChainSynthTransferEnabled', - values: [BytesLike] - ): string - encodeFunctionData(functionFragment: 'crossDomainMessageGasLimit', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'debtSnapshotStaleTime', values?: undefined): string - encodeFunctionData(functionFragment: 'etherWrapperBurnFeeRate', values?: undefined): string - encodeFunctionData(functionFragment: 'etherWrapperMaxETH', values?: undefined): string - encodeFunctionData(functionFragment: 'etherWrapperMintFeeRate', values?: undefined): string - encodeFunctionData(functionFragment: 'exchangeDynamicFeeRounds', values?: undefined): string - encodeFunctionData(functionFragment: 'exchangeDynamicFeeThreshold', values?: undefined): string - encodeFunctionData(functionFragment: 'exchangeDynamicFeeWeightDecay', values?: undefined): string - encodeFunctionData(functionFragment: 'exchangeFeeRate', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'exchangeMaxDynamicFee', values?: undefined): string - encodeFunctionData(functionFragment: 'feePeriodDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'flagReward', values?: undefined): string - encodeFunctionData(functionFragment: 'interactionDelay', values: [string]): string - encodeFunctionData(functionFragment: 'isResolverCached', values?: undefined): string - encodeFunctionData(functionFragment: 'issuanceRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidateReward', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationDelay', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationEscrowDuration', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationPenalty', values?: undefined): string - encodeFunctionData(functionFragment: 'liquidationRatio', values?: undefined): string - encodeFunctionData(functionFragment: 'minimumStakeTime', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'priceDeviationThresholdFactor', values?: undefined): string - encodeFunctionData( - functionFragment: 'pureChainlinkPriceForAtomicSwapsEnabled', - values: [BytesLike] - ): string - encodeFunctionData(functionFragment: 'rateStalePeriod', values?: undefined): string - encodeFunctionData(functionFragment: 'rebuildCache', values?: undefined): string - encodeFunctionData(functionFragment: 'resolver', values?: undefined): string - encodeFunctionData(functionFragment: 'resolverAddressesRequired', values?: undefined): string - encodeFunctionData(functionFragment: 'selfLiquidationPenalty', values?: undefined): string - encodeFunctionData(functionFragment: 'setAggregatorWarningFlags', values: [string]): string - encodeFunctionData( - functionFragment: 'setAtomicEquivalentForDexPricing', - values: [BytesLike, string] - ): string - encodeFunctionData( - functionFragment: 'setAtomicExchangeFeeRate', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setAtomicMaxVolumePerBlock', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setAtomicTwapWindow', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setAtomicVolatilityConsiderationWindow', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setAtomicVolatilityUpdateThreshold', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setCollapseFeeRate', values: [string, BigNumberish]): string - encodeFunctionData( - functionFragment: 'setCrossChainSynthTransferEnabled', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setCrossDomainMessageGasLimit', - values: [BigNumberish, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setDebtSnapshotStaleTime', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setEtherWrapperBurnFeeRate', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setEtherWrapperMaxETH', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setEtherWrapperMintFeeRate', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setExchangeDynamicFeeRounds', - values: [BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setExchangeDynamicFeeThreshold', - values: [BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setExchangeDynamicFeeWeightDecay', - values: [BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setExchangeFeeRateForSynths', - values: [BytesLike[], BigNumberish[]] - ): string - encodeFunctionData(functionFragment: 'setExchangeMaxDynamicFee', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setFeePeriodDuration', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setFlagReward', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setInteractionDelay', - values: [string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setIssuanceRatio', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setLiquidateReward', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setLiquidationDelay', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setLiquidationEscrowDuration', - values: [BigNumberish] - ): string - encodeFunctionData(functionFragment: 'setLiquidationPenalty', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setLiquidationRatio', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setMinimumStakeTime', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setPriceDeviationThresholdFactor', - values: [BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setPureChainlinkPriceForAtomicSwapsEnabled', - values: [BytesLike, boolean] - ): string - encodeFunctionData(functionFragment: 'setRateStalePeriod', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setSelfLiquidationPenalty', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setSnxLiquidationPenalty', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setTargetThreshold', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'setTradingRewardsEnabled', values: [boolean]): string - encodeFunctionData(functionFragment: 'setWaitingPeriodSecs', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'setWrapperBurnFeeRate', - values: [string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setWrapperMaxTokenAmount', - values: [string, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'setWrapperMintFeeRate', - values: [string, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'snxLiquidationPenalty', values?: undefined): string - encodeFunctionData(functionFragment: 'targetThreshold', values?: undefined): string - encodeFunctionData(functionFragment: 'tradingRewardsEnabled', values?: undefined): string - encodeFunctionData(functionFragment: 'waitingPeriodSecs', values?: undefined): string - encodeFunctionData(functionFragment: 'wrapperBurnFeeRate', values: [string]): string - encodeFunctionData(functionFragment: 'wrapperMaxTokenAmount', values: [string]): string - encodeFunctionData(functionFragment: 'wrapperMintFeeRate', values: [string]): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'aggregatorWarningFlags', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'atomicEquivalentForDexPricing', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'atomicExchangeFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'atomicMaxVolumePerBlock', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'atomicTwapWindow', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'atomicVolatilityConsiderationWindow', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'atomicVolatilityUpdateThreshold', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'collapseFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'crossChainSynthTransferEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'crossDomainMessageGasLimit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'debtSnapshotStaleTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'etherWrapperBurnFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'etherWrapperMaxETH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'etherWrapperMintFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeDynamicFeeRounds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeDynamicFeeThreshold', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeDynamicFeeWeightDecay', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeMaxDynamicFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'feePeriodDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'flagReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'interactionDelay', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isResolverCached', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issuanceRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidateReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationDelay', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationEscrowDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'liquidationRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'minimumStakeTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'priceDeviationThresholdFactor', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'pureChainlinkPriceForAtomicSwapsEnabled', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'rateStalePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rebuildCache', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolver', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resolverAddressesRequired', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'selfLiquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setAggregatorWarningFlags', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'setAtomicEquivalentForDexPricing', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'setAtomicExchangeFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setAtomicMaxVolumePerBlock', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setAtomicTwapWindow', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'setAtomicVolatilityConsiderationWindow', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'setAtomicVolatilityUpdateThreshold', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'setCollapseFeeRate', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'setCrossChainSynthTransferEnabled', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'setCrossDomainMessageGasLimit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setDebtSnapshotStaleTime', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setEtherWrapperBurnFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setEtherWrapperMaxETH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setEtherWrapperMintFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setExchangeDynamicFeeRounds', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setExchangeDynamicFeeThreshold', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'setExchangeDynamicFeeWeightDecay', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'setExchangeFeeRateForSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setExchangeMaxDynamicFee', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFeePeriodDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFlagReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setInteractionDelay', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setIssuanceRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidateReward', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationDelay', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationEscrowDuration', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setLiquidationRatio', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setMinimumStakeTime', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'setPriceDeviationThresholdFactor', - data: BytesLike - ): Result - decodeFunctionResult( - functionFragment: 'setPureChainlinkPriceForAtomicSwapsEnabled', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'setRateStalePeriod', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSelfLiquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setSnxLiquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTargetThreshold', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setTradingRewardsEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setWaitingPeriodSecs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setWrapperBurnFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setWrapperMaxTokenAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setWrapperMintFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'snxLiquidationPenalty', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'targetThreshold', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'tradingRewardsEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'waitingPeriodSecs', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'wrapperBurnFeeRate', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'wrapperMaxTokenAmount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'wrapperMintFeeRate', data: BytesLike): Result - - events: { - 'AggregatorWarningFlagsUpdated(address)': EventFragment - 'AtomicEquivalentForDexPricingUpdated(bytes32,address)': EventFragment - 'AtomicExchangeFeeUpdated(bytes32,uint256)': EventFragment - 'AtomicMaxVolumePerBlockUpdated(uint256)': EventFragment - 'AtomicTwapWindowUpdated(uint256)': EventFragment - 'AtomicVolatilityConsiderationWindowUpdated(bytes32,uint256)': EventFragment - 'AtomicVolatilityUpdateThresholdUpdated(bytes32,uint256)': EventFragment - 'CacheUpdated(bytes32,address)': EventFragment - 'CollapseFeeRateUpdated(uint256)': EventFragment - 'CrossChainSynthTransferEnabledUpdated(bytes32,uint256)': EventFragment - 'CrossDomainMessageGasLimitChanged(uint8,uint256)': EventFragment - 'DebtSnapshotStaleTimeUpdated(uint256)': EventFragment - 'EtherWrapperBurnFeeRateUpdated(uint256)': EventFragment - 'EtherWrapperMaxETHUpdated(uint256)': EventFragment - 'EtherWrapperMintFeeRateUpdated(uint256)': EventFragment - 'ExchangeDynamicFeeRoundsUpdated(uint256)': EventFragment - 'ExchangeDynamicFeeThresholdUpdated(uint256)': EventFragment - 'ExchangeDynamicFeeWeightDecayUpdated(uint256)': EventFragment - 'ExchangeFeeUpdated(bytes32,uint256)': EventFragment - 'ExchangeMaxDynamicFeeUpdated(uint256)': EventFragment - 'FeePeriodDurationUpdated(uint256)': EventFragment - 'FlagRewardUpdated(uint256)': EventFragment - 'InteractionDelayUpdated(uint256)': EventFragment - 'IssuanceRatioUpdated(uint256)': EventFragment - 'LiquidateRewardUpdated(uint256)': EventFragment - 'LiquidationDelayUpdated(uint256)': EventFragment - 'LiquidationEscrowDurationUpdated(uint256)': EventFragment - 'LiquidationPenaltyUpdated(uint256)': EventFragment - 'LiquidationRatioUpdated(uint256)': EventFragment - 'MinimumStakeTimeUpdated(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'PriceDeviationThresholdUpdated(uint256)': EventFragment - 'PureChainlinkPriceForAtomicSwapsEnabledUpdated(bytes32,bool)': EventFragment - 'RateStalePeriodUpdated(uint256)': EventFragment - 'SelfLiquidationPenaltyUpdated(uint256)': EventFragment - 'SnxLiquidationPenaltyUpdated(uint256)': EventFragment - 'TargetThresholdUpdated(uint256)': EventFragment - 'TradingRewardsEnabled(bool)': EventFragment - 'WaitingPeriodSecsUpdated(uint256)': EventFragment - 'WrapperBurnFeeRateUpdated(address,int256)': EventFragment - 'WrapperMaxTokenAmountUpdated(address,uint256)': EventFragment - 'WrapperMintFeeRateUpdated(address,int256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AggregatorWarningFlagsUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicEquivalentForDexPricingUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicExchangeFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicMaxVolumePerBlockUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicTwapWindowUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicVolatilityConsiderationWindowUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'AtomicVolatilityUpdateThresholdUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CacheUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CollapseFeeRateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CrossChainSynthTransferEnabledUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'CrossDomainMessageGasLimitChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DebtSnapshotStaleTimeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EtherWrapperBurnFeeRateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EtherWrapperMaxETHUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EtherWrapperMintFeeRateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeDynamicFeeRoundsUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeDynamicFeeThresholdUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeDynamicFeeWeightDecayUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeMaxDynamicFeeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FeePeriodDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FlagRewardUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'InteractionDelayUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'IssuanceRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidateRewardUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationDelayUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationEscrowDurationUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationPenaltyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'LiquidationRatioUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'MinimumStakeTimeUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PriceDeviationThresholdUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'PureChainlinkPriceForAtomicSwapsEnabledUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RateStalePeriodUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SelfLiquidationPenaltyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SnxLiquidationPenaltyUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TargetThresholdUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'TradingRewardsEnabled'): EventFragment - getEvent(nameOrSignatureOrTopic: 'WaitingPeriodSecsUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'WrapperBurnFeeRateUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'WrapperMaxTokenAmountUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'WrapperMintFeeRateUpdated'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "aggregatorWarningFlags()": FunctionFragment; + "atomicEquivalentForDexPricing(bytes32)": FunctionFragment; + "atomicExchangeFeeRate(bytes32)": FunctionFragment; + "atomicMaxVolumePerBlock()": FunctionFragment; + "atomicTwapWindow()": FunctionFragment; + "atomicVolatilityConsiderationWindow(bytes32)": FunctionFragment; + "atomicVolatilityUpdateThreshold(bytes32)": FunctionFragment; + "collapseFeeRate(address)": FunctionFragment; + "crossChainSynthTransferEnabled(bytes32)": FunctionFragment; + "crossDomainMessageGasLimit(uint8)": FunctionFragment; + "debtSnapshotStaleTime()": FunctionFragment; + "etherWrapperBurnFeeRate()": FunctionFragment; + "etherWrapperMaxETH()": FunctionFragment; + "etherWrapperMintFeeRate()": FunctionFragment; + "exchangeDynamicFeeRounds()": FunctionFragment; + "exchangeDynamicFeeThreshold()": FunctionFragment; + "exchangeDynamicFeeWeightDecay()": FunctionFragment; + "exchangeFeeRate(bytes32)": FunctionFragment; + "exchangeMaxDynamicFee()": FunctionFragment; + "feePeriodDuration()": FunctionFragment; + "flagReward()": FunctionFragment; + "interactionDelay(address)": FunctionFragment; + "isResolverCached()": FunctionFragment; + "issuanceRatio()": FunctionFragment; + "liquidateReward()": FunctionFragment; + "liquidationDelay()": FunctionFragment; + "liquidationEscrowDuration()": FunctionFragment; + "liquidationPenalty()": FunctionFragment; + "liquidationRatio()": FunctionFragment; + "minimumStakeTime()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "priceDeviationThresholdFactor()": FunctionFragment; + "pureChainlinkPriceForAtomicSwapsEnabled(bytes32)": FunctionFragment; + "rateStalePeriod()": FunctionFragment; + "rebuildCache()": FunctionFragment; + "resolver()": FunctionFragment; + "resolverAddressesRequired()": FunctionFragment; + "selfLiquidationPenalty()": FunctionFragment; + "setAggregatorWarningFlags(address)": FunctionFragment; + "setAtomicEquivalentForDexPricing(bytes32,address)": FunctionFragment; + "setAtomicExchangeFeeRate(bytes32,uint256)": FunctionFragment; + "setAtomicMaxVolumePerBlock(uint256)": FunctionFragment; + "setAtomicTwapWindow(uint256)": FunctionFragment; + "setAtomicVolatilityConsiderationWindow(bytes32,uint256)": FunctionFragment; + "setAtomicVolatilityUpdateThreshold(bytes32,uint256)": FunctionFragment; + "setCollapseFeeRate(address,uint256)": FunctionFragment; + "setCrossChainSynthTransferEnabled(bytes32,uint256)": FunctionFragment; + "setCrossDomainMessageGasLimit(uint8,uint256)": FunctionFragment; + "setDebtSnapshotStaleTime(uint256)": FunctionFragment; + "setEtherWrapperBurnFeeRate(uint256)": FunctionFragment; + "setEtherWrapperMaxETH(uint256)": FunctionFragment; + "setEtherWrapperMintFeeRate(uint256)": FunctionFragment; + "setExchangeDynamicFeeRounds(uint256)": FunctionFragment; + "setExchangeDynamicFeeThreshold(uint256)": FunctionFragment; + "setExchangeDynamicFeeWeightDecay(uint256)": FunctionFragment; + "setExchangeFeeRateForSynths(bytes32[],uint256[])": FunctionFragment; + "setExchangeMaxDynamicFee(uint256)": FunctionFragment; + "setFeePeriodDuration(uint256)": FunctionFragment; + "setFlagReward(uint256)": FunctionFragment; + "setInteractionDelay(address,uint256)": FunctionFragment; + "setIssuanceRatio(uint256)": FunctionFragment; + "setLiquidateReward(uint256)": FunctionFragment; + "setLiquidationDelay(uint256)": FunctionFragment; + "setLiquidationEscrowDuration(uint256)": FunctionFragment; + "setLiquidationPenalty(uint256)": FunctionFragment; + "setLiquidationRatio(uint256)": FunctionFragment; + "setMinimumStakeTime(uint256)": FunctionFragment; + "setPriceDeviationThresholdFactor(uint256)": FunctionFragment; + "setPureChainlinkPriceForAtomicSwapsEnabled(bytes32,bool)": FunctionFragment; + "setRateStalePeriod(uint256)": FunctionFragment; + "setSelfLiquidationPenalty(uint256)": FunctionFragment; + "setSnxLiquidationPenalty(uint256)": FunctionFragment; + "setTargetThreshold(uint256)": FunctionFragment; + "setTradingRewardsEnabled(bool)": FunctionFragment; + "setWaitingPeriodSecs(uint256)": FunctionFragment; + "setWrapperBurnFeeRate(address,int256)": FunctionFragment; + "setWrapperMaxTokenAmount(address,uint256)": FunctionFragment; + "setWrapperMintFeeRate(address,int256)": FunctionFragment; + "snxLiquidationPenalty()": FunctionFragment; + "targetThreshold()": FunctionFragment; + "tradingRewardsEnabled()": FunctionFragment; + "waitingPeriodSecs()": FunctionFragment; + "wrapperBurnFeeRate(address)": FunctionFragment; + "wrapperMaxTokenAmount(address)": FunctionFragment; + "wrapperMintFeeRate(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "acceptOwnership" + | "aggregatorWarningFlags" + | "atomicEquivalentForDexPricing" + | "atomicExchangeFeeRate" + | "atomicMaxVolumePerBlock" + | "atomicTwapWindow" + | "atomicVolatilityConsiderationWindow" + | "atomicVolatilityUpdateThreshold" + | "collapseFeeRate" + | "crossChainSynthTransferEnabled" + | "crossDomainMessageGasLimit" + | "debtSnapshotStaleTime" + | "etherWrapperBurnFeeRate" + | "etherWrapperMaxETH" + | "etherWrapperMintFeeRate" + | "exchangeDynamicFeeRounds" + | "exchangeDynamicFeeThreshold" + | "exchangeDynamicFeeWeightDecay" + | "exchangeFeeRate" + | "exchangeMaxDynamicFee" + | "feePeriodDuration" + | "flagReward" + | "interactionDelay" + | "isResolverCached" + | "issuanceRatio" + | "liquidateReward" + | "liquidationDelay" + | "liquidationEscrowDuration" + | "liquidationPenalty" + | "liquidationRatio" + | "minimumStakeTime" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "priceDeviationThresholdFactor" + | "pureChainlinkPriceForAtomicSwapsEnabled" + | "rateStalePeriod" + | "rebuildCache" + | "resolver" + | "resolverAddressesRequired" + | "selfLiquidationPenalty" + | "setAggregatorWarningFlags" + | "setAtomicEquivalentForDexPricing" + | "setAtomicExchangeFeeRate" + | "setAtomicMaxVolumePerBlock" + | "setAtomicTwapWindow" + | "setAtomicVolatilityConsiderationWindow" + | "setAtomicVolatilityUpdateThreshold" + | "setCollapseFeeRate" + | "setCrossChainSynthTransferEnabled" + | "setCrossDomainMessageGasLimit" + | "setDebtSnapshotStaleTime" + | "setEtherWrapperBurnFeeRate" + | "setEtherWrapperMaxETH" + | "setEtherWrapperMintFeeRate" + | "setExchangeDynamicFeeRounds" + | "setExchangeDynamicFeeThreshold" + | "setExchangeDynamicFeeWeightDecay" + | "setExchangeFeeRateForSynths" + | "setExchangeMaxDynamicFee" + | "setFeePeriodDuration" + | "setFlagReward" + | "setInteractionDelay" + | "setIssuanceRatio" + | "setLiquidateReward" + | "setLiquidationDelay" + | "setLiquidationEscrowDuration" + | "setLiquidationPenalty" + | "setLiquidationRatio" + | "setMinimumStakeTime" + | "setPriceDeviationThresholdFactor" + | "setPureChainlinkPriceForAtomicSwapsEnabled" + | "setRateStalePeriod" + | "setSelfLiquidationPenalty" + | "setSnxLiquidationPenalty" + | "setTargetThreshold" + | "setTradingRewardsEnabled" + | "setWaitingPeriodSecs" + | "setWrapperBurnFeeRate" + | "setWrapperMaxTokenAmount" + | "setWrapperMintFeeRate" + | "snxLiquidationPenalty" + | "targetThreshold" + | "tradingRewardsEnabled" + | "waitingPeriodSecs" + | "wrapperBurnFeeRate" + | "wrapperMaxTokenAmount" + | "wrapperMintFeeRate" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "aggregatorWarningFlags", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "atomicEquivalentForDexPricing", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "atomicExchangeFeeRate", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "atomicMaxVolumePerBlock", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "atomicTwapWindow", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "atomicVolatilityConsiderationWindow", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "atomicVolatilityUpdateThreshold", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "collapseFeeRate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "crossChainSynthTransferEnabled", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "crossDomainMessageGasLimit", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "debtSnapshotStaleTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "etherWrapperBurnFeeRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "etherWrapperMaxETH", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "etherWrapperMintFeeRate", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "exchangeDynamicFeeRounds", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "exchangeDynamicFeeThreshold", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "exchangeDynamicFeeWeightDecay", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "exchangeFeeRate", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "exchangeMaxDynamicFee", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "feePeriodDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "flagReward", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "interactionDelay", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "isResolverCached", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issuanceRatio", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidateReward", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationDelay", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationEscrowDuration", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationPenalty", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "liquidationRatio", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "minimumStakeTime", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "priceDeviationThresholdFactor", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "pureChainlinkPriceForAtomicSwapsEnabled", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "rateStalePeriod", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "rebuildCache", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "resolver", values?: undefined): string; + encodeFunctionData( + functionFragment: "resolverAddressesRequired", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "selfLiquidationPenalty", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setAggregatorWarningFlags", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "setAtomicEquivalentForDexPricing", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "setAtomicExchangeFeeRate", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setAtomicMaxVolumePerBlock", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setAtomicTwapWindow", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setAtomicVolatilityConsiderationWindow", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setAtomicVolatilityUpdateThreshold", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setCollapseFeeRate", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setCrossChainSynthTransferEnabled", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setCrossDomainMessageGasLimit", + values: [BigNumberish, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setDebtSnapshotStaleTime", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setEtherWrapperBurnFeeRate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setEtherWrapperMaxETH", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setEtherWrapperMintFeeRate", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setExchangeDynamicFeeRounds", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setExchangeDynamicFeeThreshold", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setExchangeDynamicFeeWeightDecay", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setExchangeFeeRateForSynths", + values: [BytesLike[], BigNumberish[]] + ): string; + encodeFunctionData( + functionFragment: "setExchangeMaxDynamicFee", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setFeePeriodDuration", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setFlagReward", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setInteractionDelay", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setIssuanceRatio", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidateReward", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationDelay", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationEscrowDuration", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationPenalty", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setLiquidationRatio", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setMinimumStakeTime", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setPriceDeviationThresholdFactor", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setPureChainlinkPriceForAtomicSwapsEnabled", + values: [BytesLike, boolean] + ): string; + encodeFunctionData( + functionFragment: "setRateStalePeriod", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSelfLiquidationPenalty", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setSnxLiquidationPenalty", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTargetThreshold", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setTradingRewardsEnabled", + values: [boolean] + ): string; + encodeFunctionData( + functionFragment: "setWaitingPeriodSecs", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setWrapperBurnFeeRate", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setWrapperMaxTokenAmount", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "setWrapperMintFeeRate", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "snxLiquidationPenalty", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "targetThreshold", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "tradingRewardsEnabled", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "waitingPeriodSecs", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "wrapperBurnFeeRate", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "wrapperMaxTokenAmount", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "wrapperMintFeeRate", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "aggregatorWarningFlags", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicEquivalentForDexPricing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicExchangeFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicMaxVolumePerBlock", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicTwapWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicVolatilityConsiderationWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "atomicVolatilityUpdateThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "collapseFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "crossChainSynthTransferEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "crossDomainMessageGasLimit", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "debtSnapshotStaleTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "etherWrapperBurnFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "etherWrapperMaxETH", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "etherWrapperMintFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeDynamicFeeRounds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeDynamicFeeThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeDynamicFeeWeightDecay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeMaxDynamicFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "feePeriodDuration", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "flagReward", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "interactionDelay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isResolverCached", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issuanceRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidateReward", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationDelay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationEscrowDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "liquidationRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "minimumStakeTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "priceDeviationThresholdFactor", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "pureChainlinkPriceForAtomicSwapsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rateStalePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "rebuildCache", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "resolver", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "resolverAddressesRequired", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "selfLiquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAggregatorWarningFlags", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicEquivalentForDexPricing", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicExchangeFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicMaxVolumePerBlock", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicTwapWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicVolatilityConsiderationWindow", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAtomicVolatilityUpdateThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setCollapseFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setCrossChainSynthTransferEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setCrossDomainMessageGasLimit", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setDebtSnapshotStaleTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setEtherWrapperBurnFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setEtherWrapperMaxETH", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setEtherWrapperMintFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setExchangeDynamicFeeRounds", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setExchangeDynamicFeeThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setExchangeDynamicFeeWeightDecay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setExchangeFeeRateForSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setExchangeMaxDynamicFee", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFeePeriodDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFlagReward", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setInteractionDelay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setIssuanceRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidateReward", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationDelay", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationEscrowDuration", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setLiquidationRatio", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setMinimumStakeTime", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setPriceDeviationThresholdFactor", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setPureChainlinkPriceForAtomicSwapsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setRateStalePeriod", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSelfLiquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setSnxLiquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTargetThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setTradingRewardsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setWaitingPeriodSecs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setWrapperBurnFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setWrapperMaxTokenAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setWrapperMintFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "snxLiquidationPenalty", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "targetThreshold", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tradingRewardsEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "waitingPeriodSecs", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "wrapperBurnFeeRate", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "wrapperMaxTokenAmount", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "wrapperMintFeeRate", + data: BytesLike + ): Result; + + events: { + "AggregatorWarningFlagsUpdated(address)": EventFragment; + "AtomicEquivalentForDexPricingUpdated(bytes32,address)": EventFragment; + "AtomicExchangeFeeUpdated(bytes32,uint256)": EventFragment; + "AtomicMaxVolumePerBlockUpdated(uint256)": EventFragment; + "AtomicTwapWindowUpdated(uint256)": EventFragment; + "AtomicVolatilityConsiderationWindowUpdated(bytes32,uint256)": EventFragment; + "AtomicVolatilityUpdateThresholdUpdated(bytes32,uint256)": EventFragment; + "CacheUpdated(bytes32,address)": EventFragment; + "CollapseFeeRateUpdated(uint256)": EventFragment; + "CrossChainSynthTransferEnabledUpdated(bytes32,uint256)": EventFragment; + "CrossDomainMessageGasLimitChanged(uint8,uint256)": EventFragment; + "DebtSnapshotStaleTimeUpdated(uint256)": EventFragment; + "EtherWrapperBurnFeeRateUpdated(uint256)": EventFragment; + "EtherWrapperMaxETHUpdated(uint256)": EventFragment; + "EtherWrapperMintFeeRateUpdated(uint256)": EventFragment; + "ExchangeDynamicFeeRoundsUpdated(uint256)": EventFragment; + "ExchangeDynamicFeeThresholdUpdated(uint256)": EventFragment; + "ExchangeDynamicFeeWeightDecayUpdated(uint256)": EventFragment; + "ExchangeFeeUpdated(bytes32,uint256)": EventFragment; + "ExchangeMaxDynamicFeeUpdated(uint256)": EventFragment; + "FeePeriodDurationUpdated(uint256)": EventFragment; + "FlagRewardUpdated(uint256)": EventFragment; + "InteractionDelayUpdated(uint256)": EventFragment; + "IssuanceRatioUpdated(uint256)": EventFragment; + "LiquidateRewardUpdated(uint256)": EventFragment; + "LiquidationDelayUpdated(uint256)": EventFragment; + "LiquidationEscrowDurationUpdated(uint256)": EventFragment; + "LiquidationPenaltyUpdated(uint256)": EventFragment; + "LiquidationRatioUpdated(uint256)": EventFragment; + "MinimumStakeTimeUpdated(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "PriceDeviationThresholdUpdated(uint256)": EventFragment; + "PureChainlinkPriceForAtomicSwapsEnabledUpdated(bytes32,bool)": EventFragment; + "RateStalePeriodUpdated(uint256)": EventFragment; + "SelfLiquidationPenaltyUpdated(uint256)": EventFragment; + "SnxLiquidationPenaltyUpdated(uint256)": EventFragment; + "TargetThresholdUpdated(uint256)": EventFragment; + "TradingRewardsEnabled(bool)": EventFragment; + "WaitingPeriodSecsUpdated(uint256)": EventFragment; + "WrapperBurnFeeRateUpdated(address,int256)": EventFragment; + "WrapperMaxTokenAmountUpdated(address,uint256)": EventFragment; + "WrapperMintFeeRateUpdated(address,int256)": EventFragment; + }; + + getEvent( + nameOrSignatureOrTopic: "AggregatorWarningFlagsUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "AtomicEquivalentForDexPricingUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "AtomicExchangeFeeUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "AtomicMaxVolumePerBlockUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "AtomicTwapWindowUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "AtomicVolatilityConsiderationWindowUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "AtomicVolatilityUpdateThresholdUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "CacheUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "CollapseFeeRateUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "CrossChainSynthTransferEnabledUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "CrossDomainMessageGasLimitChanged" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "DebtSnapshotStaleTimeUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "EtherWrapperBurnFeeRateUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "EtherWrapperMaxETHUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "EtherWrapperMintFeeRateUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "ExchangeDynamicFeeRoundsUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "ExchangeDynamicFeeThresholdUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "ExchangeDynamicFeeWeightDecayUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeFeeUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "ExchangeMaxDynamicFeeUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "FeePeriodDurationUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FlagRewardUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "InteractionDelayUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "IssuanceRatioUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidateRewardUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationDelayUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "LiquidationEscrowDurationUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationPenaltyUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "LiquidationRatioUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "MinimumStakeTimeUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "PriceDeviationThresholdUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "PureChainlinkPriceForAtomicSwapsEnabledUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "RateStalePeriodUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "SelfLiquidationPenaltyUpdated" + ): EventFragment; + getEvent( + nameOrSignatureOrTopic: "SnxLiquidationPenaltyUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "TargetThresholdUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "TradingRewardsEnabled"): EventFragment; + getEvent(nameOrSignatureOrTopic: "WaitingPeriodSecsUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "WrapperBurnFeeRateUpdated"): EventFragment; + getEvent( + nameOrSignatureOrTopic: "WrapperMaxTokenAmountUpdated" + ): EventFragment; + getEvent(nameOrSignatureOrTopic: "WrapperMintFeeRateUpdated"): EventFragment; } export interface AggregatorWarningFlagsUpdatedEventObject { - flags: string + flags: string; } export type AggregatorWarningFlagsUpdatedEvent = TypedEvent< - [string], - AggregatorWarningFlagsUpdatedEventObject -> + [string], + AggregatorWarningFlagsUpdatedEventObject +>; export type AggregatorWarningFlagsUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface AtomicEquivalentForDexPricingUpdatedEventObject { - synthKey: string - equivalent: string + synthKey: string; + equivalent: string; } export type AtomicEquivalentForDexPricingUpdatedEvent = TypedEvent< - [string, string], - AtomicEquivalentForDexPricingUpdatedEventObject -> + [string, string], + AtomicEquivalentForDexPricingUpdatedEventObject +>; export type AtomicEquivalentForDexPricingUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface AtomicExchangeFeeUpdatedEventObject { - synthKey: string - newExchangeFeeRate: BigNumber + synthKey: string; + newExchangeFeeRate: BigNumber; } export type AtomicExchangeFeeUpdatedEvent = TypedEvent< - [string, BigNumber], - AtomicExchangeFeeUpdatedEventObject -> + [string, BigNumber], + AtomicExchangeFeeUpdatedEventObject +>; -export type AtomicExchangeFeeUpdatedEventFilter = TypedEventFilter +export type AtomicExchangeFeeUpdatedEventFilter = + TypedEventFilter; export interface AtomicMaxVolumePerBlockUpdatedEventObject { - newMaxVolume: BigNumber + newMaxVolume: BigNumber; } export type AtomicMaxVolumePerBlockUpdatedEvent = TypedEvent< - [BigNumber], - AtomicMaxVolumePerBlockUpdatedEventObject -> + [BigNumber], + AtomicMaxVolumePerBlockUpdatedEventObject +>; export type AtomicMaxVolumePerBlockUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface AtomicTwapWindowUpdatedEventObject { - newWindow: BigNumber + newWindow: BigNumber; } export type AtomicTwapWindowUpdatedEvent = TypedEvent< - [BigNumber], - AtomicTwapWindowUpdatedEventObject -> + [BigNumber], + AtomicTwapWindowUpdatedEventObject +>; -export type AtomicTwapWindowUpdatedEventFilter = TypedEventFilter +export type AtomicTwapWindowUpdatedEventFilter = + TypedEventFilter; export interface AtomicVolatilityConsiderationWindowUpdatedEventObject { - synthKey: string - newVolatilityConsiderationWindow: BigNumber + synthKey: string; + newVolatilityConsiderationWindow: BigNumber; } export type AtomicVolatilityConsiderationWindowUpdatedEvent = TypedEvent< - [string, BigNumber], - AtomicVolatilityConsiderationWindowUpdatedEventObject -> + [string, BigNumber], + AtomicVolatilityConsiderationWindowUpdatedEventObject +>; export type AtomicVolatilityConsiderationWindowUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface AtomicVolatilityUpdateThresholdUpdatedEventObject { - synthKey: string - newVolatilityUpdateThreshold: BigNumber + synthKey: string; + newVolatilityUpdateThreshold: BigNumber; } export type AtomicVolatilityUpdateThresholdUpdatedEvent = TypedEvent< - [string, BigNumber], - AtomicVolatilityUpdateThresholdUpdatedEventObject -> + [string, BigNumber], + AtomicVolatilityUpdateThresholdUpdatedEventObject +>; export type AtomicVolatilityUpdateThresholdUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface CacheUpdatedEventObject { - name: string - destination: string + name: string; + destination: string; } -export type CacheUpdatedEvent = TypedEvent<[string, string], CacheUpdatedEventObject> +export type CacheUpdatedEvent = TypedEvent< + [string, string], + CacheUpdatedEventObject +>; -export type CacheUpdatedEventFilter = TypedEventFilter +export type CacheUpdatedEventFilter = TypedEventFilter; export interface CollapseFeeRateUpdatedEventObject { - collapseFeeRate: BigNumber + collapseFeeRate: BigNumber; } -export type CollapseFeeRateUpdatedEvent = TypedEvent<[BigNumber], CollapseFeeRateUpdatedEventObject> +export type CollapseFeeRateUpdatedEvent = TypedEvent< + [BigNumber], + CollapseFeeRateUpdatedEventObject +>; -export type CollapseFeeRateUpdatedEventFilter = TypedEventFilter +export type CollapseFeeRateUpdatedEventFilter = + TypedEventFilter; export interface CrossChainSynthTransferEnabledUpdatedEventObject { - synthKey: string - value: BigNumber + synthKey: string; + value: BigNumber; } export type CrossChainSynthTransferEnabledUpdatedEvent = TypedEvent< - [string, BigNumber], - CrossChainSynthTransferEnabledUpdatedEventObject -> + [string, BigNumber], + CrossChainSynthTransferEnabledUpdatedEventObject +>; export type CrossChainSynthTransferEnabledUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface CrossDomainMessageGasLimitChangedEventObject { - gasLimitType: number - newLimit: BigNumber + gasLimitType: number; + newLimit: BigNumber; } export type CrossDomainMessageGasLimitChangedEvent = TypedEvent< - [number, BigNumber], - CrossDomainMessageGasLimitChangedEventObject -> + [number, BigNumber], + CrossDomainMessageGasLimitChangedEventObject +>; export type CrossDomainMessageGasLimitChangedEventFilter = - TypedEventFilter + TypedEventFilter; export interface DebtSnapshotStaleTimeUpdatedEventObject { - debtSnapshotStaleTime: BigNumber + debtSnapshotStaleTime: BigNumber; } export type DebtSnapshotStaleTimeUpdatedEvent = TypedEvent< - [BigNumber], - DebtSnapshotStaleTimeUpdatedEventObject -> + [BigNumber], + DebtSnapshotStaleTimeUpdatedEventObject +>; export type DebtSnapshotStaleTimeUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface EtherWrapperBurnFeeRateUpdatedEventObject { - rate: BigNumber + rate: BigNumber; } export type EtherWrapperBurnFeeRateUpdatedEvent = TypedEvent< - [BigNumber], - EtherWrapperBurnFeeRateUpdatedEventObject -> + [BigNumber], + EtherWrapperBurnFeeRateUpdatedEventObject +>; export type EtherWrapperBurnFeeRateUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface EtherWrapperMaxETHUpdatedEventObject { - maxETH: BigNumber + maxETH: BigNumber; } export type EtherWrapperMaxETHUpdatedEvent = TypedEvent< - [BigNumber], - EtherWrapperMaxETHUpdatedEventObject -> + [BigNumber], + EtherWrapperMaxETHUpdatedEventObject +>; -export type EtherWrapperMaxETHUpdatedEventFilter = TypedEventFilter +export type EtherWrapperMaxETHUpdatedEventFilter = + TypedEventFilter; export interface EtherWrapperMintFeeRateUpdatedEventObject { - rate: BigNumber + rate: BigNumber; } export type EtherWrapperMintFeeRateUpdatedEvent = TypedEvent< - [BigNumber], - EtherWrapperMintFeeRateUpdatedEventObject -> + [BigNumber], + EtherWrapperMintFeeRateUpdatedEventObject +>; export type EtherWrapperMintFeeRateUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface ExchangeDynamicFeeRoundsUpdatedEventObject { - dynamicFeeRounds: BigNumber + dynamicFeeRounds: BigNumber; } export type ExchangeDynamicFeeRoundsUpdatedEvent = TypedEvent< - [BigNumber], - ExchangeDynamicFeeRoundsUpdatedEventObject -> + [BigNumber], + ExchangeDynamicFeeRoundsUpdatedEventObject +>; export type ExchangeDynamicFeeRoundsUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface ExchangeDynamicFeeThresholdUpdatedEventObject { - dynamicFeeThreshold: BigNumber + dynamicFeeThreshold: BigNumber; } export type ExchangeDynamicFeeThresholdUpdatedEvent = TypedEvent< - [BigNumber], - ExchangeDynamicFeeThresholdUpdatedEventObject -> + [BigNumber], + ExchangeDynamicFeeThresholdUpdatedEventObject +>; export type ExchangeDynamicFeeThresholdUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface ExchangeDynamicFeeWeightDecayUpdatedEventObject { - dynamicFeeWeightDecay: BigNumber + dynamicFeeWeightDecay: BigNumber; } export type ExchangeDynamicFeeWeightDecayUpdatedEvent = TypedEvent< - [BigNumber], - ExchangeDynamicFeeWeightDecayUpdatedEventObject -> + [BigNumber], + ExchangeDynamicFeeWeightDecayUpdatedEventObject +>; export type ExchangeDynamicFeeWeightDecayUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface ExchangeFeeUpdatedEventObject { - synthKey: string - newExchangeFeeRate: BigNumber + synthKey: string; + newExchangeFeeRate: BigNumber; } -export type ExchangeFeeUpdatedEvent = TypedEvent<[string, BigNumber], ExchangeFeeUpdatedEventObject> +export type ExchangeFeeUpdatedEvent = TypedEvent< + [string, BigNumber], + ExchangeFeeUpdatedEventObject +>; -export type ExchangeFeeUpdatedEventFilter = TypedEventFilter +export type ExchangeFeeUpdatedEventFilter = + TypedEventFilter; export interface ExchangeMaxDynamicFeeUpdatedEventObject { - maxDynamicFee: BigNumber + maxDynamicFee: BigNumber; } export type ExchangeMaxDynamicFeeUpdatedEvent = TypedEvent< - [BigNumber], - ExchangeMaxDynamicFeeUpdatedEventObject -> + [BigNumber], + ExchangeMaxDynamicFeeUpdatedEventObject +>; export type ExchangeMaxDynamicFeeUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface FeePeriodDurationUpdatedEventObject { - newFeePeriodDuration: BigNumber + newFeePeriodDuration: BigNumber; } export type FeePeriodDurationUpdatedEvent = TypedEvent< - [BigNumber], - FeePeriodDurationUpdatedEventObject -> + [BigNumber], + FeePeriodDurationUpdatedEventObject +>; -export type FeePeriodDurationUpdatedEventFilter = TypedEventFilter +export type FeePeriodDurationUpdatedEventFilter = + TypedEventFilter; export interface FlagRewardUpdatedEventObject { - newReward: BigNumber + newReward: BigNumber; } -export type FlagRewardUpdatedEvent = TypedEvent<[BigNumber], FlagRewardUpdatedEventObject> +export type FlagRewardUpdatedEvent = TypedEvent< + [BigNumber], + FlagRewardUpdatedEventObject +>; -export type FlagRewardUpdatedEventFilter = TypedEventFilter +export type FlagRewardUpdatedEventFilter = + TypedEventFilter; export interface InteractionDelayUpdatedEventObject { - interactionDelay: BigNumber + interactionDelay: BigNumber; } export type InteractionDelayUpdatedEvent = TypedEvent< - [BigNumber], - InteractionDelayUpdatedEventObject -> + [BigNumber], + InteractionDelayUpdatedEventObject +>; -export type InteractionDelayUpdatedEventFilter = TypedEventFilter +export type InteractionDelayUpdatedEventFilter = + TypedEventFilter; export interface IssuanceRatioUpdatedEventObject { - newRatio: BigNumber + newRatio: BigNumber; } -export type IssuanceRatioUpdatedEvent = TypedEvent<[BigNumber], IssuanceRatioUpdatedEventObject> +export type IssuanceRatioUpdatedEvent = TypedEvent< + [BigNumber], + IssuanceRatioUpdatedEventObject +>; -export type IssuanceRatioUpdatedEventFilter = TypedEventFilter +export type IssuanceRatioUpdatedEventFilter = + TypedEventFilter; export interface LiquidateRewardUpdatedEventObject { - newReward: BigNumber + newReward: BigNumber; } -export type LiquidateRewardUpdatedEvent = TypedEvent<[BigNumber], LiquidateRewardUpdatedEventObject> +export type LiquidateRewardUpdatedEvent = TypedEvent< + [BigNumber], + LiquidateRewardUpdatedEventObject +>; -export type LiquidateRewardUpdatedEventFilter = TypedEventFilter +export type LiquidateRewardUpdatedEventFilter = + TypedEventFilter; export interface LiquidationDelayUpdatedEventObject { - newDelay: BigNumber + newDelay: BigNumber; } export type LiquidationDelayUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationDelayUpdatedEventObject -> + [BigNumber], + LiquidationDelayUpdatedEventObject +>; -export type LiquidationDelayUpdatedEventFilter = TypedEventFilter +export type LiquidationDelayUpdatedEventFilter = + TypedEventFilter; export interface LiquidationEscrowDurationUpdatedEventObject { - newDuration: BigNumber + newDuration: BigNumber; } export type LiquidationEscrowDurationUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationEscrowDurationUpdatedEventObject -> + [BigNumber], + LiquidationEscrowDurationUpdatedEventObject +>; export type LiquidationEscrowDurationUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface LiquidationPenaltyUpdatedEventObject { - newPenalty: BigNumber + newPenalty: BigNumber; } export type LiquidationPenaltyUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationPenaltyUpdatedEventObject -> + [BigNumber], + LiquidationPenaltyUpdatedEventObject +>; -export type LiquidationPenaltyUpdatedEventFilter = TypedEventFilter +export type LiquidationPenaltyUpdatedEventFilter = + TypedEventFilter; export interface LiquidationRatioUpdatedEventObject { - newRatio: BigNumber + newRatio: BigNumber; } export type LiquidationRatioUpdatedEvent = TypedEvent< - [BigNumber], - LiquidationRatioUpdatedEventObject -> + [BigNumber], + LiquidationRatioUpdatedEventObject +>; -export type LiquidationRatioUpdatedEventFilter = TypedEventFilter +export type LiquidationRatioUpdatedEventFilter = + TypedEventFilter; export interface MinimumStakeTimeUpdatedEventObject { - minimumStakeTime: BigNumber + minimumStakeTime: BigNumber; } export type MinimumStakeTimeUpdatedEvent = TypedEvent< - [BigNumber], - MinimumStakeTimeUpdatedEventObject -> + [BigNumber], + MinimumStakeTimeUpdatedEventObject +>; -export type MinimumStakeTimeUpdatedEventFilter = TypedEventFilter +export type MinimumStakeTimeUpdatedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface PriceDeviationThresholdUpdatedEventObject { - threshold: BigNumber + threshold: BigNumber; } export type PriceDeviationThresholdUpdatedEvent = TypedEvent< - [BigNumber], - PriceDeviationThresholdUpdatedEventObject -> + [BigNumber], + PriceDeviationThresholdUpdatedEventObject +>; export type PriceDeviationThresholdUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject { - synthKey: string - enabled: boolean + synthKey: string; + enabled: boolean; } export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEvent = TypedEvent< - [string, boolean], - PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject -> + [string, boolean], + PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventObject +>; export type PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface RateStalePeriodUpdatedEventObject { - rateStalePeriod: BigNumber + rateStalePeriod: BigNumber; } -export type RateStalePeriodUpdatedEvent = TypedEvent<[BigNumber], RateStalePeriodUpdatedEventObject> +export type RateStalePeriodUpdatedEvent = TypedEvent< + [BigNumber], + RateStalePeriodUpdatedEventObject +>; -export type RateStalePeriodUpdatedEventFilter = TypedEventFilter +export type RateStalePeriodUpdatedEventFilter = + TypedEventFilter; export interface SelfLiquidationPenaltyUpdatedEventObject { - newPenalty: BigNumber + newPenalty: BigNumber; } export type SelfLiquidationPenaltyUpdatedEvent = TypedEvent< - [BigNumber], - SelfLiquidationPenaltyUpdatedEventObject -> + [BigNumber], + SelfLiquidationPenaltyUpdatedEventObject +>; export type SelfLiquidationPenaltyUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface SnxLiquidationPenaltyUpdatedEventObject { - newPenalty: BigNumber + newPenalty: BigNumber; } export type SnxLiquidationPenaltyUpdatedEvent = TypedEvent< - [BigNumber], - SnxLiquidationPenaltyUpdatedEventObject -> + [BigNumber], + SnxLiquidationPenaltyUpdatedEventObject +>; export type SnxLiquidationPenaltyUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface TargetThresholdUpdatedEventObject { - newTargetThreshold: BigNumber + newTargetThreshold: BigNumber; } -export type TargetThresholdUpdatedEvent = TypedEvent<[BigNumber], TargetThresholdUpdatedEventObject> +export type TargetThresholdUpdatedEvent = TypedEvent< + [BigNumber], + TargetThresholdUpdatedEventObject +>; -export type TargetThresholdUpdatedEventFilter = TypedEventFilter +export type TargetThresholdUpdatedEventFilter = + TypedEventFilter; export interface TradingRewardsEnabledEventObject { - enabled: boolean + enabled: boolean; } -export type TradingRewardsEnabledEvent = TypedEvent<[boolean], TradingRewardsEnabledEventObject> +export type TradingRewardsEnabledEvent = TypedEvent< + [boolean], + TradingRewardsEnabledEventObject +>; -export type TradingRewardsEnabledEventFilter = TypedEventFilter +export type TradingRewardsEnabledEventFilter = + TypedEventFilter; export interface WaitingPeriodSecsUpdatedEventObject { - waitingPeriodSecs: BigNumber + waitingPeriodSecs: BigNumber; } export type WaitingPeriodSecsUpdatedEvent = TypedEvent< - [BigNumber], - WaitingPeriodSecsUpdatedEventObject -> + [BigNumber], + WaitingPeriodSecsUpdatedEventObject +>; -export type WaitingPeriodSecsUpdatedEventFilter = TypedEventFilter +export type WaitingPeriodSecsUpdatedEventFilter = + TypedEventFilter; export interface WrapperBurnFeeRateUpdatedEventObject { - wrapper: string - rate: BigNumber + wrapper: string; + rate: BigNumber; } export type WrapperBurnFeeRateUpdatedEvent = TypedEvent< - [string, BigNumber], - WrapperBurnFeeRateUpdatedEventObject -> + [string, BigNumber], + WrapperBurnFeeRateUpdatedEventObject +>; -export type WrapperBurnFeeRateUpdatedEventFilter = TypedEventFilter +export type WrapperBurnFeeRateUpdatedEventFilter = + TypedEventFilter; export interface WrapperMaxTokenAmountUpdatedEventObject { - wrapper: string - maxTokenAmount: BigNumber + wrapper: string; + maxTokenAmount: BigNumber; } export type WrapperMaxTokenAmountUpdatedEvent = TypedEvent< - [string, BigNumber], - WrapperMaxTokenAmountUpdatedEventObject -> + [string, BigNumber], + WrapperMaxTokenAmountUpdatedEventObject +>; export type WrapperMaxTokenAmountUpdatedEventFilter = - TypedEventFilter + TypedEventFilter; export interface WrapperMintFeeRateUpdatedEventObject { - wrapper: string - rate: BigNumber + wrapper: string; + rate: BigNumber; } export type WrapperMintFeeRateUpdatedEvent = TypedEvent< - [string, BigNumber], - WrapperMintFeeRateUpdatedEventObject -> + [string, BigNumber], + WrapperMintFeeRateUpdatedEventObject +>; -export type WrapperMintFeeRateUpdatedEventFilter = TypedEventFilter +export type WrapperMintFeeRateUpdatedEventFilter = + TypedEventFilter; export interface SystemSettings extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SystemSettingsInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]> - - atomicEquivalentForDexPricing( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[string]> - - atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise<[BigNumber]> - - atomicTwapWindow(overrides?: CallOverrides): Promise<[BigNumber]> - - atomicVolatilityConsiderationWindow( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - atomicVolatilityUpdateThreshold( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise<[BigNumber]> - - crossChainSynthTransferEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - crossDomainMessageGasLimit( - gasLimitType: BigNumberish, - overrides?: CallOverrides - ): Promise<[BigNumber]> - - debtSnapshotStaleTime(overrides?: CallOverrides): Promise<[BigNumber]> - - etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise<[BigNumber]> - - etherWrapperMaxETH(overrides?: CallOverrides): Promise<[BigNumber]> - - etherWrapperMintFeeRate(overrides?: CallOverrides): Promise<[BigNumber]> - - exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise<[BigNumber]> - - exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise<[BigNumber]> - - exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise<[BigNumber]> - - exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]> - - exchangeMaxDynamicFee(overrides?: CallOverrides): Promise<[BigNumber]> - - feePeriodDuration(overrides?: CallOverrides): Promise<[BigNumber]> - - flagReward(overrides?: CallOverrides): Promise<[BigNumber]> - - interactionDelay(collateral: string, overrides?: CallOverrides): Promise<[BigNumber]> - - isResolverCached(overrides?: CallOverrides): Promise<[boolean]> - - issuanceRatio(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidateReward(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationDelay(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationEscrowDuration(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]> - - liquidationRatio(overrides?: CallOverrides): Promise<[BigNumber]> - - minimumStakeTime(overrides?: CallOverrides): Promise<[BigNumber]> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise<[BigNumber]> - - pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean]> - - rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]> - - rebuildCache(overrides?: Overrides & { from?: string }): Promise - - resolver(overrides?: CallOverrides): Promise<[string]> - - resolverAddressesRequired( - overrides?: CallOverrides - ): Promise<[string[]] & { addresses: string[] }> - - selfLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]> - - setAggregatorWarningFlags( - _flags: string, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicEquivalentForDexPricing( - _currencyKey: BytesLike, - _equivalent: string, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicExchangeFeeRate( - _currencyKey: BytesLike, - _exchangeFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicMaxVolumePerBlock( - _maxVolume: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicTwapWindow( - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicVolatilityConsiderationWindow( - _currencyKey: BytesLike, - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setAtomicVolatilityUpdateThreshold( - _currencyKey: BytesLike, - _threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setCollapseFeeRate( - _collateral: string, - _collapseFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setCrossChainSynthTransferEnabled( - _currencyKey: BytesLike, - _value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setCrossDomainMessageGasLimit( - _gasLimitType: BigNumberish, - _crossDomainMessageGasLimit: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setDebtSnapshotStaleTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperBurnFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMaxETH( - _maxETH: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMintFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeRounds( - rounds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeThreshold( - threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeWeightDecay( - weightDecay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeFeeRateForSynths( - synthKeys: BytesLike[], - exchangeFeeRates: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeMaxDynamicFee( - maxFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFeePeriodDuration( - _feePeriodDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFlagReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setInteractionDelay( - _collateral: string, - _interactionDelay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setIssuanceRatio( - ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidateReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationDelay( - time: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationEscrowDuration( - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationRatio( - _liquidationRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinimumStakeTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: BytesLike, - _enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setRateStalePeriod( - period: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSelfLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSnxLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTargetThreshold( - percent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTradingRewardsEnabled( - _tradingRewardsEnabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setWaitingPeriodSecs( - _waitingPeriodSecs: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperBurnFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperMaxTokenAmount( - _wrapper: string, - _maxTokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperMintFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - snxLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]> - - targetThreshold(overrides?: CallOverrides): Promise<[BigNumber]> - - tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]> - - waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]> - - wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> - - wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> - - wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise<[BigNumber]> - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - aggregatorWarningFlags(overrides?: CallOverrides): Promise - - atomicEquivalentForDexPricing(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise - - atomicTwapWindow(overrides?: CallOverrides): Promise - - atomicVolatilityConsiderationWindow( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - atomicVolatilityUpdateThreshold( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise - - crossChainSynthTransferEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - crossDomainMessageGasLimit( - gasLimitType: BigNumberish, - overrides?: CallOverrides - ): Promise - - debtSnapshotStaleTime(overrides?: CallOverrides): Promise - - etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise - - etherWrapperMaxETH(overrides?: CallOverrides): Promise - - etherWrapperMintFeeRate(overrides?: CallOverrides): Promise - - exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise - - exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise - - exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise - - exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - exchangeMaxDynamicFee(overrides?: CallOverrides): Promise - - feePeriodDuration(overrides?: CallOverrides): Promise - - flagReward(overrides?: CallOverrides): Promise - - interactionDelay(collateral: string, overrides?: CallOverrides): Promise - - isResolverCached(overrides?: CallOverrides): Promise - - issuanceRatio(overrides?: CallOverrides): Promise - - liquidateReward(overrides?: CallOverrides): Promise - - liquidationDelay(overrides?: CallOverrides): Promise - - liquidationEscrowDuration(overrides?: CallOverrides): Promise - - liquidationPenalty(overrides?: CallOverrides): Promise - - liquidationRatio(overrides?: CallOverrides): Promise - - minimumStakeTime(overrides?: CallOverrides): Promise - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise - - pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - rateStalePeriod(overrides?: CallOverrides): Promise + interface: SystemSettingsInterface; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - resolver(overrides?: CallOverrides): Promise + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - resolverAddressesRequired(overrides?: CallOverrides): Promise + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; - selfLiquidationPenalty(overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - setAggregatorWarningFlags( - _flags: string, - overrides?: Overrides & { from?: string } - ): Promise + aggregatorWarningFlags(overrides?: CallOverrides): Promise<[string]>; - setAtomicEquivalentForDexPricing( - _currencyKey: BytesLike, - _equivalent: string, - overrides?: Overrides & { from?: string } - ): Promise + atomicEquivalentForDexPricing( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[string]>; - setAtomicExchangeFeeRate( - _currencyKey: BytesLike, - _exchangeFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicExchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setAtomicMaxVolumePerBlock( - _maxVolume: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise<[BigNumber]>; - setAtomicTwapWindow( - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicTwapWindow(overrides?: CallOverrides): Promise<[BigNumber]>; - setAtomicVolatilityConsiderationWindow( - _currencyKey: BytesLike, - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicVolatilityConsiderationWindow( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setAtomicVolatilityUpdateThreshold( - _currencyKey: BytesLike, - _threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicVolatilityUpdateThreshold( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setCollapseFeeRate( - _collateral: string, - _collapseFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + collapseFeeRate( + collateral: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setCrossChainSynthTransferEnabled( - _currencyKey: BytesLike, - _value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + crossChainSynthTransferEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setCrossDomainMessageGasLimit( - _gasLimitType: BigNumberish, - _crossDomainMessageGasLimit: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setDebtSnapshotStaleTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperBurnFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMaxETH( - _maxETH: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMintFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeRounds( - rounds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeThreshold( - threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeWeightDecay( - weightDecay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeFeeRateForSynths( - synthKeys: BytesLike[], - exchangeFeeRates: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeMaxDynamicFee( - maxFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFeePeriodDuration( - _feePeriodDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFlagReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setInteractionDelay( - _collateral: string, - _interactionDelay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setIssuanceRatio( - ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidateReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationDelay( - time: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationEscrowDuration( - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationRatio( - _liquidationRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinimumStakeTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: BytesLike, - _enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setRateStalePeriod( - period: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSelfLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + crossDomainMessageGasLimit( + gasLimitType: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setSnxLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + debtSnapshotStaleTime(overrides?: CallOverrides): Promise<[BigNumber]>; - setTargetThreshold( - percent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise<[BigNumber]>; - setTradingRewardsEnabled( - _tradingRewardsEnabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperMaxETH(overrides?: CallOverrides): Promise<[BigNumber]>; - setWaitingPeriodSecs( - _waitingPeriodSecs: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperMintFeeRate(overrides?: CallOverrides): Promise<[BigNumber]>; - setWrapperBurnFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise<[BigNumber]>; - setWrapperMaxTokenAmount( - _wrapper: string, - _maxTokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeThreshold( + overrides?: CallOverrides + ): Promise<[BigNumber]>; - setWrapperMintFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeWeightDecay( + overrides?: CallOverrides + ): Promise<[BigNumber]>; - snxLiquidationPenalty(overrides?: CallOverrides): Promise + exchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - targetThreshold(overrides?: CallOverrides): Promise + exchangeMaxDynamicFee(overrides?: CallOverrides): Promise<[BigNumber]>; - tradingRewardsEnabled(overrides?: CallOverrides): Promise + feePeriodDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - waitingPeriodSecs(overrides?: CallOverrides): Promise + flagReward(overrides?: CallOverrides): Promise<[BigNumber]>; - wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise + interactionDelay( + collateral: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise<[boolean]>; - wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise + issuanceRatio(overrides?: CallOverrides): Promise<[BigNumber]>; - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + liquidateReward(overrides?: CallOverrides): Promise<[BigNumber]>; - acceptOwnership(overrides?: CallOverrides): Promise + liquidationDelay(overrides?: CallOverrides): Promise<[BigNumber]>; - aggregatorWarningFlags(overrides?: CallOverrides): Promise + liquidationEscrowDuration(overrides?: CallOverrides): Promise<[BigNumber]>; - atomicEquivalentForDexPricing( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + liquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]>; - atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + liquidationRatio(overrides?: CallOverrides): Promise<[BigNumber]>; - atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise + minimumStakeTime(overrides?: CallOverrides): Promise<[BigNumber]>; - atomicTwapWindow(overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - atomicVolatilityConsiderationWindow( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; - atomicVolatilityUpdateThreshold( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + owner(overrides?: CallOverrides): Promise<[string]>; - collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise<[BigNumber]>; - crossChainSynthTransferEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + pureChainlinkPriceForAtomicSwapsEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - crossDomainMessageGasLimit( - gasLimitType: BigNumberish, - overrides?: CallOverrides - ): Promise + rateStalePeriod(overrides?: CallOverrides): Promise<[BigNumber]>; - debtSnapshotStaleTime(overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise<[string]>; - etherWrapperMaxETH(overrides?: CallOverrides): Promise + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise<[string[]] & { addresses: string[] }>; - etherWrapperMintFeeRate(overrides?: CallOverrides): Promise + selfLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]>; - exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise + setAggregatorWarningFlags( + _flags: string, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise + setAtomicEquivalentForDexPricing( + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise + setAtomicExchangeFeeRate( + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + setAtomicMaxVolumePerBlock( + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeMaxDynamicFee(overrides?: CallOverrides): Promise + setAtomicTwapWindow( + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicVolatilityConsiderationWindow( + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicVolatilityUpdateThreshold( + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCollapseFeeRate( + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossChainSynthTransferEnabled( + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossDomainMessageGasLimit( + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setDebtSnapshotStaleTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperBurnFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMaxETH( + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMintFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeRounds( + rounds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeThreshold( + threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeWeightDecay( + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeFeeRateForSynths( + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeMaxDynamicFee( + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeePeriodDuration( + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFlagReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setInteractionDelay( + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setIssuanceRatio( + ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidateReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationDelay( + time: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationEscrowDuration( + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationRatio( + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinimumStakeTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPriceDeviationThresholdFactor( + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPureChainlinkPriceForAtomicSwapsEnabled( + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setRateStalePeriod( + period: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSelfLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSnxLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTargetThreshold( + percent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTradingRewardsEnabled( + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setWaitingPeriodSecs( + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperBurnFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMaxTokenAmount( + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - feePeriodDuration(overrides?: CallOverrides): Promise + setWrapperMintFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - flagReward(overrides?: CallOverrides): Promise + snxLiquidationPenalty(overrides?: CallOverrides): Promise<[BigNumber]>; - interactionDelay(collateral: string, overrides?: CallOverrides): Promise + targetThreshold(overrides?: CallOverrides): Promise<[BigNumber]>; - isResolverCached(overrides?: CallOverrides): Promise + tradingRewardsEnabled(overrides?: CallOverrides): Promise<[boolean]>; - issuanceRatio(overrides?: CallOverrides): Promise + waitingPeriodSecs(overrides?: CallOverrides): Promise<[BigNumber]>; - liquidateReward(overrides?: CallOverrides): Promise + wrapperBurnFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - liquidationDelay(overrides?: CallOverrides): Promise + wrapperMaxTokenAmount( + wrapper: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; - liquidationEscrowDuration(overrides?: CallOverrides): Promise + wrapperMintFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + }; - liquidationPenalty(overrides?: CallOverrides): Promise + CONTRACT_NAME(overrides?: CallOverrides): Promise; - liquidationRatio(overrides?: CallOverrides): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - minimumStakeTime(overrides?: CallOverrides): Promise + aggregatorWarningFlags(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise + atomicEquivalentForDexPricing( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + atomicExchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise; - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + atomicTwapWindow(overrides?: CallOverrides): Promise; - pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + atomicVolatilityConsiderationWindow( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - rateStalePeriod(overrides?: CallOverrides): Promise + atomicVolatilityUpdateThreshold( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - rebuildCache(overrides?: CallOverrides): Promise + collapseFeeRate( + collateral: string, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + crossChainSynthTransferEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + crossDomainMessageGasLimit( + gasLimitType: BigNumberish, + overrides?: CallOverrides + ): Promise; - selfLiquidationPenalty(overrides?: CallOverrides): Promise + debtSnapshotStaleTime(overrides?: CallOverrides): Promise; - setAggregatorWarningFlags(_flags: string, overrides?: CallOverrides): Promise + etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise; - setAtomicEquivalentForDexPricing( - _currencyKey: BytesLike, - _equivalent: string, - overrides?: CallOverrides - ): Promise + etherWrapperMaxETH(overrides?: CallOverrides): Promise; - setAtomicExchangeFeeRate( - _currencyKey: BytesLike, - _exchangeFeeRate: BigNumberish, - overrides?: CallOverrides - ): Promise + etherWrapperMintFeeRate(overrides?: CallOverrides): Promise; - setAtomicMaxVolumePerBlock(_maxVolume: BigNumberish, overrides?: CallOverrides): Promise + exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise; - setAtomicTwapWindow(_window: BigNumberish, overrides?: CallOverrides): Promise + exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise; - setAtomicVolatilityConsiderationWindow( - _currencyKey: BytesLike, - _window: BigNumberish, - overrides?: CallOverrides - ): Promise + exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise; - setAtomicVolatilityUpdateThreshold( - _currencyKey: BytesLike, - _threshold: BigNumberish, - overrides?: CallOverrides - ): Promise + exchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setCollapseFeeRate( - _collateral: string, - _collapseFeeRate: BigNumberish, - overrides?: CallOverrides - ): Promise + exchangeMaxDynamicFee(overrides?: CallOverrides): Promise; - setCrossChainSynthTransferEnabled( - _currencyKey: BytesLike, - _value: BigNumberish, - overrides?: CallOverrides - ): Promise + feePeriodDuration(overrides?: CallOverrides): Promise; - setCrossDomainMessageGasLimit( - _gasLimitType: BigNumberish, - _crossDomainMessageGasLimit: BigNumberish, - overrides?: CallOverrides - ): Promise + flagReward(overrides?: CallOverrides): Promise; - setDebtSnapshotStaleTime(_seconds: BigNumberish, overrides?: CallOverrides): Promise + interactionDelay( + collateral: string, + overrides?: CallOverrides + ): Promise; - setEtherWrapperBurnFeeRate(_rate: BigNumberish, overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - setEtherWrapperMaxETH(_maxETH: BigNumberish, overrides?: CallOverrides): Promise + issuanceRatio(overrides?: CallOverrides): Promise; - setEtherWrapperMintFeeRate(_rate: BigNumberish, overrides?: CallOverrides): Promise + liquidateReward(overrides?: CallOverrides): Promise; - setExchangeDynamicFeeRounds(rounds: BigNumberish, overrides?: CallOverrides): Promise + liquidationDelay(overrides?: CallOverrides): Promise; - setExchangeDynamicFeeThreshold( - threshold: BigNumberish, - overrides?: CallOverrides - ): Promise + liquidationEscrowDuration(overrides?: CallOverrides): Promise; - setExchangeDynamicFeeWeightDecay( - weightDecay: BigNumberish, - overrides?: CallOverrides - ): Promise + liquidationPenalty(overrides?: CallOverrides): Promise; - setExchangeFeeRateForSynths( - synthKeys: BytesLike[], - exchangeFeeRates: BigNumberish[], - overrides?: CallOverrides - ): Promise + liquidationRatio(overrides?: CallOverrides): Promise; - setExchangeMaxDynamicFee(maxFee: BigNumberish, overrides?: CallOverrides): Promise + minimumStakeTime(overrides?: CallOverrides): Promise; - setFeePeriodDuration(_feePeriodDuration: BigNumberish, overrides?: CallOverrides): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - setFlagReward(reward: BigNumberish, overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - setInteractionDelay( - _collateral: string, - _interactionDelay: BigNumberish, - overrides?: CallOverrides - ): Promise + owner(overrides?: CallOverrides): Promise; - setIssuanceRatio(ratio: BigNumberish, overrides?: CallOverrides): Promise + priceDeviationThresholdFactor(overrides?: CallOverrides): Promise; - setLiquidateReward(reward: BigNumberish, overrides?: CallOverrides): Promise + pureChainlinkPriceForAtomicSwapsEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setLiquidationDelay(time: BigNumberish, overrides?: CallOverrides): Promise + rateStalePeriod(overrides?: CallOverrides): Promise; - setLiquidationEscrowDuration(duration: BigNumberish, overrides?: CallOverrides): Promise + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; - setLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - setLiquidationRatio(_liquidationRatio: BigNumberish, overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - setMinimumStakeTime(_seconds: BigNumberish, overrides?: CallOverrides): Promise + selfLiquidationPenalty(overrides?: CallOverrides): Promise; - setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: BigNumberish, - overrides?: CallOverrides - ): Promise + setAggregatorWarningFlags( + _flags: string, + overrides?: Overrides & { from?: string } + ): Promise; - setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: BytesLike, - _enabled: boolean, - overrides?: CallOverrides - ): Promise + setAtomicEquivalentForDexPricing( + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } + ): Promise; - setRateStalePeriod(period: BigNumberish, overrides?: CallOverrides): Promise + setAtomicExchangeFeeRate( + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setSelfLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise + setAtomicMaxVolumePerBlock( + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setSnxLiquidationPenalty(penalty: BigNumberish, overrides?: CallOverrides): Promise + setAtomicTwapWindow( + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTargetThreshold(percent: BigNumberish, overrides?: CallOverrides): Promise + setAtomicVolatilityConsiderationWindow( + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setTradingRewardsEnabled( - _tradingRewardsEnabled: boolean, - overrides?: CallOverrides - ): Promise + setAtomicVolatilityUpdateThreshold( + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setWaitingPeriodSecs(_waitingPeriodSecs: BigNumberish, overrides?: CallOverrides): Promise + setCollapseFeeRate( + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setWrapperBurnFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: CallOverrides - ): Promise + setCrossChainSynthTransferEnabled( + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossDomainMessageGasLimit( + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setDebtSnapshotStaleTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperBurnFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMaxETH( + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMintFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeRounds( + rounds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeThreshold( + threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeWeightDecay( + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeFeeRateForSynths( + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeMaxDynamicFee( + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeePeriodDuration( + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFlagReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setInteractionDelay( + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setIssuanceRatio( + ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidateReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationDelay( + time: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationEscrowDuration( + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationRatio( + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinimumStakeTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPriceDeviationThresholdFactor( + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPureChainlinkPriceForAtomicSwapsEnabled( + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setRateStalePeriod( + period: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSelfLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSnxLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTargetThreshold( + percent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTradingRewardsEnabled( + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setWaitingPeriodSecs( + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperBurnFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMaxTokenAmount( + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setWrapperMaxTokenAmount( - _wrapper: string, - _maxTokenAmount: BigNumberish, - overrides?: CallOverrides - ): Promise + setWrapperMintFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - setWrapperMintFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: CallOverrides - ): Promise + snxLiquidationPenalty(overrides?: CallOverrides): Promise; - snxLiquidationPenalty(overrides?: CallOverrides): Promise + targetThreshold(overrides?: CallOverrides): Promise; - targetThreshold(overrides?: CallOverrides): Promise + tradingRewardsEnabled(overrides?: CallOverrides): Promise; - tradingRewardsEnabled(overrides?: CallOverrides): Promise + waitingPeriodSecs(overrides?: CallOverrides): Promise; - waitingPeriodSecs(overrides?: CallOverrides): Promise + wrapperBurnFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; - wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise + wrapperMaxTokenAmount( + wrapper: string, + overrides?: CallOverrides + ): Promise; - wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - - wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise - } - - filters: { - 'AggregatorWarningFlagsUpdated(address)'(flags?: null): AggregatorWarningFlagsUpdatedEventFilter - AggregatorWarningFlagsUpdated(flags?: null): AggregatorWarningFlagsUpdatedEventFilter - - 'AtomicEquivalentForDexPricingUpdated(bytes32,address)'( - synthKey?: null, - equivalent?: null - ): AtomicEquivalentForDexPricingUpdatedEventFilter - AtomicEquivalentForDexPricingUpdated( - synthKey?: null, - equivalent?: null - ): AtomicEquivalentForDexPricingUpdatedEventFilter - - 'AtomicExchangeFeeUpdated(bytes32,uint256)'( - synthKey?: null, - newExchangeFeeRate?: null - ): AtomicExchangeFeeUpdatedEventFilter - AtomicExchangeFeeUpdated( - synthKey?: null, - newExchangeFeeRate?: null - ): AtomicExchangeFeeUpdatedEventFilter - - 'AtomicMaxVolumePerBlockUpdated(uint256)'( - newMaxVolume?: null - ): AtomicMaxVolumePerBlockUpdatedEventFilter - AtomicMaxVolumePerBlockUpdated(newMaxVolume?: null): AtomicMaxVolumePerBlockUpdatedEventFilter - - 'AtomicTwapWindowUpdated(uint256)'(newWindow?: null): AtomicTwapWindowUpdatedEventFilter - AtomicTwapWindowUpdated(newWindow?: null): AtomicTwapWindowUpdatedEventFilter - - 'AtomicVolatilityConsiderationWindowUpdated(bytes32,uint256)'( - synthKey?: null, - newVolatilityConsiderationWindow?: null - ): AtomicVolatilityConsiderationWindowUpdatedEventFilter - AtomicVolatilityConsiderationWindowUpdated( - synthKey?: null, - newVolatilityConsiderationWindow?: null - ): AtomicVolatilityConsiderationWindowUpdatedEventFilter - - 'AtomicVolatilityUpdateThresholdUpdated(bytes32,uint256)'( - synthKey?: null, - newVolatilityUpdateThreshold?: null - ): AtomicVolatilityUpdateThresholdUpdatedEventFilter - AtomicVolatilityUpdateThresholdUpdated( - synthKey?: null, - newVolatilityUpdateThreshold?: null - ): AtomicVolatilityUpdateThresholdUpdatedEventFilter - - 'CacheUpdated(bytes32,address)'(name?: null, destination?: null): CacheUpdatedEventFilter - CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter - - 'CollapseFeeRateUpdated(uint256)'(collapseFeeRate?: null): CollapseFeeRateUpdatedEventFilter - CollapseFeeRateUpdated(collapseFeeRate?: null): CollapseFeeRateUpdatedEventFilter - - 'CrossChainSynthTransferEnabledUpdated(bytes32,uint256)'( - synthKey?: null, - value?: null - ): CrossChainSynthTransferEnabledUpdatedEventFilter - CrossChainSynthTransferEnabledUpdated( - synthKey?: null, - value?: null - ): CrossChainSynthTransferEnabledUpdatedEventFilter - - 'CrossDomainMessageGasLimitChanged(uint8,uint256)'( - gasLimitType?: null, - newLimit?: null - ): CrossDomainMessageGasLimitChangedEventFilter - CrossDomainMessageGasLimitChanged( - gasLimitType?: null, - newLimit?: null - ): CrossDomainMessageGasLimitChangedEventFilter - - 'DebtSnapshotStaleTimeUpdated(uint256)'( - debtSnapshotStaleTime?: null - ): DebtSnapshotStaleTimeUpdatedEventFilter - DebtSnapshotStaleTimeUpdated( - debtSnapshotStaleTime?: null - ): DebtSnapshotStaleTimeUpdatedEventFilter - - 'EtherWrapperBurnFeeRateUpdated(uint256)'( - rate?: null - ): EtherWrapperBurnFeeRateUpdatedEventFilter - EtherWrapperBurnFeeRateUpdated(rate?: null): EtherWrapperBurnFeeRateUpdatedEventFilter - - 'EtherWrapperMaxETHUpdated(uint256)'(maxETH?: null): EtherWrapperMaxETHUpdatedEventFilter - EtherWrapperMaxETHUpdated(maxETH?: null): EtherWrapperMaxETHUpdatedEventFilter - - 'EtherWrapperMintFeeRateUpdated(uint256)'( - rate?: null - ): EtherWrapperMintFeeRateUpdatedEventFilter - EtherWrapperMintFeeRateUpdated(rate?: null): EtherWrapperMintFeeRateUpdatedEventFilter - - 'ExchangeDynamicFeeRoundsUpdated(uint256)'( - dynamicFeeRounds?: null - ): ExchangeDynamicFeeRoundsUpdatedEventFilter - ExchangeDynamicFeeRoundsUpdated( - dynamicFeeRounds?: null - ): ExchangeDynamicFeeRoundsUpdatedEventFilter - - 'ExchangeDynamicFeeThresholdUpdated(uint256)'( - dynamicFeeThreshold?: null - ): ExchangeDynamicFeeThresholdUpdatedEventFilter - ExchangeDynamicFeeThresholdUpdated( - dynamicFeeThreshold?: null - ): ExchangeDynamicFeeThresholdUpdatedEventFilter - - 'ExchangeDynamicFeeWeightDecayUpdated(uint256)'( - dynamicFeeWeightDecay?: null - ): ExchangeDynamicFeeWeightDecayUpdatedEventFilter - ExchangeDynamicFeeWeightDecayUpdated( - dynamicFeeWeightDecay?: null - ): ExchangeDynamicFeeWeightDecayUpdatedEventFilter - - 'ExchangeFeeUpdated(bytes32,uint256)'( - synthKey?: null, - newExchangeFeeRate?: null - ): ExchangeFeeUpdatedEventFilter - ExchangeFeeUpdated(synthKey?: null, newExchangeFeeRate?: null): ExchangeFeeUpdatedEventFilter - - 'ExchangeMaxDynamicFeeUpdated(uint256)'( - maxDynamicFee?: null - ): ExchangeMaxDynamicFeeUpdatedEventFilter - ExchangeMaxDynamicFeeUpdated(maxDynamicFee?: null): ExchangeMaxDynamicFeeUpdatedEventFilter - - 'FeePeriodDurationUpdated(uint256)'( - newFeePeriodDuration?: null - ): FeePeriodDurationUpdatedEventFilter - FeePeriodDurationUpdated(newFeePeriodDuration?: null): FeePeriodDurationUpdatedEventFilter - - 'FlagRewardUpdated(uint256)'(newReward?: null): FlagRewardUpdatedEventFilter - FlagRewardUpdated(newReward?: null): FlagRewardUpdatedEventFilter - - 'InteractionDelayUpdated(uint256)'(interactionDelay?: null): InteractionDelayUpdatedEventFilter - InteractionDelayUpdated(interactionDelay?: null): InteractionDelayUpdatedEventFilter - - 'IssuanceRatioUpdated(uint256)'(newRatio?: null): IssuanceRatioUpdatedEventFilter - IssuanceRatioUpdated(newRatio?: null): IssuanceRatioUpdatedEventFilter - - 'LiquidateRewardUpdated(uint256)'(newReward?: null): LiquidateRewardUpdatedEventFilter - LiquidateRewardUpdated(newReward?: null): LiquidateRewardUpdatedEventFilter - - 'LiquidationDelayUpdated(uint256)'(newDelay?: null): LiquidationDelayUpdatedEventFilter - LiquidationDelayUpdated(newDelay?: null): LiquidationDelayUpdatedEventFilter - - 'LiquidationEscrowDurationUpdated(uint256)'( - newDuration?: null - ): LiquidationEscrowDurationUpdatedEventFilter - LiquidationEscrowDurationUpdated( - newDuration?: null - ): LiquidationEscrowDurationUpdatedEventFilter - - 'LiquidationPenaltyUpdated(uint256)'(newPenalty?: null): LiquidationPenaltyUpdatedEventFilter - LiquidationPenaltyUpdated(newPenalty?: null): LiquidationPenaltyUpdatedEventFilter - - 'LiquidationRatioUpdated(uint256)'(newRatio?: null): LiquidationRatioUpdatedEventFilter - LiquidationRatioUpdated(newRatio?: null): LiquidationRatioUpdatedEventFilter - - 'MinimumStakeTimeUpdated(uint256)'(minimumStakeTime?: null): MinimumStakeTimeUpdatedEventFilter - MinimumStakeTimeUpdated(minimumStakeTime?: null): MinimumStakeTimeUpdatedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'PriceDeviationThresholdUpdated(uint256)'( - threshold?: null - ): PriceDeviationThresholdUpdatedEventFilter - PriceDeviationThresholdUpdated(threshold?: null): PriceDeviationThresholdUpdatedEventFilter - - 'PureChainlinkPriceForAtomicSwapsEnabledUpdated(bytes32,bool)'( - synthKey?: null, - enabled?: null - ): PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter - PureChainlinkPriceForAtomicSwapsEnabledUpdated( - synthKey?: null, - enabled?: null - ): PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter + wrapperMintFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; - 'RateStalePeriodUpdated(uint256)'(rateStalePeriod?: null): RateStalePeriodUpdatedEventFilter - RateStalePeriodUpdated(rateStalePeriod?: null): RateStalePeriodUpdatedEventFilter + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; - 'SelfLiquidationPenaltyUpdated(uint256)'( - newPenalty?: null - ): SelfLiquidationPenaltyUpdatedEventFilter - SelfLiquidationPenaltyUpdated(newPenalty?: null): SelfLiquidationPenaltyUpdatedEventFilter + acceptOwnership(overrides?: CallOverrides): Promise; - 'SnxLiquidationPenaltyUpdated(uint256)'( - newPenalty?: null - ): SnxLiquidationPenaltyUpdatedEventFilter - SnxLiquidationPenaltyUpdated(newPenalty?: null): SnxLiquidationPenaltyUpdatedEventFilter + aggregatorWarningFlags(overrides?: CallOverrides): Promise; - 'TargetThresholdUpdated(uint256)'(newTargetThreshold?: null): TargetThresholdUpdatedEventFilter - TargetThresholdUpdated(newTargetThreshold?: null): TargetThresholdUpdatedEventFilter + atomicEquivalentForDexPricing( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'TradingRewardsEnabled(bool)'(enabled?: null): TradingRewardsEnabledEventFilter - TradingRewardsEnabled(enabled?: null): TradingRewardsEnabledEventFilter + atomicExchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'WaitingPeriodSecsUpdated(uint256)'( - waitingPeriodSecs?: null - ): WaitingPeriodSecsUpdatedEventFilter - WaitingPeriodSecsUpdated(waitingPeriodSecs?: null): WaitingPeriodSecsUpdatedEventFilter + atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise; - 'WrapperBurnFeeRateUpdated(address,int256)'( - wrapper?: null, - rate?: null - ): WrapperBurnFeeRateUpdatedEventFilter - WrapperBurnFeeRateUpdated(wrapper?: null, rate?: null): WrapperBurnFeeRateUpdatedEventFilter + atomicTwapWindow(overrides?: CallOverrides): Promise; - 'WrapperMaxTokenAmountUpdated(address,uint256)'( - wrapper?: null, - maxTokenAmount?: null - ): WrapperMaxTokenAmountUpdatedEventFilter - WrapperMaxTokenAmountUpdated( - wrapper?: null, - maxTokenAmount?: null - ): WrapperMaxTokenAmountUpdatedEventFilter + atomicVolatilityConsiderationWindow( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - 'WrapperMintFeeRateUpdated(address,int256)'( - wrapper?: null, - rate?: null - ): WrapperMintFeeRateUpdatedEventFilter - WrapperMintFeeRateUpdated(wrapper?: null, rate?: null): WrapperMintFeeRateUpdatedEventFilter - } + atomicVolatilityUpdateThreshold( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + collapseFeeRate( + collateral: string, + overrides?: CallOverrides + ): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + crossChainSynthTransferEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - aggregatorWarningFlags(overrides?: CallOverrides): Promise + crossDomainMessageGasLimit( + gasLimitType: BigNumberish, + overrides?: CallOverrides + ): Promise; - atomicEquivalentForDexPricing( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + debtSnapshotStaleTime(overrides?: CallOverrides): Promise; - atomicExchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise; - atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise + etherWrapperMaxETH(overrides?: CallOverrides): Promise; - atomicTwapWindow(overrides?: CallOverrides): Promise + etherWrapperMintFeeRate(overrides?: CallOverrides): Promise; - atomicVolatilityConsiderationWindow( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise; - atomicVolatilityUpdateThreshold( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise; - collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise + exchangeDynamicFeeWeightDecay( + overrides?: CallOverrides + ): Promise; - crossChainSynthTransferEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + exchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - crossDomainMessageGasLimit( - gasLimitType: BigNumberish, - overrides?: CallOverrides - ): Promise + exchangeMaxDynamicFee(overrides?: CallOverrides): Promise; - debtSnapshotStaleTime(overrides?: CallOverrides): Promise + feePeriodDuration(overrides?: CallOverrides): Promise; - etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise + flagReward(overrides?: CallOverrides): Promise; - etherWrapperMaxETH(overrides?: CallOverrides): Promise + interactionDelay( + collateral: string, + overrides?: CallOverrides + ): Promise; - etherWrapperMintFeeRate(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise + issuanceRatio(overrides?: CallOverrides): Promise; - exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise + liquidateReward(overrides?: CallOverrides): Promise; - exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise + liquidationDelay(overrides?: CallOverrides): Promise; - exchangeFeeRate(currencyKey: BytesLike, overrides?: CallOverrides): Promise + liquidationEscrowDuration(overrides?: CallOverrides): Promise; - exchangeMaxDynamicFee(overrides?: CallOverrides): Promise + liquidationPenalty(overrides?: CallOverrides): Promise; - feePeriodDuration(overrides?: CallOverrides): Promise + liquidationRatio(overrides?: CallOverrides): Promise; - flagReward(overrides?: CallOverrides): Promise + minimumStakeTime(overrides?: CallOverrides): Promise; - interactionDelay(collateral: string, overrides?: CallOverrides): Promise + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; - isResolverCached(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - issuanceRatio(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - liquidateReward(overrides?: CallOverrides): Promise + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; - liquidationDelay(overrides?: CallOverrides): Promise + pureChainlinkPriceForAtomicSwapsEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - liquidationEscrowDuration(overrides?: CallOverrides): Promise + rateStalePeriod(overrides?: CallOverrides): Promise; - liquidationPenalty(overrides?: CallOverrides): Promise + rebuildCache(overrides?: CallOverrides): Promise; - liquidationRatio(overrides?: CallOverrides): Promise + resolver(overrides?: CallOverrides): Promise; - minimumStakeTime(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise + selfLiquidationPenalty(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + setAggregatorWarningFlags( + _flags: string, + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + setAtomicEquivalentForDexPricing( + _currencyKey: BytesLike, + _equivalent: string, + overrides?: CallOverrides + ): Promise; - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + setAtomicExchangeFeeRate( + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: CallOverrides + ): Promise; - pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + setAtomicMaxVolumePerBlock( + _maxVolume: BigNumberish, + overrides?: CallOverrides + ): Promise; - rateStalePeriod(overrides?: CallOverrides): Promise + setAtomicTwapWindow( + _window: BigNumberish, + overrides?: CallOverrides + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + setAtomicVolatilityConsiderationWindow( + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + setAtomicVolatilityUpdateThreshold( + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: CallOverrides + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + setCollapseFeeRate( + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: CallOverrides + ): Promise; - selfLiquidationPenalty(overrides?: CallOverrides): Promise + setCrossChainSynthTransferEnabled( + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setCrossDomainMessageGasLimit( + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setDebtSnapshotStaleTime( + _seconds: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setEtherWrapperBurnFeeRate( + _rate: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setEtherWrapperMaxETH( + _maxETH: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setEtherWrapperMintFeeRate( + _rate: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setExchangeDynamicFeeRounds( + rounds: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setExchangeDynamicFeeThreshold( + threshold: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setExchangeDynamicFeeWeightDecay( + weightDecay: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setExchangeFeeRateForSynths( + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: CallOverrides + ): Promise; + + setExchangeMaxDynamicFee( + maxFee: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFeePeriodDuration( + _feePeriodDuration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setFlagReward( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setInteractionDelay( + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setIssuanceRatio( + ratio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidateReward( + reward: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationDelay( + time: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationEscrowDuration( + duration: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationPenalty( + penalty: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setLiquidationRatio( + _liquidationRatio: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setMinimumStakeTime( + _seconds: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setPriceDeviationThresholdFactor( + _priceDeviationThresholdFactor: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setPureChainlinkPriceForAtomicSwapsEnabled( + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: CallOverrides + ): Promise; + + setRateStalePeriod( + period: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSelfLiquidationPenalty( + penalty: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setSnxLiquidationPenalty( + penalty: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTargetThreshold( + percent: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setTradingRewardsEnabled( + _tradingRewardsEnabled: boolean, + overrides?: CallOverrides + ): Promise; + + setWaitingPeriodSecs( + _waitingPeriodSecs: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setWrapperBurnFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setWrapperMaxTokenAmount( + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: CallOverrides + ): Promise; + + setWrapperMintFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: CallOverrides + ): Promise; + + snxLiquidationPenalty(overrides?: CallOverrides): Promise; + + targetThreshold(overrides?: CallOverrides): Promise; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + + wrapperBurnFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMaxTokenAmount( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMintFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AggregatorWarningFlagsUpdated(address)"( + flags?: null + ): AggregatorWarningFlagsUpdatedEventFilter; + AggregatorWarningFlagsUpdated( + flags?: null + ): AggregatorWarningFlagsUpdatedEventFilter; + + "AtomicEquivalentForDexPricingUpdated(bytes32,address)"( + synthKey?: null, + equivalent?: null + ): AtomicEquivalentForDexPricingUpdatedEventFilter; + AtomicEquivalentForDexPricingUpdated( + synthKey?: null, + equivalent?: null + ): AtomicEquivalentForDexPricingUpdatedEventFilter; + + "AtomicExchangeFeeUpdated(bytes32,uint256)"( + synthKey?: null, + newExchangeFeeRate?: null + ): AtomicExchangeFeeUpdatedEventFilter; + AtomicExchangeFeeUpdated( + synthKey?: null, + newExchangeFeeRate?: null + ): AtomicExchangeFeeUpdatedEventFilter; + + "AtomicMaxVolumePerBlockUpdated(uint256)"( + newMaxVolume?: null + ): AtomicMaxVolumePerBlockUpdatedEventFilter; + AtomicMaxVolumePerBlockUpdated( + newMaxVolume?: null + ): AtomicMaxVolumePerBlockUpdatedEventFilter; + + "AtomicTwapWindowUpdated(uint256)"( + newWindow?: null + ): AtomicTwapWindowUpdatedEventFilter; + AtomicTwapWindowUpdated( + newWindow?: null + ): AtomicTwapWindowUpdatedEventFilter; + + "AtomicVolatilityConsiderationWindowUpdated(bytes32,uint256)"( + synthKey?: null, + newVolatilityConsiderationWindow?: null + ): AtomicVolatilityConsiderationWindowUpdatedEventFilter; + AtomicVolatilityConsiderationWindowUpdated( + synthKey?: null, + newVolatilityConsiderationWindow?: null + ): AtomicVolatilityConsiderationWindowUpdatedEventFilter; + + "AtomicVolatilityUpdateThresholdUpdated(bytes32,uint256)"( + synthKey?: null, + newVolatilityUpdateThreshold?: null + ): AtomicVolatilityUpdateThresholdUpdatedEventFilter; + AtomicVolatilityUpdateThresholdUpdated( + synthKey?: null, + newVolatilityUpdateThreshold?: null + ): AtomicVolatilityUpdateThresholdUpdatedEventFilter; + + "CacheUpdated(bytes32,address)"( + name?: null, + destination?: null + ): CacheUpdatedEventFilter; + CacheUpdated(name?: null, destination?: null): CacheUpdatedEventFilter; + + "CollapseFeeRateUpdated(uint256)"( + collapseFeeRate?: null + ): CollapseFeeRateUpdatedEventFilter; + CollapseFeeRateUpdated( + collapseFeeRate?: null + ): CollapseFeeRateUpdatedEventFilter; + + "CrossChainSynthTransferEnabledUpdated(bytes32,uint256)"( + synthKey?: null, + value?: null + ): CrossChainSynthTransferEnabledUpdatedEventFilter; + CrossChainSynthTransferEnabledUpdated( + synthKey?: null, + value?: null + ): CrossChainSynthTransferEnabledUpdatedEventFilter; + + "CrossDomainMessageGasLimitChanged(uint8,uint256)"( + gasLimitType?: null, + newLimit?: null + ): CrossDomainMessageGasLimitChangedEventFilter; + CrossDomainMessageGasLimitChanged( + gasLimitType?: null, + newLimit?: null + ): CrossDomainMessageGasLimitChangedEventFilter; + + "DebtSnapshotStaleTimeUpdated(uint256)"( + debtSnapshotStaleTime?: null + ): DebtSnapshotStaleTimeUpdatedEventFilter; + DebtSnapshotStaleTimeUpdated( + debtSnapshotStaleTime?: null + ): DebtSnapshotStaleTimeUpdatedEventFilter; + + "EtherWrapperBurnFeeRateUpdated(uint256)"( + rate?: null + ): EtherWrapperBurnFeeRateUpdatedEventFilter; + EtherWrapperBurnFeeRateUpdated( + rate?: null + ): EtherWrapperBurnFeeRateUpdatedEventFilter; + + "EtherWrapperMaxETHUpdated(uint256)"( + maxETH?: null + ): EtherWrapperMaxETHUpdatedEventFilter; + EtherWrapperMaxETHUpdated( + maxETH?: null + ): EtherWrapperMaxETHUpdatedEventFilter; + + "EtherWrapperMintFeeRateUpdated(uint256)"( + rate?: null + ): EtherWrapperMintFeeRateUpdatedEventFilter; + EtherWrapperMintFeeRateUpdated( + rate?: null + ): EtherWrapperMintFeeRateUpdatedEventFilter; + + "ExchangeDynamicFeeRoundsUpdated(uint256)"( + dynamicFeeRounds?: null + ): ExchangeDynamicFeeRoundsUpdatedEventFilter; + ExchangeDynamicFeeRoundsUpdated( + dynamicFeeRounds?: null + ): ExchangeDynamicFeeRoundsUpdatedEventFilter; + + "ExchangeDynamicFeeThresholdUpdated(uint256)"( + dynamicFeeThreshold?: null + ): ExchangeDynamicFeeThresholdUpdatedEventFilter; + ExchangeDynamicFeeThresholdUpdated( + dynamicFeeThreshold?: null + ): ExchangeDynamicFeeThresholdUpdatedEventFilter; + + "ExchangeDynamicFeeWeightDecayUpdated(uint256)"( + dynamicFeeWeightDecay?: null + ): ExchangeDynamicFeeWeightDecayUpdatedEventFilter; + ExchangeDynamicFeeWeightDecayUpdated( + dynamicFeeWeightDecay?: null + ): ExchangeDynamicFeeWeightDecayUpdatedEventFilter; + + "ExchangeFeeUpdated(bytes32,uint256)"( + synthKey?: null, + newExchangeFeeRate?: null + ): ExchangeFeeUpdatedEventFilter; + ExchangeFeeUpdated( + synthKey?: null, + newExchangeFeeRate?: null + ): ExchangeFeeUpdatedEventFilter; + + "ExchangeMaxDynamicFeeUpdated(uint256)"( + maxDynamicFee?: null + ): ExchangeMaxDynamicFeeUpdatedEventFilter; + ExchangeMaxDynamicFeeUpdated( + maxDynamicFee?: null + ): ExchangeMaxDynamicFeeUpdatedEventFilter; + + "FeePeriodDurationUpdated(uint256)"( + newFeePeriodDuration?: null + ): FeePeriodDurationUpdatedEventFilter; + FeePeriodDurationUpdated( + newFeePeriodDuration?: null + ): FeePeriodDurationUpdatedEventFilter; + + "FlagRewardUpdated(uint256)"( + newReward?: null + ): FlagRewardUpdatedEventFilter; + FlagRewardUpdated(newReward?: null): FlagRewardUpdatedEventFilter; + + "InteractionDelayUpdated(uint256)"( + interactionDelay?: null + ): InteractionDelayUpdatedEventFilter; + InteractionDelayUpdated( + interactionDelay?: null + ): InteractionDelayUpdatedEventFilter; + + "IssuanceRatioUpdated(uint256)"( + newRatio?: null + ): IssuanceRatioUpdatedEventFilter; + IssuanceRatioUpdated(newRatio?: null): IssuanceRatioUpdatedEventFilter; + + "LiquidateRewardUpdated(uint256)"( + newReward?: null + ): LiquidateRewardUpdatedEventFilter; + LiquidateRewardUpdated(newReward?: null): LiquidateRewardUpdatedEventFilter; + + "LiquidationDelayUpdated(uint256)"( + newDelay?: null + ): LiquidationDelayUpdatedEventFilter; + LiquidationDelayUpdated( + newDelay?: null + ): LiquidationDelayUpdatedEventFilter; + + "LiquidationEscrowDurationUpdated(uint256)"( + newDuration?: null + ): LiquidationEscrowDurationUpdatedEventFilter; + LiquidationEscrowDurationUpdated( + newDuration?: null + ): LiquidationEscrowDurationUpdatedEventFilter; + + "LiquidationPenaltyUpdated(uint256)"( + newPenalty?: null + ): LiquidationPenaltyUpdatedEventFilter; + LiquidationPenaltyUpdated( + newPenalty?: null + ): LiquidationPenaltyUpdatedEventFilter; + + "LiquidationRatioUpdated(uint256)"( + newRatio?: null + ): LiquidationRatioUpdatedEventFilter; + LiquidationRatioUpdated( + newRatio?: null + ): LiquidationRatioUpdatedEventFilter; + + "MinimumStakeTimeUpdated(uint256)"( + minimumStakeTime?: null + ): MinimumStakeTimeUpdatedEventFilter; + MinimumStakeTimeUpdated( + minimumStakeTime?: null + ): MinimumStakeTimeUpdatedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "PriceDeviationThresholdUpdated(uint256)"( + threshold?: null + ): PriceDeviationThresholdUpdatedEventFilter; + PriceDeviationThresholdUpdated( + threshold?: null + ): PriceDeviationThresholdUpdatedEventFilter; + + "PureChainlinkPriceForAtomicSwapsEnabledUpdated(bytes32,bool)"( + synthKey?: null, + enabled?: null + ): PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter; + PureChainlinkPriceForAtomicSwapsEnabledUpdated( + synthKey?: null, + enabled?: null + ): PureChainlinkPriceForAtomicSwapsEnabledUpdatedEventFilter; + + "RateStalePeriodUpdated(uint256)"( + rateStalePeriod?: null + ): RateStalePeriodUpdatedEventFilter; + RateStalePeriodUpdated( + rateStalePeriod?: null + ): RateStalePeriodUpdatedEventFilter; + + "SelfLiquidationPenaltyUpdated(uint256)"( + newPenalty?: null + ): SelfLiquidationPenaltyUpdatedEventFilter; + SelfLiquidationPenaltyUpdated( + newPenalty?: null + ): SelfLiquidationPenaltyUpdatedEventFilter; + + "SnxLiquidationPenaltyUpdated(uint256)"( + newPenalty?: null + ): SnxLiquidationPenaltyUpdatedEventFilter; + SnxLiquidationPenaltyUpdated( + newPenalty?: null + ): SnxLiquidationPenaltyUpdatedEventFilter; + + "TargetThresholdUpdated(uint256)"( + newTargetThreshold?: null + ): TargetThresholdUpdatedEventFilter; + TargetThresholdUpdated( + newTargetThreshold?: null + ): TargetThresholdUpdatedEventFilter; + + "TradingRewardsEnabled(bool)"( + enabled?: null + ): TradingRewardsEnabledEventFilter; + TradingRewardsEnabled(enabled?: null): TradingRewardsEnabledEventFilter; + + "WaitingPeriodSecsUpdated(uint256)"( + waitingPeriodSecs?: null + ): WaitingPeriodSecsUpdatedEventFilter; + WaitingPeriodSecsUpdated( + waitingPeriodSecs?: null + ): WaitingPeriodSecsUpdatedEventFilter; + + "WrapperBurnFeeRateUpdated(address,int256)"( + wrapper?: null, + rate?: null + ): WrapperBurnFeeRateUpdatedEventFilter; + WrapperBurnFeeRateUpdated( + wrapper?: null, + rate?: null + ): WrapperBurnFeeRateUpdatedEventFilter; + + "WrapperMaxTokenAmountUpdated(address,uint256)"( + wrapper?: null, + maxTokenAmount?: null + ): WrapperMaxTokenAmountUpdatedEventFilter; + WrapperMaxTokenAmountUpdated( + wrapper?: null, + maxTokenAmount?: null + ): WrapperMaxTokenAmountUpdatedEventFilter; + + "WrapperMintFeeRateUpdated(address,int256)"( + wrapper?: null, + rate?: null + ): WrapperMintFeeRateUpdatedEventFilter; + WrapperMintFeeRateUpdated( + wrapper?: null, + rate?: null + ): WrapperMintFeeRateUpdatedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorWarningFlags(overrides?: CallOverrides): Promise; + + atomicEquivalentForDexPricing( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + atomicExchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setAggregatorWarningFlags( - _flags: string, - overrides?: Overrides & { from?: string } - ): Promise + atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise; - setAtomicEquivalentForDexPricing( - _currencyKey: BytesLike, - _equivalent: string, - overrides?: Overrides & { from?: string } - ): Promise + atomicTwapWindow(overrides?: CallOverrides): Promise; - setAtomicExchangeFeeRate( - _currencyKey: BytesLike, - _exchangeFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicVolatilityConsiderationWindow( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setAtomicMaxVolumePerBlock( - _maxVolume: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + atomicVolatilityUpdateThreshold( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setAtomicTwapWindow( - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + collapseFeeRate( + collateral: string, + overrides?: CallOverrides + ): Promise; - setAtomicVolatilityConsiderationWindow( - _currencyKey: BytesLike, - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + crossChainSynthTransferEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setAtomicVolatilityUpdateThreshold( - _currencyKey: BytesLike, - _threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + crossDomainMessageGasLimit( + gasLimitType: BigNumberish, + overrides?: CallOverrides + ): Promise; - setCollapseFeeRate( - _collateral: string, - _collapseFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + debtSnapshotStaleTime(overrides?: CallOverrides): Promise; - setCrossChainSynthTransferEnabled( - _currencyKey: BytesLike, - _value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise; - setCrossDomainMessageGasLimit( - _gasLimitType: BigNumberish, - _crossDomainMessageGasLimit: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperMaxETH(overrides?: CallOverrides): Promise; - setDebtSnapshotStaleTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperBurnFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMaxETH( - _maxETH: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMintFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeRounds( - rounds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeThreshold( - threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeWeightDecay( - weightDecay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeFeeRateForSynths( - synthKeys: BytesLike[], - exchangeFeeRates: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeMaxDynamicFee( - maxFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFeePeriodDuration( - _feePeriodDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFlagReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setInteractionDelay( - _collateral: string, - _interactionDelay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setIssuanceRatio( - ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidateReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationDelay( - time: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationEscrowDuration( - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationRatio( - _liquidationRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinimumStakeTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: BytesLike, - _enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setRateStalePeriod( - period: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSelfLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSnxLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTargetThreshold( - percent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperMintFeeRate(overrides?: CallOverrides): Promise; - setTradingRewardsEnabled( - _tradingRewardsEnabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise; - setWaitingPeriodSecs( - _waitingPeriodSecs: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise; - setWrapperBurnFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeDynamicFeeWeightDecay( + overrides?: CallOverrides + ): Promise; - setWrapperMaxTokenAmount( - _wrapper: string, - _maxTokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - setWrapperMintFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + exchangeMaxDynamicFee(overrides?: CallOverrides): Promise; - snxLiquidationPenalty(overrides?: CallOverrides): Promise + feePeriodDuration(overrides?: CallOverrides): Promise; - targetThreshold(overrides?: CallOverrides): Promise + flagReward(overrides?: CallOverrides): Promise; - tradingRewardsEnabled(overrides?: CallOverrides): Promise + interactionDelay( + collateral: string, + overrides?: CallOverrides + ): Promise; - waitingPeriodSecs(overrides?: CallOverrides): Promise + isResolverCached(overrides?: CallOverrides): Promise; - wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise + issuanceRatio(overrides?: CallOverrides): Promise; - wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise + liquidateReward(overrides?: CallOverrides): Promise; - wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise - } + liquidationDelay(overrides?: CallOverrides): Promise; - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise + liquidationEscrowDuration(overrides?: CallOverrides): Promise; - acceptOwnership(overrides?: Overrides & { from?: string }): Promise + liquidationPenalty(overrides?: CallOverrides): Promise; - aggregatorWarningFlags(overrides?: CallOverrides): Promise + liquidationRatio(overrides?: CallOverrides): Promise; - atomicEquivalentForDexPricing( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + minimumStakeTime(overrides?: CallOverrides): Promise; - atomicExchangeFeeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - atomicMaxVolumePerBlock(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; - atomicTwapWindow(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - atomicVolatilityConsiderationWindow( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; - atomicVolatilityUpdateThreshold( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + pureChainlinkPriceForAtomicSwapsEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - collapseFeeRate(collateral: string, overrides?: CallOverrides): Promise + rateStalePeriod(overrides?: CallOverrides): Promise; - crossChainSynthTransferEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + rebuildCache(overrides?: Overrides & { from?: string }): Promise; - crossDomainMessageGasLimit( - gasLimitType: BigNumberish, - overrides?: CallOverrides - ): Promise + resolver(overrides?: CallOverrides): Promise; - debtSnapshotStaleTime(overrides?: CallOverrides): Promise + resolverAddressesRequired(overrides?: CallOverrides): Promise; - etherWrapperBurnFeeRate(overrides?: CallOverrides): Promise + selfLiquidationPenalty(overrides?: CallOverrides): Promise; - etherWrapperMaxETH(overrides?: CallOverrides): Promise + setAggregatorWarningFlags( + _flags: string, + overrides?: Overrides & { from?: string } + ): Promise; - etherWrapperMintFeeRate(overrides?: CallOverrides): Promise + setAtomicEquivalentForDexPricing( + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeDynamicFeeRounds(overrides?: CallOverrides): Promise + setAtomicExchangeFeeRate( + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeDynamicFeeThreshold(overrides?: CallOverrides): Promise + setAtomicMaxVolumePerBlock( + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeDynamicFeeWeightDecay(overrides?: CallOverrides): Promise + setAtomicTwapWindow( + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeFeeRate( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + setAtomicVolatilityConsiderationWindow( + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - exchangeMaxDynamicFee(overrides?: CallOverrides): Promise + setAtomicVolatilityUpdateThreshold( + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - feePeriodDuration(overrides?: CallOverrides): Promise + setCollapseFeeRate( + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; - flagReward(overrides?: CallOverrides): Promise + setCrossChainSynthTransferEnabled( + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossDomainMessageGasLimit( + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setDebtSnapshotStaleTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperBurnFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMaxETH( + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMintFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeRounds( + rounds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeThreshold( + threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeWeightDecay( + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeFeeRateForSynths( + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeMaxDynamicFee( + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeePeriodDuration( + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFlagReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setInteractionDelay( + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setIssuanceRatio( + ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidateReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationDelay( + time: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationEscrowDuration( + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationRatio( + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinimumStakeTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPriceDeviationThresholdFactor( + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPureChainlinkPriceForAtomicSwapsEnabled( + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setRateStalePeriod( + period: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSelfLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSnxLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTargetThreshold( + percent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTradingRewardsEnabled( + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setWaitingPeriodSecs( + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperBurnFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMaxTokenAmount( + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMintFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + snxLiquidationPenalty(overrides?: CallOverrides): Promise; + + targetThreshold(overrides?: CallOverrides): Promise; + + tradingRewardsEnabled(overrides?: CallOverrides): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + + wrapperBurnFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMaxTokenAmount( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMintFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + aggregatorWarningFlags( + overrides?: CallOverrides + ): Promise; + + atomicEquivalentForDexPricing( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - interactionDelay(collateral: string, overrides?: CallOverrides): Promise + atomicExchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - isResolverCached(overrides?: CallOverrides): Promise + atomicMaxVolumePerBlock( + overrides?: CallOverrides + ): Promise; - issuanceRatio(overrides?: CallOverrides): Promise + atomicTwapWindow(overrides?: CallOverrides): Promise; - liquidateReward(overrides?: CallOverrides): Promise + atomicVolatilityConsiderationWindow( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - liquidationDelay(overrides?: CallOverrides): Promise + atomicVolatilityUpdateThreshold( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - liquidationEscrowDuration(overrides?: CallOverrides): Promise + collapseFeeRate( + collateral: string, + overrides?: CallOverrides + ): Promise; - liquidationPenalty(overrides?: CallOverrides): Promise + crossChainSynthTransferEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - liquidationRatio(overrides?: CallOverrides): Promise + crossDomainMessageGasLimit( + gasLimitType: BigNumberish, + overrides?: CallOverrides + ): Promise; - minimumStakeTime(overrides?: CallOverrides): Promise + debtSnapshotStaleTime( + overrides?: CallOverrides + ): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + etherWrapperBurnFeeRate( + overrides?: CallOverrides + ): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + etherWrapperMaxETH( + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + etherWrapperMintFeeRate( + overrides?: CallOverrides + ): Promise; - priceDeviationThresholdFactor(overrides?: CallOverrides): Promise + exchangeDynamicFeeRounds( + overrides?: CallOverrides + ): Promise; - pureChainlinkPriceForAtomicSwapsEnabled( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + exchangeDynamicFeeThreshold( + overrides?: CallOverrides + ): Promise; - rateStalePeriod(overrides?: CallOverrides): Promise + exchangeDynamicFeeWeightDecay( + overrides?: CallOverrides + ): Promise; - rebuildCache(overrides?: Overrides & { from?: string }): Promise + exchangeFeeRate( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - resolver(overrides?: CallOverrides): Promise + exchangeMaxDynamicFee( + overrides?: CallOverrides + ): Promise; - resolverAddressesRequired(overrides?: CallOverrides): Promise + feePeriodDuration(overrides?: CallOverrides): Promise; - selfLiquidationPenalty(overrides?: CallOverrides): Promise + flagReward(overrides?: CallOverrides): Promise; - setAggregatorWarningFlags( - _flags: string, - overrides?: Overrides & { from?: string } - ): Promise + interactionDelay( + collateral: string, + overrides?: CallOverrides + ): Promise; - setAtomicEquivalentForDexPricing( - _currencyKey: BytesLike, - _equivalent: string, - overrides?: Overrides & { from?: string } - ): Promise + isResolverCached(overrides?: CallOverrides): Promise; - setAtomicExchangeFeeRate( - _currencyKey: BytesLike, - _exchangeFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + issuanceRatio(overrides?: CallOverrides): Promise; - setAtomicMaxVolumePerBlock( - _maxVolume: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + liquidateReward(overrides?: CallOverrides): Promise; - setAtomicTwapWindow( - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + liquidationDelay(overrides?: CallOverrides): Promise; - setAtomicVolatilityConsiderationWindow( - _currencyKey: BytesLike, - _window: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + liquidationEscrowDuration( + overrides?: CallOverrides + ): Promise; - setAtomicVolatilityUpdateThreshold( - _currencyKey: BytesLike, - _threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + liquidationPenalty( + overrides?: CallOverrides + ): Promise; - setCollapseFeeRate( - _collateral: string, - _collapseFeeRate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + liquidationRatio(overrides?: CallOverrides): Promise; - setCrossChainSynthTransferEnabled( - _currencyKey: BytesLike, - _value: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise + minimumStakeTime(overrides?: CallOverrides): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; - setCrossDomainMessageGasLimit( - _gasLimitType: BigNumberish, - _crossDomainMessageGasLimit: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setDebtSnapshotStaleTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperBurnFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMaxETH( - _maxETH: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setEtherWrapperMintFeeRate( - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeRounds( - rounds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeThreshold( - threshold: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeDynamicFeeWeightDecay( - weightDecay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeFeeRateForSynths( - synthKeys: BytesLike[], - exchangeFeeRates: BigNumberish[], - overrides?: Overrides & { from?: string } - ): Promise - - setExchangeMaxDynamicFee( - maxFee: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFeePeriodDuration( - _feePeriodDuration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setFlagReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setInteractionDelay( - _collateral: string, - _interactionDelay: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setIssuanceRatio( - ratio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidateReward( - reward: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationDelay( - time: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationEscrowDuration( - duration: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setLiquidationRatio( - _liquidationRatio: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setMinimumStakeTime( - _seconds: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPriceDeviationThresholdFactor( - _priceDeviationThresholdFactor: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setPureChainlinkPriceForAtomicSwapsEnabled( - _currencyKey: BytesLike, - _enabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setRateStalePeriod( - period: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSelfLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setSnxLiquidationPenalty( - penalty: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTargetThreshold( - percent: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setTradingRewardsEnabled( - _tradingRewardsEnabled: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - setWaitingPeriodSecs( - _waitingPeriodSecs: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperBurnFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperMaxTokenAmount( - _wrapper: string, - _maxTokenAmount: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - setWrapperMintFeeRate( - _wrapper: string, - _rate: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - snxLiquidationPenalty(overrides?: CallOverrides): Promise - - targetThreshold(overrides?: CallOverrides): Promise - - tradingRewardsEnabled(overrides?: CallOverrides): Promise - - waitingPeriodSecs(overrides?: CallOverrides): Promise - - wrapperBurnFeeRate(wrapper: string, overrides?: CallOverrides): Promise - - wrapperMaxTokenAmount(wrapper: string, overrides?: CallOverrides): Promise - - wrapperMintFeeRate(wrapper: string, overrides?: CallOverrides): Promise - } + owner(overrides?: CallOverrides): Promise; + + priceDeviationThresholdFactor( + overrides?: CallOverrides + ): Promise; + + pureChainlinkPriceForAtomicSwapsEnabled( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + rateStalePeriod(overrides?: CallOverrides): Promise; + + rebuildCache( + overrides?: Overrides & { from?: string } + ): Promise; + + resolver(overrides?: CallOverrides): Promise; + + resolverAddressesRequired( + overrides?: CallOverrides + ): Promise; + + selfLiquidationPenalty( + overrides?: CallOverrides + ): Promise; + + setAggregatorWarningFlags( + _flags: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicEquivalentForDexPricing( + _currencyKey: BytesLike, + _equivalent: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicExchangeFeeRate( + _currencyKey: BytesLike, + _exchangeFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicMaxVolumePerBlock( + _maxVolume: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicTwapWindow( + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicVolatilityConsiderationWindow( + _currencyKey: BytesLike, + _window: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setAtomicVolatilityUpdateThreshold( + _currencyKey: BytesLike, + _threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCollapseFeeRate( + _collateral: string, + _collapseFeeRate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossChainSynthTransferEnabled( + _currencyKey: BytesLike, + _value: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setCrossDomainMessageGasLimit( + _gasLimitType: BigNumberish, + _crossDomainMessageGasLimit: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setDebtSnapshotStaleTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperBurnFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMaxETH( + _maxETH: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setEtherWrapperMintFeeRate( + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeRounds( + rounds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeThreshold( + threshold: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeDynamicFeeWeightDecay( + weightDecay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeFeeRateForSynths( + synthKeys: BytesLike[], + exchangeFeeRates: BigNumberish[], + overrides?: Overrides & { from?: string } + ): Promise; + + setExchangeMaxDynamicFee( + maxFee: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFeePeriodDuration( + _feePeriodDuration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setFlagReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setInteractionDelay( + _collateral: string, + _interactionDelay: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setIssuanceRatio( + ratio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidateReward( + reward: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationDelay( + time: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationEscrowDuration( + duration: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setLiquidationRatio( + _liquidationRatio: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setMinimumStakeTime( + _seconds: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPriceDeviationThresholdFactor( + _priceDeviationThresholdFactor: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setPureChainlinkPriceForAtomicSwapsEnabled( + _currencyKey: BytesLike, + _enabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setRateStalePeriod( + period: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSelfLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setSnxLiquidationPenalty( + penalty: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTargetThreshold( + percent: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setTradingRewardsEnabled( + _tradingRewardsEnabled: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setWaitingPeriodSecs( + _waitingPeriodSecs: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperBurnFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMaxTokenAmount( + _wrapper: string, + _maxTokenAmount: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + setWrapperMintFeeRate( + _wrapper: string, + _rate: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + snxLiquidationPenalty( + overrides?: CallOverrides + ): Promise; + + targetThreshold(overrides?: CallOverrides): Promise; + + tradingRewardsEnabled( + overrides?: CallOverrides + ): Promise; + + waitingPeriodSecs(overrides?: CallOverrides): Promise; + + wrapperBurnFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMaxTokenAmount( + wrapper: string, + overrides?: CallOverrides + ): Promise; + + wrapperMintFeeRate( + wrapper: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/SystemStatus.ts b/packages/sdk/src/contracts/types/SystemStatus.ts index f50fb4c2d4..6c0eb6b3a9 100644 --- a/packages/sdk/src/contracts/types/SystemStatus.ts +++ b/packages/sdk/src/contracts/types/SystemStatus.ts @@ -2,1651 +2,2232 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BigNumberish, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface SystemStatusInterface extends utils.Interface { - functions: { - 'CONTRACT_NAME()': FunctionFragment - 'SECTION_EXCHANGE()': FunctionFragment - 'SECTION_FUTURES()': FunctionFragment - 'SECTION_ISSUANCE()': FunctionFragment - 'SECTION_SYNTH()': FunctionFragment - 'SECTION_SYNTH_EXCHANGE()': FunctionFragment - 'SECTION_SYSTEM()': FunctionFragment - 'SUSPENSION_REASON_UPGRADE()': FunctionFragment - 'acceptOwnership()': FunctionFragment - 'accessControl(bytes32,address)': FunctionFragment - 'exchangeSuspension()': FunctionFragment - 'futuresMarketSuspension(bytes32)': FunctionFragment - 'futuresSuspension()': FunctionFragment - 'getFuturesMarketSuspensions(bytes32[])': FunctionFragment - 'getSynthExchangeSuspensions(bytes32[])': FunctionFragment - 'getSynthSuspensions(bytes32[])': FunctionFragment - 'isSystemUpgrading()': FunctionFragment - 'issuanceSuspension()': FunctionFragment - 'nominateNewOwner(address)': FunctionFragment - 'nominatedOwner()': FunctionFragment - 'owner()': FunctionFragment - 'requireExchangeActive()': FunctionFragment - 'requireExchangeBetweenSynthsAllowed(bytes32,bytes32)': FunctionFragment - 'requireFuturesActive()': FunctionFragment - 'requireFuturesMarketActive(bytes32)': FunctionFragment - 'requireIssuanceActive()': FunctionFragment - 'requireSynthActive(bytes32)': FunctionFragment - 'requireSynthExchangeActive(bytes32)': FunctionFragment - 'requireSynthsActive(bytes32,bytes32)': FunctionFragment - 'requireSystemActive()': FunctionFragment - 'resumeExchange()': FunctionFragment - 'resumeFutures()': FunctionFragment - 'resumeFuturesMarket(bytes32)': FunctionFragment - 'resumeFuturesMarkets(bytes32[])': FunctionFragment - 'resumeIssuance()': FunctionFragment - 'resumeSynth(bytes32)': FunctionFragment - 'resumeSynthExchange(bytes32)': FunctionFragment - 'resumeSynths(bytes32[])': FunctionFragment - 'resumeSynthsExchange(bytes32[])': FunctionFragment - 'resumeSystem()': FunctionFragment - 'suspendExchange(uint256)': FunctionFragment - 'suspendFutures(uint256)': FunctionFragment - 'suspendFuturesMarket(bytes32,uint256)': FunctionFragment - 'suspendFuturesMarkets(bytes32[],uint256)': FunctionFragment - 'suspendIssuance(uint256)': FunctionFragment - 'suspendSynth(bytes32,uint256)': FunctionFragment - 'suspendSynthExchange(bytes32,uint256)': FunctionFragment - 'suspendSynths(bytes32[],uint256)': FunctionFragment - 'suspendSynthsExchange(bytes32[],uint256)': FunctionFragment - 'suspendSystem(uint256)': FunctionFragment - 'synthExchangeSuspension(bytes32)': FunctionFragment - 'synthSuspended(bytes32)': FunctionFragment - 'synthSuspension(bytes32)': FunctionFragment - 'systemSuspended()': FunctionFragment - 'systemSuspension()': FunctionFragment - 'updateAccessControl(bytes32,address,bool,bool)': FunctionFragment - 'updateAccessControls(bytes32[],address[],bool[],bool[])': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: - | 'CONTRACT_NAME' - | 'SECTION_EXCHANGE' - | 'SECTION_FUTURES' - | 'SECTION_ISSUANCE' - | 'SECTION_SYNTH' - | 'SECTION_SYNTH_EXCHANGE' - | 'SECTION_SYSTEM' - | 'SUSPENSION_REASON_UPGRADE' - | 'acceptOwnership' - | 'accessControl' - | 'exchangeSuspension' - | 'futuresMarketSuspension' - | 'futuresSuspension' - | 'getFuturesMarketSuspensions' - | 'getSynthExchangeSuspensions' - | 'getSynthSuspensions' - | 'isSystemUpgrading' - | 'issuanceSuspension' - | 'nominateNewOwner' - | 'nominatedOwner' - | 'owner' - | 'requireExchangeActive' - | 'requireExchangeBetweenSynthsAllowed' - | 'requireFuturesActive' - | 'requireFuturesMarketActive' - | 'requireIssuanceActive' - | 'requireSynthActive' - | 'requireSynthExchangeActive' - | 'requireSynthsActive' - | 'requireSystemActive' - | 'resumeExchange' - | 'resumeFutures' - | 'resumeFuturesMarket' - | 'resumeFuturesMarkets' - | 'resumeIssuance' - | 'resumeSynth' - | 'resumeSynthExchange' - | 'resumeSynths' - | 'resumeSynthsExchange' - | 'resumeSystem' - | 'suspendExchange' - | 'suspendFutures' - | 'suspendFuturesMarket' - | 'suspendFuturesMarkets' - | 'suspendIssuance' - | 'suspendSynth' - | 'suspendSynthExchange' - | 'suspendSynths' - | 'suspendSynthsExchange' - | 'suspendSystem' - | 'synthExchangeSuspension' - | 'synthSuspended' - | 'synthSuspension' - | 'systemSuspended' - | 'systemSuspension' - | 'updateAccessControl' - | 'updateAccessControls' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'CONTRACT_NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_EXCHANGE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_FUTURES', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_ISSUANCE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYNTH', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYNTH_EXCHANGE', values?: undefined): string - encodeFunctionData(functionFragment: 'SECTION_SYSTEM', values?: undefined): string - encodeFunctionData(functionFragment: 'SUSPENSION_REASON_UPGRADE', values?: undefined): string - encodeFunctionData(functionFragment: 'acceptOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'accessControl', values: [BytesLike, string]): string - encodeFunctionData(functionFragment: 'exchangeSuspension', values?: undefined): string - encodeFunctionData(functionFragment: 'futuresMarketSuspension', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'futuresSuspension', values?: undefined): string - encodeFunctionData(functionFragment: 'getFuturesMarketSuspensions', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'getSynthExchangeSuspensions', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'getSynthSuspensions', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'isSystemUpgrading', values?: undefined): string - encodeFunctionData(functionFragment: 'issuanceSuspension', values?: undefined): string - encodeFunctionData(functionFragment: 'nominateNewOwner', values: [string]): string - encodeFunctionData(functionFragment: 'nominatedOwner', values?: undefined): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'requireExchangeActive', values?: undefined): string - encodeFunctionData( - functionFragment: 'requireExchangeBetweenSynthsAllowed', - values: [BytesLike, BytesLike] - ): string - encodeFunctionData(functionFragment: 'requireFuturesActive', values?: undefined): string - encodeFunctionData(functionFragment: 'requireFuturesMarketActive', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'requireIssuanceActive', values?: undefined): string - encodeFunctionData(functionFragment: 'requireSynthActive', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'requireSynthExchangeActive', values: [BytesLike]): string - encodeFunctionData( - functionFragment: 'requireSynthsActive', - values: [BytesLike, BytesLike] - ): string - encodeFunctionData(functionFragment: 'requireSystemActive', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeExchange', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeFutures', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeFuturesMarket', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'resumeFuturesMarkets', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'resumeIssuance', values?: undefined): string - encodeFunctionData(functionFragment: 'resumeSynth', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'resumeSynthExchange', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'resumeSynths', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'resumeSynthsExchange', values: [BytesLike[]]): string - encodeFunctionData(functionFragment: 'resumeSystem', values?: undefined): string - encodeFunctionData(functionFragment: 'suspendExchange', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'suspendFutures', values: [BigNumberish]): string - encodeFunctionData( - functionFragment: 'suspendFuturesMarket', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData( - functionFragment: 'suspendFuturesMarkets', - values: [BytesLike[], BigNumberish] - ): string - encodeFunctionData(functionFragment: 'suspendIssuance', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'suspendSynth', values: [BytesLike, BigNumberish]): string - encodeFunctionData( - functionFragment: 'suspendSynthExchange', - values: [BytesLike, BigNumberish] - ): string - encodeFunctionData(functionFragment: 'suspendSynths', values: [BytesLike[], BigNumberish]): string - encodeFunctionData( - functionFragment: 'suspendSynthsExchange', - values: [BytesLike[], BigNumberish] - ): string - encodeFunctionData(functionFragment: 'suspendSystem', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'synthExchangeSuspension', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'synthSuspended', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'synthSuspension', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'systemSuspended', values?: undefined): string - encodeFunctionData(functionFragment: 'systemSuspension', values?: undefined): string - encodeFunctionData( - functionFragment: 'updateAccessControl', - values: [BytesLike, string, boolean, boolean] - ): string - encodeFunctionData( - functionFragment: 'updateAccessControls', - values: [BytesLike[], string[], boolean[], boolean[]] - ): string - - decodeFunctionResult(functionFragment: 'CONTRACT_NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_EXCHANGE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_FUTURES', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_ISSUANCE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYNTH', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYNTH_EXCHANGE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SECTION_SYSTEM', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'SUSPENSION_REASON_UPGRADE', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'acceptOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'accessControl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'exchangeSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'futuresMarketSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'futuresSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFuturesMarketSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSynthExchangeSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getSynthSuspensions', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isSystemUpgrading', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'issuanceSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominateNewOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'nominatedOwner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireExchangeActive', data: BytesLike): Result - decodeFunctionResult( - functionFragment: 'requireExchangeBetweenSynthsAllowed', - data: BytesLike - ): Result - decodeFunctionResult(functionFragment: 'requireFuturesActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireFuturesMarketActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireIssuanceActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthExchangeActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSynthsActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'requireSystemActive', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFutures', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFuturesMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeFuturesMarkets', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeIssuance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSynthsExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'resumeSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFutures', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFuturesMarket', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendFuturesMarkets', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendIssuance', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynth', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynthExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynths', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSynthsExchange', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'suspendSystem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthExchangeSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthSuspended', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'synthSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'systemSuspended', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'systemSuspension', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateAccessControl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'updateAccessControls', data: BytesLike): Result - - events: { - 'AccessControlUpdated(bytes32,address,bool,bool)': EventFragment - 'ExchangeResumed(uint256)': EventFragment - 'ExchangeSuspended(uint256)': EventFragment - 'FuturesMarketResumed(bytes32,uint256)': EventFragment - 'FuturesMarketSuspended(bytes32,uint256)': EventFragment - 'FuturesResumed(uint256)': EventFragment - 'FuturesSuspended(uint256)': EventFragment - 'IssuanceResumed(uint256)': EventFragment - 'IssuanceSuspended(uint256)': EventFragment - 'OwnerChanged(address,address)': EventFragment - 'OwnerNominated(address)': EventFragment - 'SynthExchangeResumed(bytes32,uint256)': EventFragment - 'SynthExchangeSuspended(bytes32,uint256)': EventFragment - 'SynthResumed(bytes32,uint256)': EventFragment - 'SynthSuspended(bytes32,uint256)': EventFragment - 'SystemResumed(uint256)': EventFragment - 'SystemSuspended(uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AccessControlUpdated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ExchangeSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesMarketResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesMarketSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'FuturesSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'IssuanceResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'IssuanceSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment - getEvent(nameOrSignatureOrTopic: 'OwnerNominated'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchangeResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthExchangeSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SynthSuspended'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SystemResumed'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SystemSuspended'): EventFragment + functions: { + "CONTRACT_NAME()": FunctionFragment; + "SECTION_EXCHANGE()": FunctionFragment; + "SECTION_FUTURES()": FunctionFragment; + "SECTION_ISSUANCE()": FunctionFragment; + "SECTION_SYNTH()": FunctionFragment; + "SECTION_SYNTH_EXCHANGE()": FunctionFragment; + "SECTION_SYSTEM()": FunctionFragment; + "SUSPENSION_REASON_UPGRADE()": FunctionFragment; + "acceptOwnership()": FunctionFragment; + "accessControl(bytes32,address)": FunctionFragment; + "exchangeSuspension()": FunctionFragment; + "futuresMarketSuspension(bytes32)": FunctionFragment; + "futuresSuspension()": FunctionFragment; + "getFuturesMarketSuspensions(bytes32[])": FunctionFragment; + "getSynthExchangeSuspensions(bytes32[])": FunctionFragment; + "getSynthSuspensions(bytes32[])": FunctionFragment; + "isSystemUpgrading()": FunctionFragment; + "issuanceSuspension()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "requireExchangeActive()": FunctionFragment; + "requireExchangeBetweenSynthsAllowed(bytes32,bytes32)": FunctionFragment; + "requireFuturesActive()": FunctionFragment; + "requireFuturesMarketActive(bytes32)": FunctionFragment; + "requireIssuanceActive()": FunctionFragment; + "requireSynthActive(bytes32)": FunctionFragment; + "requireSynthExchangeActive(bytes32)": FunctionFragment; + "requireSynthsActive(bytes32,bytes32)": FunctionFragment; + "requireSystemActive()": FunctionFragment; + "resumeExchange()": FunctionFragment; + "resumeFutures()": FunctionFragment; + "resumeFuturesMarket(bytes32)": FunctionFragment; + "resumeFuturesMarkets(bytes32[])": FunctionFragment; + "resumeIssuance()": FunctionFragment; + "resumeSynth(bytes32)": FunctionFragment; + "resumeSynthExchange(bytes32)": FunctionFragment; + "resumeSynths(bytes32[])": FunctionFragment; + "resumeSynthsExchange(bytes32[])": FunctionFragment; + "resumeSystem()": FunctionFragment; + "suspendExchange(uint256)": FunctionFragment; + "suspendFutures(uint256)": FunctionFragment; + "suspendFuturesMarket(bytes32,uint256)": FunctionFragment; + "suspendFuturesMarkets(bytes32[],uint256)": FunctionFragment; + "suspendIssuance(uint256)": FunctionFragment; + "suspendSynth(bytes32,uint256)": FunctionFragment; + "suspendSynthExchange(bytes32,uint256)": FunctionFragment; + "suspendSynths(bytes32[],uint256)": FunctionFragment; + "suspendSynthsExchange(bytes32[],uint256)": FunctionFragment; + "suspendSystem(uint256)": FunctionFragment; + "synthExchangeSuspension(bytes32)": FunctionFragment; + "synthSuspended(bytes32)": FunctionFragment; + "synthSuspension(bytes32)": FunctionFragment; + "systemSuspended()": FunctionFragment; + "systemSuspension()": FunctionFragment; + "updateAccessControl(bytes32,address,bool,bool)": FunctionFragment; + "updateAccessControls(bytes32[],address[],bool[],bool[])": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "CONTRACT_NAME" + | "SECTION_EXCHANGE" + | "SECTION_FUTURES" + | "SECTION_ISSUANCE" + | "SECTION_SYNTH" + | "SECTION_SYNTH_EXCHANGE" + | "SECTION_SYSTEM" + | "SUSPENSION_REASON_UPGRADE" + | "acceptOwnership" + | "accessControl" + | "exchangeSuspension" + | "futuresMarketSuspension" + | "futuresSuspension" + | "getFuturesMarketSuspensions" + | "getSynthExchangeSuspensions" + | "getSynthSuspensions" + | "isSystemUpgrading" + | "issuanceSuspension" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "requireExchangeActive" + | "requireExchangeBetweenSynthsAllowed" + | "requireFuturesActive" + | "requireFuturesMarketActive" + | "requireIssuanceActive" + | "requireSynthActive" + | "requireSynthExchangeActive" + | "requireSynthsActive" + | "requireSystemActive" + | "resumeExchange" + | "resumeFutures" + | "resumeFuturesMarket" + | "resumeFuturesMarkets" + | "resumeIssuance" + | "resumeSynth" + | "resumeSynthExchange" + | "resumeSynths" + | "resumeSynthsExchange" + | "resumeSystem" + | "suspendExchange" + | "suspendFutures" + | "suspendFuturesMarket" + | "suspendFuturesMarkets" + | "suspendIssuance" + | "suspendSynth" + | "suspendSynthExchange" + | "suspendSynths" + | "suspendSynthsExchange" + | "suspendSystem" + | "synthExchangeSuspension" + | "synthSuspended" + | "synthSuspension" + | "systemSuspended" + | "systemSuspension" + | "updateAccessControl" + | "updateAccessControls" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "CONTRACT_NAME", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_EXCHANGE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_FUTURES", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_ISSUANCE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYNTH", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYNTH_EXCHANGE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SECTION_SYSTEM", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "SUSPENSION_REASON_UPGRADE", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "accessControl", + values: [BytesLike, string] + ): string; + encodeFunctionData( + functionFragment: "exchangeSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "futuresMarketSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "futuresSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getFuturesMarketSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getSynthExchangeSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getSynthSuspensions", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "isSystemUpgrading", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "issuanceSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "requireExchangeActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireExchangeBetweenSynthsAllowed", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireFuturesActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireFuturesMarketActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireIssuanceActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "requireSynthActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSynthExchangeActive", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSynthsActive", + values: [BytesLike, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "requireSystemActive", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeExchange", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeFutures", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeFuturesMarket", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeFuturesMarkets", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeIssuance", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "resumeSynth", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeSynthExchange", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "resumeSynths", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeSynthsExchange", + values: [BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "resumeSystem", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "suspendExchange", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFutures", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFuturesMarket", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendFuturesMarkets", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendIssuance", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynth", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynthExchange", + values: [BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynths", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSynthsExchange", + values: [BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "suspendSystem", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "synthExchangeSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthSuspended", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "synthSuspension", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "systemSuspended", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "systemSuspension", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "updateAccessControl", + values: [BytesLike, string, boolean, boolean] + ): string; + encodeFunctionData( + functionFragment: "updateAccessControls", + values: [BytesLike[], string[], boolean[], boolean[]] + ): string; + + decodeFunctionResult( + functionFragment: "CONTRACT_NAME", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_EXCHANGE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_FUTURES", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_ISSUANCE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYNTH", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYNTH_EXCHANGE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SECTION_SYSTEM", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "SUSPENSION_REASON_UPGRADE", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "accessControl", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "exchangeSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "futuresMarketSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "futuresSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getFuturesMarketSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthExchangeSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getSynthSuspensions", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isSystemUpgrading", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "issuanceSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "requireExchangeActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireExchangeBetweenSynthsAllowed", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireFuturesActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireFuturesMarketActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireIssuanceActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthExchangeActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSynthsActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "requireSystemActive", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFutures", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFuturesMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeFuturesMarkets", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeIssuance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynth", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSynthsExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "resumeSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFutures", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFuturesMarket", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendFuturesMarkets", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendIssuance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynth", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynthExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynths", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSynthsExchange", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "suspendSystem", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthExchangeSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthSuspended", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "synthSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "systemSuspended", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "systemSuspension", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateAccessControl", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "updateAccessControls", + data: BytesLike + ): Result; + + events: { + "AccessControlUpdated(bytes32,address,bool,bool)": EventFragment; + "ExchangeResumed(uint256)": EventFragment; + "ExchangeSuspended(uint256)": EventFragment; + "FuturesMarketResumed(bytes32,uint256)": EventFragment; + "FuturesMarketSuspended(bytes32,uint256)": EventFragment; + "FuturesResumed(uint256)": EventFragment; + "FuturesSuspended(uint256)": EventFragment; + "IssuanceResumed(uint256)": EventFragment; + "IssuanceSuspended(uint256)": EventFragment; + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "SynthExchangeResumed(bytes32,uint256)": EventFragment; + "SynthExchangeSuspended(bytes32,uint256)": EventFragment; + "SynthResumed(bytes32,uint256)": EventFragment; + "SynthSuspended(bytes32,uint256)": EventFragment; + "SystemResumed(uint256)": EventFragment; + "SystemSuspended(uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AccessControlUpdated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ExchangeSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesMarketResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesMarketSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "FuturesSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "IssuanceResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "IssuanceSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchangeResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthExchangeSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SynthSuspended"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SystemResumed"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SystemSuspended"): EventFragment; } export interface AccessControlUpdatedEventObject { - section: string - account: string - canSuspend: boolean - canResume: boolean + section: string; + account: string; + canSuspend: boolean; + canResume: boolean; } export type AccessControlUpdatedEvent = TypedEvent< - [string, string, boolean, boolean], - AccessControlUpdatedEventObject -> + [string, string, boolean, boolean], + AccessControlUpdatedEventObject +>; -export type AccessControlUpdatedEventFilter = TypedEventFilter +export type AccessControlUpdatedEventFilter = + TypedEventFilter; export interface ExchangeResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type ExchangeResumedEvent = TypedEvent<[BigNumber], ExchangeResumedEventObject> +export type ExchangeResumedEvent = TypedEvent< + [BigNumber], + ExchangeResumedEventObject +>; -export type ExchangeResumedEventFilter = TypedEventFilter +export type ExchangeResumedEventFilter = TypedEventFilter; export interface ExchangeSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type ExchangeSuspendedEvent = TypedEvent<[BigNumber], ExchangeSuspendedEventObject> +export type ExchangeSuspendedEvent = TypedEvent< + [BigNumber], + ExchangeSuspendedEventObject +>; -export type ExchangeSuspendedEventFilter = TypedEventFilter +export type ExchangeSuspendedEventFilter = + TypedEventFilter; export interface FuturesMarketResumedEventObject { - marketKey: string - reason: BigNumber + marketKey: string; + reason: BigNumber; } export type FuturesMarketResumedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketResumedEventObject -> + [string, BigNumber], + FuturesMarketResumedEventObject +>; -export type FuturesMarketResumedEventFilter = TypedEventFilter +export type FuturesMarketResumedEventFilter = + TypedEventFilter; export interface FuturesMarketSuspendedEventObject { - marketKey: string - reason: BigNumber + marketKey: string; + reason: BigNumber; } export type FuturesMarketSuspendedEvent = TypedEvent< - [string, BigNumber], - FuturesMarketSuspendedEventObject -> + [string, BigNumber], + FuturesMarketSuspendedEventObject +>; -export type FuturesMarketSuspendedEventFilter = TypedEventFilter +export type FuturesMarketSuspendedEventFilter = + TypedEventFilter; export interface FuturesResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type FuturesResumedEvent = TypedEvent<[BigNumber], FuturesResumedEventObject> +export type FuturesResumedEvent = TypedEvent< + [BigNumber], + FuturesResumedEventObject +>; -export type FuturesResumedEventFilter = TypedEventFilter +export type FuturesResumedEventFilter = TypedEventFilter; export interface FuturesSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type FuturesSuspendedEvent = TypedEvent<[BigNumber], FuturesSuspendedEventObject> +export type FuturesSuspendedEvent = TypedEvent< + [BigNumber], + FuturesSuspendedEventObject +>; -export type FuturesSuspendedEventFilter = TypedEventFilter +export type FuturesSuspendedEventFilter = + TypedEventFilter; export interface IssuanceResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type IssuanceResumedEvent = TypedEvent<[BigNumber], IssuanceResumedEventObject> +export type IssuanceResumedEvent = TypedEvent< + [BigNumber], + IssuanceResumedEventObject +>; -export type IssuanceResumedEventFilter = TypedEventFilter +export type IssuanceResumedEventFilter = TypedEventFilter; export interface IssuanceSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type IssuanceSuspendedEvent = TypedEvent<[BigNumber], IssuanceSuspendedEventObject> +export type IssuanceSuspendedEvent = TypedEvent< + [BigNumber], + IssuanceSuspendedEventObject +>; -export type IssuanceSuspendedEventFilter = TypedEventFilter +export type IssuanceSuspendedEventFilter = + TypedEventFilter; export interface OwnerChangedEventObject { - oldOwner: string - newOwner: string + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface OwnerNominatedEventObject { - newOwner: string + newOwner: string; } -export type OwnerNominatedEvent = TypedEvent<[string], OwnerNominatedEventObject> +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; -export type OwnerNominatedEventFilter = TypedEventFilter +export type OwnerNominatedEventFilter = TypedEventFilter; export interface SynthExchangeResumedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } export type SynthExchangeResumedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeResumedEventObject -> + [string, BigNumber], + SynthExchangeResumedEventObject +>; -export type SynthExchangeResumedEventFilter = TypedEventFilter +export type SynthExchangeResumedEventFilter = + TypedEventFilter; export interface SynthExchangeSuspendedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } export type SynthExchangeSuspendedEvent = TypedEvent< - [string, BigNumber], - SynthExchangeSuspendedEventObject -> + [string, BigNumber], + SynthExchangeSuspendedEventObject +>; -export type SynthExchangeSuspendedEventFilter = TypedEventFilter +export type SynthExchangeSuspendedEventFilter = + TypedEventFilter; export interface SynthResumedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } -export type SynthResumedEvent = TypedEvent<[string, BigNumber], SynthResumedEventObject> +export type SynthResumedEvent = TypedEvent< + [string, BigNumber], + SynthResumedEventObject +>; -export type SynthResumedEventFilter = TypedEventFilter +export type SynthResumedEventFilter = TypedEventFilter; export interface SynthSuspendedEventObject { - currencyKey: string - reason: BigNumber + currencyKey: string; + reason: BigNumber; } -export type SynthSuspendedEvent = TypedEvent<[string, BigNumber], SynthSuspendedEventObject> +export type SynthSuspendedEvent = TypedEvent< + [string, BigNumber], + SynthSuspendedEventObject +>; -export type SynthSuspendedEventFilter = TypedEventFilter +export type SynthSuspendedEventFilter = TypedEventFilter; export interface SystemResumedEventObject { - reason: BigNumber + reason: BigNumber; } -export type SystemResumedEvent = TypedEvent<[BigNumber], SystemResumedEventObject> +export type SystemResumedEvent = TypedEvent< + [BigNumber], + SystemResumedEventObject +>; -export type SystemResumedEventFilter = TypedEventFilter +export type SystemResumedEventFilter = TypedEventFilter; export interface SystemSuspendedEventObject { - reason: BigNumber + reason: BigNumber; } -export type SystemSuspendedEvent = TypedEvent<[BigNumber], SystemSuspendedEventObject> +export type SystemSuspendedEvent = TypedEvent< + [BigNumber], + SystemSuspendedEventObject +>; -export type SystemSuspendedEventFilter = TypedEventFilter +export type SystemSuspendedEventFilter = TypedEventFilter; export interface SystemStatus extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise - - interface: SystemStatusInterface - - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> - - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent - - functions: { - CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]> - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]> - - SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]> - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]> - - SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]> - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]> - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]> - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise<[string]> - - owner(overrides?: CallOverrides): Promise<[string]> - - requireExchangeActive(overrides?: CallOverrides): Promise<[void]> - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]> - - requireFuturesActive(overrides?: CallOverrides): Promise<[void]> - - requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise<[void]> - - requireIssuanceActive(overrides?: CallOverrides): Promise<[void]> - - requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[void]> - - requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[void]> - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise<[void]> - - requireSystemActive(overrides?: CallOverrides): Promise<[void]> - - resumeExchange(overrides?: Overrides & { from?: string }): Promise - - resumeFutures(overrides?: Overrides & { from?: string }): Promise - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeIssuance(overrides?: Overrides & { from?: string }): Promise - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSystem(overrides?: Overrides & { from?: string }): Promise - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise<[boolean]> - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise<[boolean]> - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise - } - - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise<[boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] }> - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange(overrides?: Overrides & { from?: string }): Promise - - resumeFutures(overrides?: Overrides & { from?: string }): Promise - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeIssuance(overrides?: Overrides & { from?: string }): Promise - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSystem(overrides?: Overrides & { from?: string }): Promise - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise - - callStatic: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: CallOverrides): Promise - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }> - - exchangeSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - futuresSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - exchangeSuspensions: boolean[] - reasons: BigNumber[] - } - > - - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise< - [boolean[], BigNumber[]] & { - suspensions: boolean[] - reasons: BigNumber[] - } - > - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - requireSynthExchangeActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange(overrides?: CallOverrides): Promise - - resumeFutures(overrides?: CallOverrides): Promise - - resumeFuturesMarket(marketKey: BytesLike, overrides?: CallOverrides): Promise - - resumeFuturesMarkets(marketKeys: BytesLike[], overrides?: CallOverrides): Promise - - resumeIssuance(overrides?: CallOverrides): Promise - - resumeSynth(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - resumeSynthExchange(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - resumeSynths(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - resumeSynthsExchange(currencyKeys: BytesLike[], overrides?: CallOverrides): Promise - - resumeSystem(overrides?: CallOverrides): Promise - - suspendExchange(reason: BigNumberish, overrides?: CallOverrides): Promise - - suspendFutures(reason: BigNumberish, overrides?: CallOverrides): Promise - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendIssuance(reason: BigNumberish, overrides?: CallOverrides): Promise - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: CallOverrides - ): Promise - - suspendSystem(reason: BigNumberish, overrides?: CallOverrides): Promise - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension( - overrides?: CallOverrides - ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }> - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: CallOverrides - ): Promise - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: CallOverrides - ): Promise - } - - filters: { - 'AccessControlUpdated(bytes32,address,bool,bool)'( - section?: BytesLike | null, - account?: string | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter - AccessControlUpdated( - section?: BytesLike | null, - account?: string | null, - canSuspend?: null, - canResume?: null - ): AccessControlUpdatedEventFilter - - 'ExchangeResumed(uint256)'(reason?: null): ExchangeResumedEventFilter - ExchangeResumed(reason?: null): ExchangeResumedEventFilter - - 'ExchangeSuspended(uint256)'(reason?: null): ExchangeSuspendedEventFilter - ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter - - 'FuturesMarketResumed(bytes32,uint256)'( - marketKey?: null, - reason?: null - ): FuturesMarketResumedEventFilter - FuturesMarketResumed(marketKey?: null, reason?: null): FuturesMarketResumedEventFilter - - 'FuturesMarketSuspended(bytes32,uint256)'( - marketKey?: null, - reason?: null - ): FuturesMarketSuspendedEventFilter - FuturesMarketSuspended(marketKey?: null, reason?: null): FuturesMarketSuspendedEventFilter - - 'FuturesResumed(uint256)'(reason?: null): FuturesResumedEventFilter - FuturesResumed(reason?: null): FuturesResumedEventFilter - - 'FuturesSuspended(uint256)'(reason?: null): FuturesSuspendedEventFilter - FuturesSuspended(reason?: null): FuturesSuspendedEventFilter - - 'IssuanceResumed(uint256)'(reason?: null): IssuanceResumedEventFilter - IssuanceResumed(reason?: null): IssuanceResumedEventFilter - - 'IssuanceSuspended(uint256)'(reason?: null): IssuanceSuspendedEventFilter - IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter - - 'OwnerChanged(address,address)'(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter - - 'OwnerNominated(address)'(newOwner?: null): OwnerNominatedEventFilter - OwnerNominated(newOwner?: null): OwnerNominatedEventFilter - - 'SynthExchangeResumed(bytes32,uint256)'( - currencyKey?: null, - reason?: null - ): SynthExchangeResumedEventFilter - SynthExchangeResumed(currencyKey?: null, reason?: null): SynthExchangeResumedEventFilter - - 'SynthExchangeSuspended(bytes32,uint256)'( - currencyKey?: null, - reason?: null - ): SynthExchangeSuspendedEventFilter - SynthExchangeSuspended(currencyKey?: null, reason?: null): SynthExchangeSuspendedEventFilter - - 'SynthResumed(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthResumedEventFilter - SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter - - 'SynthSuspended(bytes32,uint256)'(currencyKey?: null, reason?: null): SynthSuspendedEventFilter - SynthSuspended(currencyKey?: null, reason?: null): SynthSuspendedEventFilter - - 'SystemResumed(uint256)'(reason?: null): SystemResumedEventFilter - SystemResumed(reason?: null): SystemResumedEventFilter - - 'SystemSuspended(uint256)'(reason?: null): SystemSuspendedEventFilter - SystemSuspended(reason?: null): SystemSuspendedEventFilter - } - - estimateGas: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessControl(arg0: BytesLike, arg1: string, overrides?: CallOverrides): Promise - - exchangeSuspension(overrides?: CallOverrides): Promise - - futuresMarketSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise - - futuresSuspension(overrides?: CallOverrides): Promise - - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise - - getSynthExchangeSuspensions(synths: BytesLike[], overrides?: CallOverrides): Promise - - getSynthSuspensions(synths: BytesLike[], overrides?: CallOverrides): Promise - - isSystemUpgrading(overrides?: CallOverrides): Promise - - issuanceSuspension(overrides?: CallOverrides): Promise - - nominateNewOwner(_owner: string, overrides?: Overrides & { from?: string }): Promise - - nominatedOwner(overrides?: CallOverrides): Promise - - owner(overrides?: CallOverrides): Promise - - requireExchangeActive(overrides?: CallOverrides): Promise - - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireFuturesActive(overrides?: CallOverrides): Promise - - requireFuturesMarketActive(marketKey: BytesLike, overrides?: CallOverrides): Promise - - requireIssuanceActive(overrides?: CallOverrides): Promise - - requireSynthActive(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise - - requireSystemActive(overrides?: CallOverrides): Promise - - resumeExchange(overrides?: Overrides & { from?: string }): Promise - - resumeFutures(overrides?: Overrides & { from?: string }): Promise - - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeIssuance(overrides?: Overrides & { from?: string }): Promise - - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSystem(overrides?: Overrides & { from?: string }): Promise - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - synthExchangeSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise - - synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension(overrides?: CallOverrides): Promise - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise - } - - populateTransaction: { - CONTRACT_NAME(overrides?: CallOverrides): Promise - - SECTION_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_FUTURES(overrides?: CallOverrides): Promise - - SECTION_ISSUANCE(overrides?: CallOverrides): Promise - - SECTION_SYNTH(overrides?: CallOverrides): Promise - - SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise - - SECTION_SYSTEM(overrides?: CallOverrides): Promise - - SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise - - acceptOwnership(overrides?: Overrides & { from?: string }): Promise - - accessControl( - arg0: BytesLike, - arg1: string, - overrides?: CallOverrides - ): Promise - - exchangeSuspension(overrides?: CallOverrides): Promise - - futuresMarketSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: SystemStatusInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + CONTRACT_NAME(overrides?: CallOverrides): Promise<[string]>; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_FUTURES(overrides?: CallOverrides): Promise<[string]>; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYNTH(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise<[string]>; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise<[string]>; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise<[BigNumber]>; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise< + [boolean, boolean] & { canSuspend: boolean; canResume: boolean } + >; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise<[boolean]>; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + requireExchangeActive(overrides?: CallOverrides): Promise<[void]>; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireFuturesActive(overrides?: CallOverrides): Promise<[void]>; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireIssuanceActive(overrides?: CallOverrides): Promise<[void]>; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[void]>; + + requireSystemActive(overrides?: CallOverrides): Promise<[void]>; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + systemSuspended(overrides?: CallOverrides): Promise<[boolean]>; + + systemSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise<[boolean, boolean] & { canSuspend: boolean; canResume: boolean }>; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + futuresSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { suspensions: boolean[]; reasons: BigNumber[] } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive(overrides?: CallOverrides): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive(overrides?: CallOverrides): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive(overrides?: CallOverrides): Promise; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension( + overrides?: CallOverrides + ): Promise<[boolean, BigNumber] & { suspended: boolean; reason: BigNumber }>; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; + + acceptOwnership(overrides?: CallOverrides): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise< + [boolean, boolean] & { canSuspend: boolean; canResume: boolean } + >; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + futuresSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + exchangeSuspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise< + [boolean[], BigNumber[]] & { + suspensions: boolean[]; + reasons: BigNumber[]; + } + >; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + nominateNewOwner(_owner: string, overrides?: CallOverrides): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive(overrides?: CallOverrides): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive(overrides?: CallOverrides): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive(overrides?: CallOverrides): Promise; + + resumeExchange(overrides?: CallOverrides): Promise; + + resumeFutures(overrides?: CallOverrides): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeIssuance(overrides?: CallOverrides): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + resumeSystem(overrides?: CallOverrides): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: CallOverrides + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension( + overrides?: CallOverrides + ): Promise< + [boolean, BigNumber] & { suspended: boolean; reason: BigNumber } + >; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: CallOverrides + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "AccessControlUpdated(bytes32,address,bool,bool)"( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter; + AccessControlUpdated( + section?: BytesLike | null, + account?: string | null, + canSuspend?: null, + canResume?: null + ): AccessControlUpdatedEventFilter; + + "ExchangeResumed(uint256)"(reason?: null): ExchangeResumedEventFilter; + ExchangeResumed(reason?: null): ExchangeResumedEventFilter; + + "ExchangeSuspended(uint256)"(reason?: null): ExchangeSuspendedEventFilter; + ExchangeSuspended(reason?: null): ExchangeSuspendedEventFilter; + + "FuturesMarketResumed(bytes32,uint256)"( + marketKey?: null, + reason?: null + ): FuturesMarketResumedEventFilter; + FuturesMarketResumed( + marketKey?: null, + reason?: null + ): FuturesMarketResumedEventFilter; + + "FuturesMarketSuspended(bytes32,uint256)"( + marketKey?: null, + reason?: null + ): FuturesMarketSuspendedEventFilter; + FuturesMarketSuspended( + marketKey?: null, + reason?: null + ): FuturesMarketSuspendedEventFilter; + + "FuturesResumed(uint256)"(reason?: null): FuturesResumedEventFilter; + FuturesResumed(reason?: null): FuturesResumedEventFilter; + + "FuturesSuspended(uint256)"(reason?: null): FuturesSuspendedEventFilter; + FuturesSuspended(reason?: null): FuturesSuspendedEventFilter; + + "IssuanceResumed(uint256)"(reason?: null): IssuanceResumedEventFilter; + IssuanceResumed(reason?: null): IssuanceResumedEventFilter; + + "IssuanceSuspended(uint256)"(reason?: null): IssuanceSuspendedEventFilter; + IssuanceSuspended(reason?: null): IssuanceSuspendedEventFilter; + + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "SynthExchangeResumed(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthExchangeResumedEventFilter; + SynthExchangeResumed( + currencyKey?: null, + reason?: null + ): SynthExchangeResumedEventFilter; + + "SynthExchangeSuspended(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthExchangeSuspendedEventFilter; + SynthExchangeSuspended( + currencyKey?: null, + reason?: null + ): SynthExchangeSuspendedEventFilter; + + "SynthResumed(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthResumedEventFilter; + SynthResumed(currencyKey?: null, reason?: null): SynthResumedEventFilter; + + "SynthSuspended(bytes32,uint256)"( + currencyKey?: null, + reason?: null + ): SynthSuspendedEventFilter; + SynthSuspended( + currencyKey?: null, + reason?: null + ): SynthSuspendedEventFilter; + + "SystemResumed(uint256)"(reason?: null): SystemResumedEventFilter; + SystemResumed(reason?: null): SystemResumedEventFilter; + + "SystemSuspended(uint256)"(reason?: null): SystemSuspendedEventFilter; + SystemSuspended(reason?: null): SystemSuspendedEventFilter; + }; + + estimateGas: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE(overrides?: CallOverrides): Promise; - futuresSuspension(overrides?: CallOverrides): Promise + SECTION_SYSTEM(overrides?: CallOverrides): Promise; - getFuturesMarketSuspensions( - marketKeys: BytesLike[], - overrides?: CallOverrides - ): Promise + SUSPENSION_REASON_UPGRADE(overrides?: CallOverrides): Promise; - getSynthExchangeSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - getSynthSuspensions( - synths: BytesLike[], - overrides?: CallOverrides - ): Promise + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise; - isSystemUpgrading(overrides?: CallOverrides): Promise + exchangeSuspension(overrides?: CallOverrides): Promise; - issuanceSuspension(overrides?: CallOverrides): Promise + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; - nominateNewOwner( - _owner: string, - overrides?: Overrides & { from?: string } - ): Promise + futuresSuspension(overrides?: CallOverrides): Promise; - nominatedOwner(overrides?: CallOverrides): Promise + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; - requireExchangeActive(overrides?: CallOverrides): Promise + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; - requireExchangeBetweenSynthsAllowed( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + isSystemUpgrading(overrides?: CallOverrides): Promise; - requireFuturesActive(overrides?: CallOverrides): Promise + issuanceSuspension(overrides?: CallOverrides): Promise; - requireFuturesMarketActive( - marketKey: BytesLike, - overrides?: CallOverrides - ): Promise + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; - requireIssuanceActive(overrides?: CallOverrides): Promise + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive(overrides?: CallOverrides): Promise; - requireSynthActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireSynthExchangeActive( - currencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + requireFuturesActive(overrides?: CallOverrides): Promise; - requireSynthsActive( - sourceCurrencyKey: BytesLike, - destinationCurrencyKey: BytesLike, - overrides?: CallOverrides - ): Promise + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; - requireSystemActive(overrides?: CallOverrides): Promise + requireIssuanceActive(overrides?: CallOverrides): Promise; - resumeExchange(overrides?: Overrides & { from?: string }): Promise + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - resumeFutures(overrides?: Overrides & { from?: string }): Promise + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - resumeFuturesMarket( - marketKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; - resumeFuturesMarkets( - marketKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise + requireSystemActive(overrides?: CallOverrides): Promise; - resumeIssuance(overrides?: Overrides & { from?: string }): Promise + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; - resumeSynth( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthExchange( - currencyKey: BytesLike, - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynths( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSynthsExchange( - currencyKeys: BytesLike[], - overrides?: Overrides & { from?: string } - ): Promise - - resumeSystem(overrides?: Overrides & { from?: string }): Promise - - suspendExchange( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFutures( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarket( - marketKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendFuturesMarkets( - marketKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendIssuance( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynth( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthExchange( - currencyKey: BytesLike, - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynths( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSynthsExchange( - currencyKeys: BytesLike[], - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - suspendSystem( - reason: BigNumberish, - overrides?: Overrides & { from?: string } - ): Promise - - synthExchangeSuspension( - arg0: BytesLike, - overrides?: CallOverrides - ): Promise - - synthSuspended(currencyKey: BytesLike, overrides?: CallOverrides): Promise - - synthSuspension(arg0: BytesLike, overrides?: CallOverrides): Promise - - systemSuspended(overrides?: CallOverrides): Promise - - systemSuspension(overrides?: CallOverrides): Promise - - updateAccessControl( - section: BytesLike, - account: string, - canSuspend: boolean, - canResume: boolean, - overrides?: Overrides & { from?: string } - ): Promise - - updateAccessControls( - sections: BytesLike[], - accounts: string[], - canSuspends: boolean[], - canResumes: boolean[], - overrides?: Overrides & { from?: string } - ): Promise - } + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem(overrides?: Overrides & { from?: string }): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension(overrides?: CallOverrides): Promise; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + CONTRACT_NAME(overrides?: CallOverrides): Promise; + + SECTION_EXCHANGE(overrides?: CallOverrides): Promise; + + SECTION_FUTURES(overrides?: CallOverrides): Promise; + + SECTION_ISSUANCE(overrides?: CallOverrides): Promise; + + SECTION_SYNTH(overrides?: CallOverrides): Promise; + + SECTION_SYNTH_EXCHANGE( + overrides?: CallOverrides + ): Promise; + + SECTION_SYSTEM(overrides?: CallOverrides): Promise; + + SUSPENSION_REASON_UPGRADE( + overrides?: CallOverrides + ): Promise; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + accessControl( + arg0: BytesLike, + arg1: string, + overrides?: CallOverrides + ): Promise; + + exchangeSuspension( + overrides?: CallOverrides + ): Promise; + + futuresMarketSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + futuresSuspension(overrides?: CallOverrides): Promise; + + getFuturesMarketSuspensions( + marketKeys: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getSynthExchangeSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; + + getSynthSuspensions( + synths: BytesLike[], + overrides?: CallOverrides + ): Promise; + + isSystemUpgrading(overrides?: CallOverrides): Promise; + + issuanceSuspension( + overrides?: CallOverrides + ): Promise; + + nominateNewOwner( + _owner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + requireExchangeActive( + overrides?: CallOverrides + ): Promise; + + requireExchangeBetweenSynthsAllowed( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireFuturesActive( + overrides?: CallOverrides + ): Promise; + + requireFuturesMarketActive( + marketKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireIssuanceActive( + overrides?: CallOverrides + ): Promise; + + requireSynthActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthExchangeActive( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSynthsActive( + sourceCurrencyKey: BytesLike, + destinationCurrencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + requireSystemActive( + overrides?: CallOverrides + ): Promise; + + resumeExchange( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFutures( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarket( + marketKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeFuturesMarkets( + marketKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeIssuance( + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynth( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthExchange( + currencyKey: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynths( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSynthsExchange( + currencyKeys: BytesLike[], + overrides?: Overrides & { from?: string } + ): Promise; + + resumeSystem( + overrides?: Overrides & { from?: string } + ): Promise; + + suspendExchange( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFutures( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarket( + marketKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendFuturesMarkets( + marketKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendIssuance( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynth( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthExchange( + currencyKey: BytesLike, + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynths( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSynthsExchange( + currencyKeys: BytesLike[], + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + suspendSystem( + reason: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + synthExchangeSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspended( + currencyKey: BytesLike, + overrides?: CallOverrides + ): Promise; + + synthSuspension( + arg0: BytesLike, + overrides?: CallOverrides + ): Promise; + + systemSuspended(overrides?: CallOverrides): Promise; + + systemSuspension(overrides?: CallOverrides): Promise; + + updateAccessControl( + section: BytesLike, + account: string, + canSuspend: boolean, + canResume: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + updateAccessControls( + sections: BytesLike[], + accounts: string[], + canSuspends: boolean[], + canResumes: boolean[], + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts index 395ccfcece..fcced87c09 100644 --- a/packages/sdk/src/contracts/types/VKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VKwentaRedeemer.ts @@ -2,116 +2,141 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface VKwentaRedeemerInterface extends utils.Interface { - functions: { - 'redeem()': FunctionFragment - 'token()': FunctionFragment - 'vToken()': FunctionFragment - } + functions: { + "redeem()": FunctionFragment; + "token()": FunctionFragment; + "vToken()": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'redeem' | 'token' | 'vToken'): FunctionFragment + getFunction( + nameOrSignatureOrTopic: "redeem" | "token" | "vToken" + ): FunctionFragment; - encodeFunctionData(functionFragment: 'redeem', values?: undefined): string - encodeFunctionData(functionFragment: 'token', values?: undefined): string - encodeFunctionData(functionFragment: 'vToken', values?: undefined): string + encodeFunctionData(functionFragment: "redeem", values?: undefined): string; + encodeFunctionData(functionFragment: "token", values?: undefined): string; + encodeFunctionData(functionFragment: "vToken", values?: undefined): string; - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'token', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'vToken', data: BytesLike): Result + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "token", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "vToken", data: BytesLike): Result; - events: { - 'Redeemed(address,uint256)': EventFragment - } + events: { + "Redeemed(address,uint256)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment + getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; } export interface RedeemedEventObject { - redeemer: string - redeemedAmount: BigNumber + redeemer: string; + redeemedAmount: BigNumber; } -export type RedeemedEvent = TypedEvent<[string, BigNumber], RedeemedEventObject> +export type RedeemedEvent = TypedEvent< + [string, BigNumber], + RedeemedEventObject +>; -export type RedeemedEventFilter = TypedEventFilter +export type RedeemedEventFilter = TypedEventFilter; export interface VKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: VKwentaRedeemerInterface + interface: VKwentaRedeemerInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - redeem(overrides?: Overrides & { from?: string }): Promise + functions: { + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise<[string]> + token(overrides?: CallOverrides): Promise<[string]>; - vToken(overrides?: CallOverrides): Promise<[string]> - } + vToken(overrides?: CallOverrides): Promise<[string]>; + }; - redeem(overrides?: Overrides & { from?: string }): Promise + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise + vToken(overrides?: CallOverrides): Promise; - callStatic: { - redeem(overrides?: CallOverrides): Promise + callStatic: { + redeem(overrides?: CallOverrides): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; - filters: { - 'Redeemed(address,uint256)'(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter - Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter - } + filters: { + "Redeemed(address,uint256)"( + redeemer?: null, + redeemedAmount?: null + ): RedeemedEventFilter; + Redeemed(redeemer?: null, redeemedAmount?: null): RedeemedEventFilter; + }; - estimateGas: { - redeem(overrides?: Overrides & { from?: string }): Promise + estimateGas: { + redeem(overrides?: Overrides & { from?: string }): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - redeem(overrides?: Overrides & { from?: string }): Promise + populateTransaction: { + redeem( + overrides?: Overrides & { from?: string } + ): Promise; - token(overrides?: CallOverrides): Promise + token(overrides?: CallOverrides): Promise; - vToken(overrides?: CallOverrides): Promise - } + vToken(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts index 5adbbce251..a939b999ca 100644 --- a/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts +++ b/packages/sdk/src/contracts/types/VeKwentaRedeemer.ts @@ -2,149 +2,172 @@ /* tslint:disable */ /* eslint-disable */ import type { - BaseContract, - BigNumber, - BytesLike, - CallOverrides, - ContractTransaction, - Overrides, - PopulatedTransaction, - Signer, - utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from './common' + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; export interface VeKwentaRedeemerInterface extends utils.Interface { - functions: { - 'kwenta()': FunctionFragment - 'redeem(address)': FunctionFragment - 'rewardEscrow()': FunctionFragment - 'veKwenta()': FunctionFragment - } - - getFunction( - nameOrSignatureOrTopic: 'kwenta' | 'redeem' | 'rewardEscrow' | 'veKwenta' - ): FunctionFragment - - encodeFunctionData(functionFragment: 'kwenta', values?: undefined): string - encodeFunctionData(functionFragment: 'redeem', values: [string]): string - encodeFunctionData(functionFragment: 'rewardEscrow', values?: undefined): string - encodeFunctionData(functionFragment: 'veKwenta', values?: undefined): string - - decodeFunctionResult(functionFragment: 'kwenta', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'redeem', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'rewardEscrow', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'veKwenta', data: BytesLike): Result - - events: { - 'Redeemed(address,address,uint256)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'Redeemed'): EventFragment + functions: { + "kwenta()": FunctionFragment; + "redeem(address)": FunctionFragment; + "rewardEscrow()": FunctionFragment; + "veKwenta()": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: "kwenta" | "redeem" | "rewardEscrow" | "veKwenta" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "kwenta", values?: undefined): string; + encodeFunctionData(functionFragment: "redeem", values: [string]): string; + encodeFunctionData( + functionFragment: "rewardEscrow", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "veKwenta", values?: undefined): string; + + decodeFunctionResult(functionFragment: "kwenta", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "rewardEscrow", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "veKwenta", data: BytesLike): Result; + + events: { + "Redeemed(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; } export interface RedeemedEventObject { - redeemer: string - beneficiary: string - redeemedAmount: BigNumber + redeemer: string; + beneficiary: string; + redeemedAmount: BigNumber; } -export type RedeemedEvent = TypedEvent<[string, string, BigNumber], RedeemedEventObject> +export type RedeemedEvent = TypedEvent< + [string, string, BigNumber], + RedeemedEventObject +>; -export type RedeemedEventFilter = TypedEventFilter +export type RedeemedEventFilter = TypedEventFilter; export interface VeKwentaRedeemer extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: VeKwentaRedeemerInterface + interface: VeKwentaRedeemerInterface; - queryFilter( - event: TypedEventFilter, - fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined - ): Promise> + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; - listeners( - eventFilter?: TypedEventFilter - ): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; - functions: { - kwenta(overrides?: CallOverrides): Promise<[string]> + functions: { + kwenta(overrides?: CallOverrides): Promise<[string]>; - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise<[string]> + rewardEscrow(overrides?: CallOverrides): Promise<[string]>; - veKwenta(overrides?: CallOverrides): Promise<[string]> - } + veKwenta(overrides?: CallOverrides): Promise<[string]>; + }; - kwenta(overrides?: CallOverrides): Promise + kwenta(overrides?: CallOverrides): Promise; - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise + veKwenta(overrides?: CallOverrides): Promise; - callStatic: { - kwenta(overrides?: CallOverrides): Promise + callStatic: { + kwenta(overrides?: CallOverrides): Promise; - redeem(_beneficiary: string, overrides?: CallOverrides): Promise + redeem(_beneficiary: string, overrides?: CallOverrides): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; - filters: { - 'Redeemed(address,address,uint256)'( - redeemer?: string | null, - beneficiary?: string | null, - redeemedAmount?: null - ): RedeemedEventFilter - Redeemed( - redeemer?: string | null, - beneficiary?: string | null, - redeemedAmount?: null - ): RedeemedEventFilter - } + filters: { + "Redeemed(address,address,uint256)"( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter; + Redeemed( + redeemer?: string | null, + beneficiary?: string | null, + redeemedAmount?: null + ): RedeemedEventFilter; + }; - estimateGas: { - kwenta(overrides?: CallOverrides): Promise + estimateGas: { + kwenta(overrides?: CallOverrides): Promise; - redeem(_beneficiary: string, overrides?: Overrides & { from?: string }): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; - populateTransaction: { - kwenta(overrides?: CallOverrides): Promise + populateTransaction: { + kwenta(overrides?: CallOverrides): Promise; - redeem( - _beneficiary: string, - overrides?: Overrides & { from?: string } - ): Promise + redeem( + _beneficiary: string, + overrides?: Overrides & { from?: string } + ): Promise; - rewardEscrow(overrides?: CallOverrides): Promise + rewardEscrow(overrides?: CallOverrides): Promise; - veKwenta(overrides?: CallOverrides): Promise - } + veKwenta(overrides?: CallOverrides): Promise; + }; } diff --git a/packages/sdk/src/contracts/types/common.ts b/packages/sdk/src/contracts/types/common.ts index 0621ff0f86..2fc40c7fb1 100644 --- a/packages/sdk/src/contracts/types/common.ts +++ b/packages/sdk/src/contracts/types/common.ts @@ -1,35 +1,44 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { Listener } from '@ethersproject/providers' -import type { Event, EventFilter } from 'ethers' - -export interface TypedEvent = any, TArgsObject = any> extends Event { - args: TArgsArray & TArgsObject +import type { Listener } from "@ethersproject/providers"; +import type { Event, EventFilter } from "ethers"; + +export interface TypedEvent< + TArgsArray extends Array = any, + TArgsObject = any +> extends Event { + args: TArgsArray & TArgsObject; } -export interface TypedEventFilter<_TEvent extends TypedEvent> extends EventFilter {} +export interface TypedEventFilter<_TEvent extends TypedEvent> + extends EventFilter {} export interface TypedListener { - (...listenerArg: [...__TypechainArgsArray, TEvent]): void + (...listenerArg: [...__TypechainArgsArray, TEvent]): void; } -type __TypechainArgsArray = T extends TypedEvent ? U : never +type __TypechainArgsArray = T extends TypedEvent ? U : never; export interface OnEvent { - ( - eventFilter: TypedEventFilter, - listener: TypedListener - ): TRes - (eventName: string, listener: Listener): TRes + ( + eventFilter: TypedEventFilter, + listener: TypedListener + ): TRes; + (eventName: string, listener: Listener): TRes; } export type MinEthersFactory = { - deploy(...a: ARGS[]): Promise -} + deploy(...a: ARGS[]): Promise; +}; -export type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never +export type GetContractTypeFromFactory = F extends MinEthersFactory< + infer C, + any +> + ? C + : never; export type GetARGsTypeFromFactory = F extends MinEthersFactory - ? Parameters - : never + ? Parameters + : never; diff --git a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts index d03548132c..58f33be508 100644 --- a/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/BatchClaimer__factory.ts @@ -2,64 +2,67 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { BatchClaimer, BatchClaimerInterface } from '../BatchClaimer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { BatchClaimer, BatchClaimerInterface } from "../BatchClaimer"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IMultipleMerkleDistributor[]', - name: '_distributors', - type: 'address[]', - }, - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[][]', - name: '_claims', - type: 'tuple[][]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "contract IMultipleMerkleDistributor[]", + name: "_distributors", + type: "address[]", + }, + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[][]", + name: "_claims", + type: "tuple[][]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class BatchClaimer__factory { - static readonly abi = _abi - static createInterface(): BatchClaimerInterface { - return new utils.Interface(_abi) as BatchClaimerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): BatchClaimer { - return new Contract(address, _abi, signerOrProvider) as BatchClaimer - } + static readonly abi = _abi; + static createInterface(): BatchClaimerInterface { + return new utils.Interface(_abi) as BatchClaimerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): BatchClaimer { + return new Contract(address, _abi, signerOrProvider) as BatchClaimer; + } } diff --git a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts index 5bb462bd75..490b696189 100644 --- a/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts +++ b/packages/sdk/src/contracts/types/factories/DappMaintenance__factory.ts @@ -2,218 +2,224 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { DappMaintenance, DappMaintenanceInterface } from '../DappMaintenance' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + DappMaintenance, + DappMaintenanceInterface, +} from "../DappMaintenance"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'SXMaintenance', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'StakingMaintenance', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isPausedSX', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isPausedStaking', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeAll', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeSX', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'setMaintenanceModeStaking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "SXMaintenance", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "StakingMaintenance", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isPausedSX", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isPausedStaking", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeSX", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "setMaintenanceModeStaking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class DappMaintenance__factory { - static readonly abi = _abi - static createInterface(): DappMaintenanceInterface { - return new utils.Interface(_abi) as DappMaintenanceInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): DappMaintenance { - return new Contract(address, _abi, signerOrProvider) as DappMaintenance - } + static readonly abi = _abi; + static createInterface(): DappMaintenanceInterface { + return new utils.Interface(_abi) as DappMaintenanceInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): DappMaintenance { + return new Contract(address, _abi, signerOrProvider) as DappMaintenance; + } } diff --git a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts index c7764a4a28..04ea74421d 100644 --- a/packages/sdk/src/contracts/types/factories/ERC20__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ERC20__factory.ts @@ -2,353 +2,353 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ERC20, ERC20Interface } from '../ERC20' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { ERC20, ERC20Interface } from "../ERC20"; const _abi = [ - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'mint', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'addedValue', - type: 'uint256', - }, - ], - name: 'increaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'subtractedValue', - type: 'uint256', - }, - ], - name: 'decreaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'string', - name: 'name', - type: 'string', - }, - { - internalType: 'string', - name: 'symbol', - type: 'string', - }, - { - internalType: 'uint8', - name: 'decimals', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'initialSupply', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, -] as const + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "addedValue", + type: "uint256", + }, + ], + name: "increaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "subtractedValue", + type: "uint256", + }, + ], + name: "decreaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "uint8", + name: "decimals", + type: "uint8", + }, + { + internalType: "uint256", + name: "initialSupply", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, +] as const; export class ERC20__factory { - static readonly abi = _abi - static createInterface(): ERC20Interface { - return new utils.Interface(_abi) as ERC20Interface - } - static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { - return new Contract(address, _abi, signerOrProvider) as ERC20 - } + static readonly abi = _abi; + static createInterface(): ERC20Interface { + return new utils.Interface(_abi) as ERC20Interface; + } + static connect(address: string, signerOrProvider: Signer | Provider): ERC20 { + return new Contract(address, _abi, signerOrProvider) as ERC20; + } } diff --git a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts index 93e6c95786..9ec13deee9 100644 --- a/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ExchangeRates__factory.ts @@ -2,1102 +2,1106 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ExchangeRates, ExchangeRatesInterface } from '../ExchangeRates' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { ExchangeRates, ExchangeRatesInterface } from "../ExchangeRates"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'AggregatorAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'AggregatorRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'aggregatorAddress', - type: 'address', - }, - ], - name: 'addAggregator', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'aggregatorKeys', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'aggregatorWarningFlags', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'aggregators', - outputs: [ - { - internalType: 'contract AggregatorV2V3Interface', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'anyRateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: 'roundIds', - type: 'uint256[]', - }, - ], - name: 'anyRateIsInvalidAtRound', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'aggregator', - type: 'address', - }, - ], - name: 'currenciesUsingAggregator', - outputs: [ - { - internalType: 'bytes32[]', - name: 'currencies', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'currencyKeyDecimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'effectiveAtomicValueAndRates', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemSourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'systemDestinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'effectiveValue', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'effectiveValueAndRates', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'sourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'destinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'roundIdForSrc', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'roundIdForDest', - type: 'uint256', - }, - ], - name: 'effectiveValueAndRatesAtRound', - outputs: [ - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'sourceRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'destinationRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'getCurrentRoundId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'startingRoundId', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'startingTimestamp', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'timediff', - type: 'uint256', - }, - ], - name: 'getLastRoundIdBeforeElapsedSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'lastRateUpdateTimes', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'lastRateUpdateTimesForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateAndInvalid', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'isInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'roundId', - type: 'uint256', - }, - ], - name: 'rateAndTimestampAtRound', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateAndUpdatedTime', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateForCurrency', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsFlagged', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateIsStale', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rateStalePeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'rateWithSafetyChecks', - outputs: [ - { - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'broken', - type: 'bool', - }, - { - internalType: 'bool', - name: 'staleOrInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'ratesAndInvalidForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: 'rates', - type: 'uint256[]', - }, - { - internalType: 'bool', - name: 'anyRateInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'numRounds', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'roundId', - type: 'uint256', - }, - ], - name: 'ratesAndUpdatedTimeForCurrencyLastNRounds', - outputs: [ - { - internalType: 'uint256[]', - name: 'rates', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: 'times', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'ratesForCurrencies', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'removeAggregator', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthTooVolatileForAtomicExchange', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'dexPriceAggregator', - type: 'address', - }, - { - internalType: 'address', - name: 'atomicEquivalentForDexPricing', - type: 'address', - }, - { - internalType: 'uint256', - name: 'atomicExchangeFeeRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicTwapWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicMaxVolumePerBlock', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicVolatilityConsiderationWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'atomicVolatilityUpdateThreshold', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeMaxDynamicFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeRounds', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeThreshold', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeDynamicFeeWeightDecay', - type: 'uint256', - }, - ], - internalType: 'struct IDirectIntegrationManager.ParameterIntegrationSettings', - name: '', - type: 'tuple', - }, - ], - name: 'synthTooVolatileForAtomicExchange', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "AggregatorAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "AggregatorRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "aggregatorAddress", + type: "address", + }, + ], + name: "addAggregator", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "aggregatorKeys", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "aggregatorWarningFlags", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "aggregators", + outputs: [ + { + internalType: "contract AggregatorV2V3Interface", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "anyRateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "roundIds", + type: "uint256[]", + }, + ], + name: "anyRateIsInvalidAtRound", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "aggregator", + type: "address", + }, + ], + name: "currenciesUsingAggregator", + outputs: [ + { + internalType: "bytes32[]", + name: "currencies", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "currencyKeyDecimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "effectiveAtomicValueAndRates", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemSourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "systemDestinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "effectiveValue", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "effectiveValueAndRates", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "sourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "destinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "roundIdForSrc", + type: "uint256", + }, + { + internalType: "uint256", + name: "roundIdForDest", + type: "uint256", + }, + ], + name: "effectiveValueAndRatesAtRound", + outputs: [ + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + internalType: "uint256", + name: "sourceRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "destinationRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "getCurrentRoundId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "startingRoundId", + type: "uint256", + }, + { + internalType: "uint256", + name: "startingTimestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "timediff", + type: "uint256", + }, + ], + name: "getLastRoundIdBeforeElapsedSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "lastRateUpdateTimes", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "lastRateUpdateTimesForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateAndInvalid", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "bool", + name: "isInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "roundId", + type: "uint256", + }, + ], + name: "rateAndTimestampAtRound", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateAndUpdatedTime", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateForCurrency", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsFlagged", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateIsStale", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rateStalePeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "rateWithSafetyChecks", + outputs: [ + { + internalType: "uint256", + name: "rate", + type: "uint256", + }, + { + internalType: "bool", + name: "broken", + type: "bool", + }, + { + internalType: "bool", + name: "staleOrInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "ratesAndInvalidForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "rates", + type: "uint256[]", + }, + { + internalType: "bool", + name: "anyRateInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "numRounds", + type: "uint256", + }, + { + internalType: "uint256", + name: "roundId", + type: "uint256", + }, + ], + name: "ratesAndUpdatedTimeForCurrencyLastNRounds", + outputs: [ + { + internalType: "uint256[]", + name: "rates", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "times", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "ratesForCurrencies", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "removeAggregator", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthTooVolatileForAtomicExchange", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + components: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "dexPriceAggregator", + type: "address", + }, + { + internalType: "address", + name: "atomicEquivalentForDexPricing", + type: "address", + }, + { + internalType: "uint256", + name: "atomicExchangeFeeRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicTwapWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicMaxVolumePerBlock", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicVolatilityConsiderationWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "atomicVolatilityUpdateThreshold", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeMaxDynamicFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeRounds", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeThreshold", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeDynamicFeeWeightDecay", + type: "uint256", + }, + ], + internalType: + "struct IDirectIntegrationManager.ParameterIntegrationSettings", + name: "", + type: "tuple", + }, + ], + name: "synthTooVolatileForAtomicExchange", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class ExchangeRates__factory { - static readonly abi = _abi - static createInterface(): ExchangeRatesInterface { - return new utils.Interface(_abi) as ExchangeRatesInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): ExchangeRates { - return new Contract(address, _abi, signerOrProvider) as ExchangeRates - } + static readonly abi = _abi; + static createInterface(): ExchangeRatesInterface { + return new utils.Interface(_abi) as ExchangeRatesInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ExchangeRates { + return new Contract(address, _abi, signerOrProvider) as ExchangeRates; + } } diff --git a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts index 19dd37f6b6..17edb53e7b 100644 --- a/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Exchanger__factory.ts @@ -2,788 +2,791 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Exchanger, ExchangerInterface } from '../Exchanger' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Exchanger, ExchangerInterface } from "../Exchanger"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'src', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'dest', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'roundIdForSrc', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'roundIdForDest', - type: 'uint256', - }, - ], - name: 'ExchangeEntryAppended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'src', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'dest', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reclaim', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'rebate', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'srcRoundIdAtPeriodEnd', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'destRoundIdAtPeriodEnd', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'exchangeTimestamp', - type: 'uint256', - }, - ], - name: 'ExchangeEntrySettled', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - ], - name: 'calculateAmountAfterSettlement', - outputs: [ - { - internalType: 'uint256', - name: 'amountAfterSettlement', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'dynamicFeeRateForExchange', - outputs: [ - { - internalType: 'uint256', - name: 'feeRate', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'tooVolatile', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'destinationAddress', - type: 'address', - }, - { - internalType: 'bool', - name: 'virtualSynth', - type: 'bool', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'contract IVirtualSynth', - name: 'vSynth', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'exchangeAtomically', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'feeRateForExchange', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'getAmountsForExchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'exchangeFeeRate', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'hasWaitingPeriodOrSettlementOwing', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'isSynthRateInvalid', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'lastExchangeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'maxSecsLeftInWaitingPeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'priceDeviationThresholdFactor', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settle', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntriesSettled', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settlementOwing', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'rebateAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntries', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tradingRewardsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'waitingPeriodSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "src", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "dest", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "roundIdForSrc", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "roundIdForDest", + type: "uint256", + }, + ], + name: "ExchangeEntryAppended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "src", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "dest", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reclaim", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "rebate", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "srcRoundIdAtPeriodEnd", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "destRoundIdAtPeriodEnd", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "exchangeTimestamp", + type: "uint256", + }, + ], + name: "ExchangeEntrySettled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + ], + name: "calculateAmountAfterSettlement", + outputs: [ + { + internalType: "uint256", + name: "amountAfterSettlement", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "dynamicFeeRateForExchange", + outputs: [ + { + internalType: "uint256", + name: "feeRate", + type: "uint256", + }, + { + internalType: "bool", + name: "tooVolatile", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "destinationAddress", + type: "address", + }, + { + internalType: "bool", + name: "virtualSynth", + type: "bool", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "contract IVirtualSynth", + name: "vSynth", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "exchangeAtomically", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "feeRateForExchange", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "getAmountsForExchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "uint256", + name: "exchangeFeeRate", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "hasWaitingPeriodOrSettlementOwing", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "isSynthRateInvalid", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "lastExchangeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "maxSecsLeftInWaitingPeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "priceDeviationThresholdFactor", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settle", + outputs: [ + { + internalType: "uint256", + name: "reclaimed", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntriesSettled", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settlementOwing", + outputs: [ + { + internalType: "uint256", + name: "reclaimAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "rebateAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntries", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tradingRewardsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "waitingPeriodSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Exchanger__factory { - static readonly abi = _abi - static createInterface(): ExchangerInterface { - return new utils.Interface(_abi) as ExchangerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Exchanger { - return new Contract(address, _abi, signerOrProvider) as Exchanger - } + static readonly abi = _abi; + static createInterface(): ExchangerInterface { + return new utils.Interface(_abi) as ExchangerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Exchanger { + return new Contract(address, _abi, signerOrProvider) as Exchanger; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts index aac115b7cf..beb3ecd82c 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketData__factory.ts @@ -2,930 +2,936 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { FuturesMarketData, FuturesMarketDataInterface } from '../FuturesMarketData' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + FuturesMarketData, + FuturesMarketDataInterface, +} from "../FuturesMarketData"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IAddressResolver', - name: '_resolverProxy', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'allMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'globals', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'minInitialMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationFeeRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minKeeperFee', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FuturesGlobals', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IFuturesMarket', - name: 'market', - type: 'address', - }, - ], - name: 'marketDetails', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct FuturesMarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'marketDetailsForKey', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct FuturesMarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address[]', - name: 'markets', - type: 'address[]', - }, - ], - name: 'marketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'marketSummariesForKeys', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - ], - internalType: 'struct FuturesMarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct FuturesMarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - internalType: 'struct IFuturesMarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IFuturesMarket', - name: 'market', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetails', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IFuturesMarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetailsForMarketKey', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IFuturesMarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct FuturesMarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "contract IAddressResolver", + name: "_resolverProxy", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "allMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "globals", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "minInitialMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "minKeeperFee", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FuturesGlobals", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IFuturesMarket", + name: "market", + type: "address", + }, + ], + name: "marketDetails", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct FuturesMarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "marketDetailsForKey", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct FuturesMarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address[]", + name: "markets", + type: "address[]", + }, + ], + name: "marketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "marketSummariesForKeys", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + ], + internalType: "struct FuturesMarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct FuturesMarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + internalType: "struct IFuturesMarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IFuturesMarket", + name: "market", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetails", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IFuturesMarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetailsForMarketKey", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IFuturesMarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct FuturesMarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class FuturesMarketData__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketDataInterface { - return new utils.Interface(_abi) as FuturesMarketDataInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketData { - return new Contract(address, _abi, signerOrProvider) as FuturesMarketData - } + static readonly abi = _abi; + static createInterface(): FuturesMarketDataInterface { + return new utils.Interface(_abi) as FuturesMarketDataInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarketData { + return new Contract(address, _abi, signerOrProvider) as FuturesMarketData; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts index 6162446e4f..54e5e0677e 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarketSettings__factory.ts @@ -2,885 +2,892 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - FuturesMarketSettings, - FuturesMarketSettingsInterface, -} from '../FuturesMarketSettings' + FuturesMarketSettings, + FuturesMarketSettingsInterface, +} from "../FuturesMarketSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationBufferRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationFeeRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minMargin', - type: 'uint256', - }, - ], - name: 'MinInitialMarginUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MinKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'ParameterUpdated', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationBufferRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationFeeRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeNextPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxFundingRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLeverage', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxMarketValueUSD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minInitialMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'nextPriceConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScaleUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationBufferRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationFeeRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - ], - name: 'setMakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeNextPrice', - type: 'uint256', - }, - ], - name: 'setMakerFeeNextPrice', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxFundingRate', - type: 'uint256', - }, - ], - name: 'setMaxFundingRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - ], - name: 'setMaxLeverage', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxMarketValueUSD', - type: 'uint256', - }, - ], - name: 'setMaxMarketValueUSD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_minMargin', - type: 'uint256', - }, - ], - name: 'setMinInitialMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMinKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - ], - name: 'setNextPriceConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_takerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_makerFeeNextPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxMarketValueUSD', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_maxFundingRate', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_skewScaleUSD', - type: 'uint256', - }, - ], - name: 'setParameters', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_skewScaleUSD', - type: 'uint256', - }, - ], - name: 'setSkewScaleUSD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - ], - name: 'setTakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeNextPrice', - type: 'uint256', - }, - ], - name: 'setTakerFeeNextPrice', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'skewScaleUSD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeNextPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - 'payab`le': false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationBufferRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationFeeRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "MinInitialMarginUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MinKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "ParameterUpdated", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationBufferRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationFeeRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeNextPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxFundingRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLeverage", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxMarketValueUSD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minInitialMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "nextPriceConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScaleUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationBufferRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationFeeRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + ], + name: "setMakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeNextPrice", + type: "uint256", + }, + ], + name: "setMakerFeeNextPrice", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxFundingRate", + type: "uint256", + }, + ], + name: "setMaxFundingRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + ], + name: "setMaxLeverage", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxMarketValueUSD", + type: "uint256", + }, + ], + name: "setMaxMarketValueUSD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_minMargin", + type: "uint256", + }, + ], + name: "setMinInitialMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMinKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + ], + name: "setNextPriceConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "_takerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "_makerFeeNextPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxMarketValueUSD", + type: "uint256", + }, + { + internalType: "uint256", + name: "_maxFundingRate", + type: "uint256", + }, + { + internalType: "uint256", + name: "_skewScaleUSD", + type: "uint256", + }, + ], + name: "setParameters", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_skewScaleUSD", + type: "uint256", + }, + ], + name: "setSkewScaleUSD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + ], + name: "setTakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeNextPrice", + type: "uint256", + }, + ], + name: "setTakerFeeNextPrice", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "skewScaleUSD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeNextPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + "payab`le": false, + stateMutability: "view", + type: "function", + }, +] as const; export class FuturesMarketSettings__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketSettingsInterface { - return new utils.Interface(_abi) as FuturesMarketSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarketSettings { - return new Contract(address, _abi, signerOrProvider) as FuturesMarketSettings - } + static readonly abi = _abi; + static createInterface(): FuturesMarketSettingsInterface { + return new utils.Interface(_abi) as FuturesMarketSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarketSettings { + return new Contract( + address, + _abi, + signerOrProvider + ) as FuturesMarketSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts index f3a1a4455f..d7b990df4a 100644 --- a/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts +++ b/packages/sdk/src/contracts/types/factories/FuturesMarket__factory.ts @@ -2,1126 +2,1129 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { FuturesMarket, FuturesMarketInterface } from '../FuturesMarket' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { FuturesMarket, FuturesMarketInterface } from "../FuturesMarket"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - { - internalType: 'bytes32', - name: '_baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'FundingRecomputed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'FuturesTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'MarginTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'currentRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'NextPriceOrderRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'NextPriceOrderSubmitted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PositionLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'tradeSize', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastPrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fundingIndex', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PositionModified', - type: 'event', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'closePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'closePositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'executeNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: '', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'modifyPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'modifyPositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'nextPriceOrders', - outputs: [ - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IFuturesMarketBaseTypes.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'recomputeFunding', - outputs: [ - { - internalType: 'uint256', - name: 'lastIndex', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'submitNextPriceOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitNextPriceOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'transferMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'withdrawAllMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_resolver", + type: "address", + }, + { + internalType: "bytes32", + name: "_baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int256", + name: "funding", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "FundingRecomputed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "FuturesTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "MarginTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "currentRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "NextPriceOrderRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "NextPriceOrderSubmitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "liquidator", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PositionLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "tradeSize", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fundingIndex", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PositionModified", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "closePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "closePositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "executeNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "modifyPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "modifyPositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "nextPriceOrders", + outputs: [ + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IFuturesMarketBaseTypes.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "recomputeFunding", + outputs: [ + { + internalType: "uint256", + name: "lastIndex", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "submitNextPriceOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitNextPriceOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "transferMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "withdrawAllMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class FuturesMarket__factory { - static readonly abi = _abi - static createInterface(): FuturesMarketInterface { - return new utils.Interface(_abi) as FuturesMarketInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): FuturesMarket { - return new Contract(address, _abi, signerOrProvider) as FuturesMarket - } + static readonly abi = _abi; + static createInterface(): FuturesMarketInterface { + return new utils.Interface(_abi) as FuturesMarketInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FuturesMarket { + return new Contract(address, _abi, signerOrProvider) as FuturesMarket; + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts index 8d78fd7ada..f81ab47f06 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaArrakisVault__factory.ts @@ -2,1144 +2,1150 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { KwentaArrakisVault, KwentaArrakisVaultInterface } from '../KwentaArrakisVault' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + KwentaArrakisVault, + KwentaArrakisVaultInterface, +} from "../KwentaArrakisVault"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_gelato', - type: 'address', - }, - { - internalType: 'address', - name: '_arrakisTreasury', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'receiver', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'burnAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount0Out', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount1Out', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityBurned', - type: 'uint128', - }, - ], - name: 'Burned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'feesEarned0', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'feesEarned1', - type: 'uint256', - }, - ], - name: 'FeesEarned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'receiver', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount0In', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount1In', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityMinted', - type: 'uint128', - }, - ], - name: 'Minted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'previousManager', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newManager', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int24', - name: 'lowerTick_', - type: 'int24', - }, - { - indexed: false, - internalType: 'int24', - name: 'upperTick_', - type: 'int24', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityBefore', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint128', - name: 'liquidityAfter', - type: 'uint128', - }, - ], - name: 'Rebalance', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint16', - name: 'managerFeeBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'address', - name: 'managerTreasury', - type: 'address', - }, - { - indexed: false, - internalType: 'uint16', - name: 'gelatoRebalanceBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint16', - name: 'gelatoSlippageBPS', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint32', - name: 'gelatoSlippageInterval', - type: 'uint32', - }, - ], - name: 'UpdateManagerParams', - type: 'event', - }, - { - inputs: [], - name: 'GELATO', - outputs: [ - { - internalType: 'address payable', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'RESTRICTED_MINT_ENABLED', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'arrakisBalance0', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisBalance1', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisFeeBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'arrakisTreasury', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'burnAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'receiver', - type: 'address', - }, - ], - name: 'burn', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint128', - name: 'liquidityBurned', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'subtractedValue', - type: 'uint256', - }, - ], - name: 'decreaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int24', - name: 'newLowerTick', - type: 'int24', - }, - { - internalType: 'int24', - name: 'newUpperTick', - type: 'int24', - }, - { - internalType: 'uint160', - name: 'swapThresholdPrice', - type: 'uint160', - }, - { - internalType: 'uint256', - name: 'swapAmountBPS', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'zeroForOne', - type: 'bool', - }, - ], - name: 'executiveRebalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'gelatoRebalanceBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'gelatoSlippageBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'gelatoSlippageInterval', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount0Max', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Max', - type: 'uint256', - }, - ], - name: 'getMintAmounts', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getPositionID', - outputs: [ - { - internalType: 'bytes32', - name: 'positionID', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getUnderlyingBalances', - outputs: [ - { - internalType: 'uint256', - name: 'amount0Current', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Current', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint160', - name: 'sqrtRatioX96', - type: 'uint160', - }, - ], - name: 'getUnderlyingBalancesAtPrice', - outputs: [ - { - internalType: 'uint256', - name: 'amount0Current', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Current', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'addedValue', - type: 'uint256', - }, - ], - name: 'increaseAllowance', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'string', - name: '_name', - type: 'string', - }, - { - internalType: 'string', - name: '_symbol', - type: 'string', - }, - { - internalType: 'address', - name: '_pool', - type: 'address', - }, - { - internalType: 'uint16', - name: '_managerFeeBPS', - type: 'uint16', - }, - { - internalType: 'int24', - name: '_lowerTick', - type: 'int24', - }, - { - internalType: 'int24', - name: '_upperTick', - type: 'int24', - }, - { - internalType: 'address', - name: '_manager_', - type: 'address', - }, - ], - name: 'initialize', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'lowerTick', - outputs: [ - { - internalType: 'int24', - name: '', - type: 'int24', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'manager', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerBalance0', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerBalance1', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerFeeBPS', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'managerTreasury', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'mintAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'receiver', - type: 'address', - }, - ], - name: 'mint', - outputs: [ - { - internalType: 'uint256', - name: 'amount0', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1', - type: 'uint256', - }, - { - internalType: 'uint128', - name: 'liquidityMinted', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'pool', - outputs: [ - { - internalType: 'contract IUniswapV3Pool', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint160', - name: 'swapThresholdPrice', - type: 'uint160', - }, - { - internalType: 'uint256', - name: 'swapAmountBPS', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'zeroForOne', - type: 'bool', - }, - { - internalType: 'uint256', - name: 'feeAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'paymentToken', - type: 'address', - }, - ], - name: 'rebalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'renounceOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'restrictedMintToggle', - outputs: [ - { - internalType: 'uint16', - name: '', - type: 'uint16', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'toggleRestrictMint', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token0', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token1', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - { - internalType: 'address', - name: 'recipient', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount0Owed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'amount1Owed', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '', - type: 'bytes', - }, - ], - name: 'uniswapV3MintCallback', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int256', - name: 'amount0Delta', - type: 'int256', - }, - { - internalType: 'int256', - name: 'amount1Delta', - type: 'int256', - }, - { - internalType: 'bytes', - name: '', - type: 'bytes', - }, - ], - name: 'uniswapV3SwapCallback', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'int16', - name: 'newManagerFeeBPS', - type: 'int16', - }, - { - internalType: 'address', - name: 'newManagerTreasury', - type: 'address', - }, - { - internalType: 'int16', - name: 'newRebalanceBPS', - type: 'int16', - }, - { - internalType: 'int16', - name: 'newSlippageBPS', - type: 'int16', - }, - { - internalType: 'int32', - name: 'newSlippageInterval', - type: 'int32', - }, - ], - name: 'updateManagerParams', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'upperTick', - outputs: [ - { - internalType: 'int24', - name: '', - type: 'int24', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'version', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'withdrawArrakisBalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'withdrawManagerBalance', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address payable", + name: "_gelato", + type: "address", + }, + { + internalType: "address", + name: "_arrakisTreasury", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "receiver", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "burnAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount0Out", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount1Out", + type: "uint256", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityBurned", + type: "uint128", + }, + ], + name: "Burned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "feesEarned0", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "feesEarned1", + type: "uint256", + }, + ], + name: "FeesEarned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "receiver", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount0In", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amount1In", + type: "uint256", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityMinted", + type: "uint128", + }, + ], + name: "Minted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousManager", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newManager", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int24", + name: "lowerTick_", + type: "int24", + }, + { + indexed: false, + internalType: "int24", + name: "upperTick_", + type: "int24", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityBefore", + type: "uint128", + }, + { + indexed: false, + internalType: "uint128", + name: "liquidityAfter", + type: "uint128", + }, + ], + name: "Rebalance", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint16", + name: "managerFeeBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "address", + name: "managerTreasury", + type: "address", + }, + { + indexed: false, + internalType: "uint16", + name: "gelatoRebalanceBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "uint16", + name: "gelatoSlippageBPS", + type: "uint16", + }, + { + indexed: false, + internalType: "uint32", + name: "gelatoSlippageInterval", + type: "uint32", + }, + ], + name: "UpdateManagerParams", + type: "event", + }, + { + inputs: [], + name: "GELATO", + outputs: [ + { + internalType: "address payable", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "RESTRICTED_MINT_ENABLED", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "arrakisBalance0", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisBalance1", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisFeeBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "arrakisTreasury", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "burnAmount", + type: "uint256", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + ], + name: "burn", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint128", + name: "liquidityBurned", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "subtractedValue", + type: "uint256", + }, + ], + name: "decreaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int24", + name: "newLowerTick", + type: "int24", + }, + { + internalType: "int24", + name: "newUpperTick", + type: "int24", + }, + { + internalType: "uint160", + name: "swapThresholdPrice", + type: "uint160", + }, + { + internalType: "uint256", + name: "swapAmountBPS", + type: "uint256", + }, + { + internalType: "bool", + name: "zeroForOne", + type: "bool", + }, + ], + name: "executiveRebalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "gelatoRebalanceBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "gelatoSlippageBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "gelatoSlippageInterval", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount0Max", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Max", + type: "uint256", + }, + ], + name: "getMintAmounts", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getPositionID", + outputs: [ + { + internalType: "bytes32", + name: "positionID", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getUnderlyingBalances", + outputs: [ + { + internalType: "uint256", + name: "amount0Current", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Current", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint160", + name: "sqrtRatioX96", + type: "uint160", + }, + ], + name: "getUnderlyingBalancesAtPrice", + outputs: [ + { + internalType: "uint256", + name: "amount0Current", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Current", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "addedValue", + type: "uint256", + }, + ], + name: "increaseAllowance", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "_name", + type: "string", + }, + { + internalType: "string", + name: "_symbol", + type: "string", + }, + { + internalType: "address", + name: "_pool", + type: "address", + }, + { + internalType: "uint16", + name: "_managerFeeBPS", + type: "uint16", + }, + { + internalType: "int24", + name: "_lowerTick", + type: "int24", + }, + { + internalType: "int24", + name: "_upperTick", + type: "int24", + }, + { + internalType: "address", + name: "_manager_", + type: "address", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "lowerTick", + outputs: [ + { + internalType: "int24", + name: "", + type: "int24", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "manager", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerBalance0", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerBalance1", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerFeeBPS", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "managerTreasury", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "mintAmount", + type: "uint256", + }, + { + internalType: "address", + name: "receiver", + type: "address", + }, + ], + name: "mint", + outputs: [ + { + internalType: "uint256", + name: "amount0", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1", + type: "uint256", + }, + { + internalType: "uint128", + name: "liquidityMinted", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "pool", + outputs: [ + { + internalType: "contract IUniswapV3Pool", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint160", + name: "swapThresholdPrice", + type: "uint160", + }, + { + internalType: "uint256", + name: "swapAmountBPS", + type: "uint256", + }, + { + internalType: "bool", + name: "zeroForOne", + type: "bool", + }, + { + internalType: "uint256", + name: "feeAmount", + type: "uint256", + }, + { + internalType: "address", + name: "paymentToken", + type: "address", + }, + ], + name: "rebalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "restrictedMintToggle", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "toggleRestrictMint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token0", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token1", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "address", + name: "recipient", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount0Owed", + type: "uint256", + }, + { + internalType: "uint256", + name: "amount1Owed", + type: "uint256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "uniswapV3MintCallback", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int256", + name: "amount0Delta", + type: "int256", + }, + { + internalType: "int256", + name: "amount1Delta", + type: "int256", + }, + { + internalType: "bytes", + name: "", + type: "bytes", + }, + ], + name: "uniswapV3SwapCallback", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "int16", + name: "newManagerFeeBPS", + type: "int16", + }, + { + internalType: "address", + name: "newManagerTreasury", + type: "address", + }, + { + internalType: "int16", + name: "newRebalanceBPS", + type: "int16", + }, + { + internalType: "int16", + name: "newSlippageBPS", + type: "int16", + }, + { + internalType: "int32", + name: "newSlippageInterval", + type: "int32", + }, + ], + name: "updateManagerParams", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "upperTick", + outputs: [ + { + internalType: "int24", + name: "", + type: "int24", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "version", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "withdrawArrakisBalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "withdrawManagerBalance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class KwentaArrakisVault__factory { - static readonly abi = _abi - static createInterface(): KwentaArrakisVaultInterface { - return new utils.Interface(_abi) as KwentaArrakisVaultInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): KwentaArrakisVault { - return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault - } + static readonly abi = _abi; + static createInterface(): KwentaArrakisVaultInterface { + return new utils.Interface(_abi) as KwentaArrakisVaultInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): KwentaArrakisVault { + return new Contract(address, _abi, signerOrProvider) as KwentaArrakisVault; + } } diff --git a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts index 1d48fe29bc..e58d01b4fd 100644 --- a/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/KwentaStakingRewards__factory.ts @@ -2,714 +2,724 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { KwentaStakingRewards, KwentaStakingRewardsInterface } from '../KwentaStakingRewards' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + KwentaStakingRewards, + KwentaStakingRewardsInterface, +} from "../KwentaStakingRewards"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - { - internalType: 'address', - name: '_supplySchedule', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'EscrowStaked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'EscrowUnstaked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'Paused', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'token', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Recovered', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardPaid', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'RewardsDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Staked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'Unpaused', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Unstaked', - type: 'event', - }, - { - inputs: [], - name: '_totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'earned', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'escrowedBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'exit', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'getReward', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'getRewardForDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastTimeRewardApplicable', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastUpdateTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'nonEscrowedBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'notifyRewardAmount', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'pauseStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'paused', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'periodFinish', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'tokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'tokenAmount', - type: 'uint256', - }, - ], - name: 'recoverERC20', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'contract IRewardEscrow', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardPerToken', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardPerTokenStored', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'rewards', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardsDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_rewardsDuration', - type: 'uint256', - }, - ], - name: 'setRewardsDuration', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stake', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'supplySchedule', - outputs: [ - { - internalType: 'contract ISupplySchedule', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'unpauseStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'unstake', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'unstakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'userRewardPerTokenPaid', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + { + internalType: "address", + name: "_supplySchedule", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "EscrowStaked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "EscrowUnstaked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Paused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Recovered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardPaid", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "RewardsDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Staked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "Unpaused", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Unstaked", + type: "event", + }, + { + inputs: [], + name: "_totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "earned", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "escrowedBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "exit", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getReward", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getRewardForDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastTimeRewardApplicable", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastUpdateTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "nonEscrowedBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "notifyRewardAmount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "pauseStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "periodFinish", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "tokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "tokenAmount", + type: "uint256", + }, + ], + name: "recoverERC20", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "contract IRewardEscrow", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardPerToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardPerTokenStored", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rewards", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardsDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_rewardsDuration", + type: "uint256", + }, + ], + name: "setRewardsDuration", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stake", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "supplySchedule", + outputs: [ + { + internalType: "contract ISupplySchedule", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unpauseStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "unstake", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "unstakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "userRewardPerTokenPaid", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class KwentaStakingRewards__factory { - static readonly abi = _abi - static createInterface(): KwentaStakingRewardsInterface { - return new utils.Interface(_abi) as KwentaStakingRewardsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): KwentaStakingRewards { - return new Contract(address, _abi, signerOrProvider) as KwentaStakingRewards - } + static readonly abi = _abi; + static createInterface(): KwentaStakingRewardsInterface { + return new utils.Interface(_abi) as KwentaStakingRewardsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): KwentaStakingRewards { + return new Contract( + address, + _abi, + signerOrProvider + ) as KwentaStakingRewards; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts index 6e9892ab52..e3baaedac2 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorOp__factory.ts @@ -2,310 +2,314 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributorOp, - MultipleMerkleDistributorOpInterface, -} from '../MultipleMerkleDistributorOp' + MultipleMerkleDistributorOp, + MultipleMerkleDistributorOpInterface, +} from "../MultipleMerkleDistributorOp"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootModified', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'merkleRoot', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'setMerkleRootForEpoch', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootModified", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "merkleRoot", + type: "bytes32", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "setMerkleRootForEpoch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributorOp__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorOpInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorOp { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorOp - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorOpInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorOpInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorOp { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributorOp; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts index 3f7539df3e..e65da0d3a8 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributorPerpsV2__factory.ts @@ -2,328 +2,334 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributorPerpsV2, - MultipleMerkleDistributorPerpsV2Interface, -} from '../MultipleMerkleDistributorPerpsV2' + MultipleMerkleDistributorPerpsV2, + MultipleMerkleDistributorPerpsV2Interface, +} from "../MultipleMerkleDistributorPerpsV2"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootModified', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'merkleRoot', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'setMerkleRootForEpoch', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootModified", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "merkleRoot", + type: "bytes32", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "setMerkleRootForEpoch", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributorPerpsV2__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorPerpsV2Interface { - return new utils.Interface(_abi) as MultipleMerkleDistributorPerpsV2Interface - } - static connect( - address: string, - signerOrProvider: Signer | Provider - ): MultipleMerkleDistributorPerpsV2 { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributorPerpsV2 - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorPerpsV2Interface { + return new utils.Interface( + _abi + ) as MultipleMerkleDistributorPerpsV2Interface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributorPerpsV2 { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributorPerpsV2; + } } diff --git a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts index b33171c024..e1759c2f52 100644 --- a/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts +++ b/packages/sdk/src/contracts/types/factories/MultipleMerkleDistributor__factory.ts @@ -2,333 +2,340 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - MultipleMerkleDistributor, - MultipleMerkleDistributorInterface, -} from '../MultipleMerkleDistributor' + MultipleMerkleDistributor, + MultipleMerkleDistributorInterface, +} from "../MultipleMerkleDistributor"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'Claimed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'MerkleRootAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'claim', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - { - internalType: 'bytes32[]', - name: 'merkleProof', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - internalType: 'struct IMultipleMerkleDistributor.Claims[]', - name: 'claims', - type: 'tuple[]', - }, - ], - name: 'claimMultiple', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'distributionEpoch', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'epoch', - type: 'uint256', - }, - ], - name: 'isClaimed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'merkleRoots', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_merkleRoot', - type: 'bytes32', - }, - ], - name: 'newMerkleRoot', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "Claimed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "MerkleRootAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "claim", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + { + internalType: "bytes32[]", + name: "merkleProof", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + internalType: "struct IMultipleMerkleDistributor.Claims[]", + name: "claims", + type: "tuple[]", + }, + ], + name: "claimMultiple", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "distributionEpoch", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "epoch", + type: "uint256", + }, + ], + name: "isClaimed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "merkleRoots", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_merkleRoot", + type: "bytes32", + }, + ], + name: "newMerkleRoot", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class MultipleMerkleDistributor__factory { - static readonly abi = _abi - static createInterface(): MultipleMerkleDistributorInterface { - return new utils.Interface(_abi) as MultipleMerkleDistributorInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): MultipleMerkleDistributor { - return new Contract(address, _abi, signerOrProvider) as MultipleMerkleDistributor - } + static readonly abi = _abi; + static createInterface(): MultipleMerkleDistributorInterface { + return new utils.Interface(_abi) as MultipleMerkleDistributorInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): MultipleMerkleDistributor { + return new Contract( + address, + _abi, + signerOrProvider + ) as MultipleMerkleDistributor; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts index 7e2b41eb18..762a6d7fa0 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketData__factory.ts @@ -2,1164 +2,1170 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2MarketData, PerpsV2MarketDataInterface } from '../PerpsV2MarketData' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV2MarketData, + PerpsV2MarketDataInterface, +} from "../PerpsV2MarketData"; const _abi = [ - { - inputs: [ - { - internalType: 'contract IAddressResolver', - name: '_resolverProxy', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'allMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'allProxiedMarketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'globals', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'minInitialMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationFeeRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minKeeperFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxKeeperFee', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FuturesGlobals', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IPerpsV2MarketViews', - name: 'market', - type: 'address', - }, - ], - name: 'marketDetails', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'marketDetailsForKey', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketLimits', - name: 'limits', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FundingParameters', - name: 'fundingParameters', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.Sides', - name: 'sides', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSizeDetails', - name: 'marketSizeDetails', - type: 'tuple', - }, - { - components: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PriceDetails', - name: 'priceDetails', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address[]', - name: 'markets', - type: 'address[]', - }, - ], - name: 'marketSummaries', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'marketSummariesForKeys', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'market', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'asset', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'marketSize', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'marketSkew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'marketDebt', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - internalType: 'struct PerpsV2MarketData.FeeRates', - name: 'feeRates', - type: 'tuple', - }, - ], - internalType: 'struct PerpsV2MarketData.MarketSummary[]', - name: '', - type: 'tuple[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IPerpsV2MarketViews', - name: 'market', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetails', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positionDetailsForMarketKey', - outputs: [ - { - components: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: 'position', - type: 'tuple', - }, - { - internalType: 'int256', - name: 'notionalValue', - type: 'int256', - }, - { - internalType: 'int256', - name: 'profitLoss', - type: 'int256', - }, - { - internalType: 'int256', - name: 'accruedFunding', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'remainingMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'accessibleMargin', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'canLiquidatePosition', - type: 'bool', - }, - ], - internalType: 'struct PerpsV2MarketData.PositionData', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "contract IAddressResolver", + name: "_resolverProxy", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "allMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "allProxiedMarketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "globals", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "minInitialMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "minKeeperFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxKeeperFee", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FuturesGlobals", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IPerpsV2MarketViews", + name: "market", + type: "address", + }, + ], + name: "marketDetails", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "marketDetailsForKey", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketLimits", + name: "limits", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FundingParameters", + name: "fundingParameters", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + components: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.Sides", + name: "sides", + type: "tuple", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSizeDetails", + name: "marketSizeDetails", + type: "tuple", + }, + { + components: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PriceDetails", + name: "priceDetails", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address[]", + name: "markets", + type: "address[]", + }, + ], + name: "marketSummaries", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "marketSummariesForKeys", + outputs: [ + { + components: [ + { + internalType: "address", + name: "market", + type: "address", + }, + { + internalType: "bytes32", + name: "asset", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "marketSize", + type: "uint256", + }, + { + internalType: "int256", + name: "marketSkew", + type: "int256", + }, + { + internalType: "uint256", + name: "marketDebt", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + internalType: "struct PerpsV2MarketData.FeeRates", + name: "feeRates", + type: "tuple", + }, + ], + internalType: "struct PerpsV2MarketData.MarketSummary[]", + name: "", + type: "tuple[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IPerpsV2MarketViews", + name: "market", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetails", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positionDetailsForMarketKey", + outputs: [ + { + components: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "position", + type: "tuple", + }, + { + internalType: "int256", + name: "notionalValue", + type: "int256", + }, + { + internalType: "int256", + name: "profitLoss", + type: "int256", + }, + { + internalType: "int256", + name: "accruedFunding", + type: "int256", + }, + { + internalType: "uint256", + name: "remainingMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "accessibleMargin", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "canLiquidatePosition", + type: "bool", + }, + ], + internalType: "struct PerpsV2MarketData.PositionData", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketData__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketDataInterface { - return new utils.Interface(_abi) as PerpsV2MarketDataInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketData { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketDataInterface { + return new utils.Interface(_abi) as PerpsV2MarketDataInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketData { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketData; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts index 5974e9b3a7..78f919de23 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketSettings__factory.ts @@ -2,1658 +2,1665 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - PerpsV2MarketSettings, - PerpsV2MarketSettingsInterface, -} from '../PerpsV2MarketSettings' + PerpsV2MarketSettings, + PerpsV2MarketSettingsInterface, +} from "../PerpsV2MarketSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'keeperFee', - type: 'uint256', - }, - ], - name: 'KeeperLiquidationFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationBufferRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'bps', - type: 'uint256', - }, - ], - name: 'LiquidationFeeRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MaxKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minMargin', - type: 'uint256', - }, - ], - name: 'MinInitialMarginUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'sUSD', - type: 'uint256', - }, - ], - name: 'MinKeeperFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'ParameterUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'parameter', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'value', - type: 'bytes32', - }, - ], - name: 'ParameterUpdatedBytes32', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'delayedOrderConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'keeperLiquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'liquidationBufferRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationFeeRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'liquidationPremiumMultiplier', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'makerFeeOffchainDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxDelayTimeDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxFundingVelocity', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'maxKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLeverage', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxLiquidationDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxMarketValue', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'maxPD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'minDelayTimeDelta', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minInitialMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minKeeperFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'nextPriceConfirmWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainDelayedOrderMaxAge', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainDelayedOrderMinAge', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainMarketKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'offchainPriceDivergence', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'parameters', - outputs: [ - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_delayedOrderConfirmWindow', - type: 'uint256', - }, - ], - name: 'setDelayedOrderConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_keeperFee', - type: 'uint256', - }, - ], - name: 'setKeeperLiquidationFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationBufferRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_ratio', - type: 'uint256', - }, - ], - name: 'setLiquidationFeeRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_liquidationPremiumMultiplier', - type: 'uint256', - }, - ], - name: 'setLiquidationPremiumMultiplier', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFee', - type: 'uint256', - }, - ], - name: 'setMakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeDelayedOrder', - type: 'uint256', - }, - ], - name: 'setMakerFeeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - name: 'setMakerFeeOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxDelayTimeDelta', - type: 'uint256', - }, - ], - name: 'setMaxDelayTimeDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxFundingVelocity', - type: 'uint256', - }, - ], - name: 'setMaxFundingVelocity', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMaxKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLeverage', - type: 'uint256', - }, - ], - name: 'setMaxLeverage', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxLiquidationDelta', - type: 'uint256', - }, - ], - name: 'setMaxLiquidationDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxMarketValue', - type: 'uint256', - }, - ], - name: 'setMaxMarketValue', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_maxPD', - type: 'uint256', - }, - ], - name: 'setMaxPD', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_minDelayTimeDelta', - type: 'uint256', - }, - ], - name: 'setMinDelayTimeDelta', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_minMargin', - type: 'uint256', - }, - ], - name: 'setMinInitialMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_sUSD', - type: 'uint256', - }, - ], - name: 'setMinKeeperFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_nextPriceConfirmWindow', - type: 'uint256', - }, - ], - name: 'setNextPriceConfirmWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainDelayedOrderMaxAge', - type: 'uint256', - }, - ], - name: 'setOffchainDelayedOrderMaxAge', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainDelayedOrderMinAge', - type: 'uint256', - }, - ], - name: 'setOffchainDelayedOrderMinAge', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: '_offchainMarketKey', - type: 'bytes32', - }, - ], - name: 'setOffchainMarketKey', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_offchainPriceDivergence', - type: 'uint256', - }, - ], - name: 'setOffchainPriceDivergence', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'makerFeeOffchainDelayedOrder', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLeverage', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'nextPriceConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'delayedOrderConfirmWindow', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'minDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxDelayTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMinAge', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'offchainDelayedOrderMaxAge', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'offchainMarketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'offchainPriceDivergence', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationPremiumMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationBufferRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxPD', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsV2MarketSettings.Parameters', - name: '_parameters', - type: 'tuple', - }, - ], - name: 'setParameters', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_skewScale', - type: 'uint256', - }, - ], - name: 'setSkewScale', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFee', - type: 'uint256', - }, - ], - name: 'setTakerFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeDelayedOrder', - type: 'uint256', - }, - ], - name: 'setTakerFeeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_takerFeeOffchainDelayedOrder', - type: 'uint256', - }, - ], - name: 'setTakerFeeOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'skewScale', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'takerFeeOffchainDelayedOrder', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "keeperFee", + type: "uint256", + }, + ], + name: "KeeperLiquidationFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationBufferRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "bps", + type: "uint256", + }, + ], + name: "LiquidationFeeRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MaxKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "MinInitialMarginUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "sUSD", + type: "uint256", + }, + ], + name: "MinKeeperFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "ParameterUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "parameter", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "value", + type: "bytes32", + }, + ], + name: "ParameterUpdatedBytes32", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "delayedOrderConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "keeperLiquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "liquidationBufferRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationFeeRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "liquidationPremiumMultiplier", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "makerFeeOffchainDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxDelayTimeDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxFundingVelocity", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "maxKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLeverage", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxLiquidationDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxMarketValue", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "maxPD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "minDelayTimeDelta", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minInitialMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minKeeperFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "nextPriceConfirmWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainDelayedOrderMaxAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainDelayedOrderMinAge", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainMarketKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "offchainPriceDivergence", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "parameters", + outputs: [ + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_delayedOrderConfirmWindow", + type: "uint256", + }, + ], + name: "setDelayedOrderConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_keeperFee", + type: "uint256", + }, + ], + name: "setKeeperLiquidationFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationBufferRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_ratio", + type: "uint256", + }, + ], + name: "setLiquidationFeeRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_liquidationPremiumMultiplier", + type: "uint256", + }, + ], + name: "setLiquidationPremiumMultiplier", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFee", + type: "uint256", + }, + ], + name: "setMakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeDelayedOrder", + type: "uint256", + }, + ], + name: "setMakerFeeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_makerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + name: "setMakerFeeOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxDelayTimeDelta", + type: "uint256", + }, + ], + name: "setMaxDelayTimeDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxFundingVelocity", + type: "uint256", + }, + ], + name: "setMaxFundingVelocity", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMaxKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLeverage", + type: "uint256", + }, + ], + name: "setMaxLeverage", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxLiquidationDelta", + type: "uint256", + }, + ], + name: "setMaxLiquidationDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxMarketValue", + type: "uint256", + }, + ], + name: "setMaxMarketValue", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_maxPD", + type: "uint256", + }, + ], + name: "setMaxPD", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_minDelayTimeDelta", + type: "uint256", + }, + ], + name: "setMinDelayTimeDelta", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_minMargin", + type: "uint256", + }, + ], + name: "setMinInitialMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_sUSD", + type: "uint256", + }, + ], + name: "setMinKeeperFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_nextPriceConfirmWindow", + type: "uint256", + }, + ], + name: "setNextPriceConfirmWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainDelayedOrderMaxAge", + type: "uint256", + }, + ], + name: "setOffchainDelayedOrderMaxAge", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainDelayedOrderMinAge", + type: "uint256", + }, + ], + name: "setOffchainDelayedOrderMinAge", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "_offchainMarketKey", + type: "bytes32", + }, + ], + name: "setOffchainMarketKey", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_offchainPriceDivergence", + type: "uint256", + }, + ], + name: "setOffchainPriceDivergence", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + components: [ + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "makerFeeOffchainDelayedOrder", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLeverage", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "nextPriceConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "delayedOrderConfirmWindow", + type: "uint256", + }, + { + internalType: "uint256", + name: "minDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxDelayTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMinAge", + type: "uint256", + }, + { + internalType: "uint256", + name: "offchainDelayedOrderMaxAge", + type: "uint256", + }, + { + internalType: "bytes32", + name: "offchainMarketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "offchainPriceDivergence", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationPremiumMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationBufferRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPD", + type: "uint256", + }, + ], + internalType: "struct IPerpsV2MarketSettings.Parameters", + name: "_parameters", + type: "tuple", + }, + ], + name: "setParameters", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_skewScale", + type: "uint256", + }, + ], + name: "setSkewScale", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFee", + type: "uint256", + }, + ], + name: "setTakerFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeDelayedOrder", + type: "uint256", + }, + ], + name: "setTakerFeeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_takerFeeOffchainDelayedOrder", + type: "uint256", + }, + ], + name: "setTakerFeeOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "skewScale", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "takerFeeOffchainDelayedOrder", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketSettings__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketSettingsInterface { - return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketSettings { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketSettings - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketSettingsInterface { + return new utils.Interface(_abi) as PerpsV2MarketSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketSettings { + return new Contract( + address, + _abi, + signerOrProvider + ) as PerpsV2MarketSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts index 772645baef..e4e9388878 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2MarketViews__factory.ts @@ -2,800 +2,806 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2MarketViews, PerpsV2MarketViewsInterface } from '../PerpsV2MarketViews' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV2MarketViews, + PerpsV2MarketViewsInterface, +} from "../PerpsV2MarketViews"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_marketState', - type: 'address', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingVelocity', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'fillPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: '', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: '', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: '', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketState', - outputs: [ - { - internalType: 'contract IPerpsV2MarketState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketBaseTypes.Position', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'tradePrice', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_marketState", + type: "address", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketState", + outputs: [ + { + internalType: "contract IPerpsV2MarketState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketBaseTypes.Position", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "tradePrice", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class PerpsV2MarketViews__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketViewsInterface { - return new utils.Interface(_abi) as PerpsV2MarketViewsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2MarketViews { - return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketViewsInterface { + return new utils.Interface(_abi) as PerpsV2MarketViewsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2MarketViews { + return new Contract(address, _abi, signerOrProvider) as PerpsV2MarketViews; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts index ab69d8e77f..c1c7d09c76 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV2Market__factory.ts @@ -2,1432 +2,1435 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV2Market, PerpsV2MarketInterface } from '../PerpsV2Market' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { PerpsV2Market, PerpsV2MarketInterface } from "../PerpsV2Market"; const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - indexed: false, - internalType: 'uint256', - name: 'currentRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'DelayedOrderRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'targetRoundId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'commitDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'keeperDeposit', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'DelayedOrderSubmitted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'fundingRate', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'FundingRecomputed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'MarginTransferred', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'baseAsset', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'PerpsTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'flagger', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - ], - name: 'PositionFlagged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'flaggerFee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'liquidatorFee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'stakersFee', - type: 'uint256', - }, - ], - name: 'PositionLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'id', - type: 'uint256', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - indexed: false, - internalType: 'int256', - name: 'tradeSize', - type: 'int256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastPrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fundingIndex', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'skew', - type: 'int256', - }, - ], - name: 'PositionModified', - type: 'event', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accessibleMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginAccessible', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'accruedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'assetPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'baseAsset', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'canLiquidate', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'cancelOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'closePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'closePositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: 'fundingRate', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currentFundingVelocity', - outputs: [ - { - internalType: 'int256', - name: 'fundingVelocity', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'delayedOrders', - outputs: [ - { - components: [ - { - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'desiredFillPrice', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'executeDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes[]', - name: 'priceUpdateData', - type: 'bytes[]', - }, - ], - name: 'executeOffchainDelayedOrder', - outputs: [], - payable: true, - stateMutability: 'payable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - ], - name: 'fillPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'flagPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'forceLiquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingLastRecomputed', - outputs: [ - { - internalType: 'uint32', - name: 'timestamp', - type: 'uint32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingRateLastRecomputed', - outputs: [ - { - internalType: 'int128', - name: 'fundingRate', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'fundingSequence', - outputs: [ - { - internalType: 'int128', - name: 'netFunding', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'fundingSequenceLength', - outputs: [ - { - internalType: 'uint256', - name: 'length', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'isFlagged', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidatePosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidationPrice', - outputs: [ - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketDebt', - outputs: [ - { - internalType: 'uint256', - name: 'debt', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'isInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketKey', - outputs: [ - { - internalType: 'bytes32', - name: 'key', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSize', - outputs: [ - { - internalType: 'uint128', - name: 'size', - type: 'uint128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSizes', - outputs: [ - { - internalType: 'uint256', - name: 'long', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'short', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'marketSkew', - outputs: [ - { - internalType: 'int128', - name: 'skew', - type: 'int128', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'modifyPosition', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'modifyPositionWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'notionalValue', - outputs: [ - { - internalType: 'int256', - name: 'value', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - ], - name: 'orderFee', - outputs: [ - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'positions', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.Position', - name: '', - type: 'tuple', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'tradePrice', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketBaseTypes.OrderType', - name: 'orderType', - type: 'uint8', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'postTradeDetails', - outputs: [ - { - internalType: 'uint256', - name: 'margin', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'size', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liqPrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - { - internalType: 'enum IPerpsV2MarketConsolidated.Status', - name: 'status', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'profitLoss', - outputs: [ - { - internalType: 'int256', - name: 'pnl', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'recomputeFunding', - outputs: [ - { - internalType: 'uint256', - name: 'lastIndex', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingMargin', - outputs: [ - { - internalType: 'uint256', - name: 'marginRemaining', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitCloseDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitCloseOffchainDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'submitDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredTimeDelta', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - ], - name: 'submitOffchainDelayedOrder', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'submitOffchainDelayedOrderWithTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - ], - name: 'transferMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'unrecordedFunding', - outputs: [ - { - internalType: 'int256', - name: 'funding', - type: 'int256', - }, - { - internalType: 'bool', - name: 'invalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'withdrawAllMargin', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + indexed: false, + internalType: "uint256", + name: "currentRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "DelayedOrderRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "targetRoundId", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "commitDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "keeperDeposit", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "DelayedOrderSubmitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "int256", + name: "funding", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "fundingRate", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "FundingRecomputed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "MarginTransferred", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "baseAsset", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "PerpsTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "flagger", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + ], + name: "PositionFlagged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "liquidator", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "flaggerFee", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "liquidatorFee", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "stakersFee", + type: "uint256", + }, + ], + name: "PositionLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "id", + type: "uint256", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "size", + type: "int256", + }, + { + indexed: false, + internalType: "int256", + name: "tradeSize", + type: "int256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fundingIndex", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "skew", + type: "int256", + }, + ], + name: "PositionModified", + type: "event", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accessibleMargin", + outputs: [ + { + internalType: "uint256", + name: "marginAccessible", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "accruedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "assetPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "baseAsset", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "canLiquidate", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "cancelOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "closePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "closePositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "fundingRate", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "fundingVelocity", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "delayedOrders", + outputs: [ + { + components: [ + { + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "desiredFillPrice", + type: "uint128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "executeDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes[]", + name: "priceUpdateData", + type: "bytes[]", + }, + ], + name: "executeOffchainDelayedOrder", + outputs: [], + payable: true, + stateMutability: "payable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "flagPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "forceLiquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingLastRecomputed", + outputs: [ + { + internalType: "uint32", + name: "timestamp", + type: "uint32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingRateLastRecomputed", + outputs: [ + { + internalType: "int128", + name: "fundingRate", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "fundingSequence", + outputs: [ + { + internalType: "int128", + name: "netFunding", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "fundingSequenceLength", + outputs: [ + { + internalType: "uint256", + name: "length", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isFlagged", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidatePosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidationPrice", + outputs: [ + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketDebt", + outputs: [ + { + internalType: "uint256", + name: "debt", + type: "uint256", + }, + { + internalType: "bool", + name: "isInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketKey", + outputs: [ + { + internalType: "bytes32", + name: "key", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSize", + outputs: [ + { + internalType: "uint128", + name: "size", + type: "uint128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSizes", + outputs: [ + { + internalType: "uint256", + name: "long", + type: "uint256", + }, + { + internalType: "uint256", + name: "short", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "marketSkew", + outputs: [ + { + internalType: "int128", + name: "skew", + type: "int128", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "modifyPosition", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "modifyPositionWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "notionalValue", + outputs: [ + { + internalType: "int256", + name: "value", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + ], + name: "orderFee", + outputs: [ + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "positions", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.Position", + name: "", + type: "tuple", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "tradePrice", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketBaseTypes.OrderType", + name: "orderType", + type: "uint8", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "postTradeDetails", + outputs: [ + { + internalType: "uint256", + name: "margin", + type: "uint256", + }, + { + internalType: "int256", + name: "size", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + { + internalType: "uint256", + name: "liqPrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + { + internalType: "enum IPerpsV2MarketConsolidated.Status", + name: "status", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "profitLoss", + outputs: [ + { + internalType: "int256", + name: "pnl", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "recomputeFunding", + outputs: [ + { + internalType: "uint256", + name: "lastIndex", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingMargin", + outputs: [ + { + internalType: "uint256", + name: "marginRemaining", + type: "uint256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitCloseDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitCloseOffchainDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "submitDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredTimeDelta", + type: "uint256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + ], + name: "submitOffchainDelayedOrder", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "submitOffchainDelayedOrderWithTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + ], + name: "transferMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "unrecordedFunding", + outputs: [ + { + internalType: "int256", + name: "funding", + type: "int256", + }, + { + internalType: "bool", + name: "invalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "withdrawAllMargin", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class PerpsV2Market__factory { - static readonly abi = _abi - static createInterface(): PerpsV2MarketInterface { - return new utils.Interface(_abi) as PerpsV2MarketInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV2Market { - return new Contract(address, _abi, signerOrProvider) as PerpsV2Market - } + static readonly abi = _abi; + static createInterface(): PerpsV2MarketInterface { + return new utils.Interface(_abi) as PerpsV2MarketInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV2Market { + return new Contract(address, _abi, signerOrProvider) as PerpsV2Market; + } } diff --git a/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts index 04f471537f..299b44b6f6 100644 --- a/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts +++ b/packages/sdk/src/contracts/types/factories/PerpsV3MarketProxy__factory.ts @@ -2,3382 +2,3375 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { PerpsV3MarketProxy, PerpsV3MarketProxyInterface } from '../PerpsV3MarketProxy' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV3MarketProxy, + PerpsV3MarketProxyInterface, +} from "../PerpsV3MarketProxy"; const _abi = [ - { - inputs: [ - { - internalType: 'bytes32', - name: 'which', - type: 'bytes32', - }, - ], - name: 'FeatureUnavailable', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'InvalidAccountId', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - ], - name: 'InvalidPermission', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'origin', - type: 'address', - }, - ], - name: 'OnlyAccountTokenProxy', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'target', - type: 'address', - }, - ], - name: 'PermissionDenied', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'user', - type: 'address', - }, - ], - name: 'PermissionNotGranted', - type: 'error', - }, - { - inputs: [], - name: 'PositionOutOfBounds', - type: 'error', - }, - { - inputs: [], - name: 'ValueAlreadyInSet', - type: 'error', - }, - { - inputs: [], - name: 'ValueNotInSet', - type: 'error', - }, - { - inputs: [], - name: 'ZeroAddress', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - ], - name: 'AccountCreated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'PermissionGranted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'PermissionRevoked', - type: 'event', - }, - { - inputs: [], - name: 'createAccount', - outputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'requestedAccountId', - type: 'uint128', - }, - ], - name: 'createAccount', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'getAccountLastInteraction', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'getAccountOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'getAccountPermissions', - outputs: [ - { - components: [ - { - internalType: 'address', - name: 'user', - type: 'address', - }, - { - internalType: 'bytes32[]', - name: 'permissions', - type: 'bytes32[]', - }, - ], - internalType: 'struct IAccountModule.AccountPermissions[]', - name: 'accountPerms', - type: 'tuple[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getAccountTokenAddress', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'user', - type: 'address', - }, - ], - name: 'grantPermission', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'user', - type: 'address', - }, - ], - name: 'hasPermission', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'user', - type: 'address', - }, - ], - name: 'isAuthorized', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'notifyAccountTransfer', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - ], - name: 'renouncePermission', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'permission', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'user', - type: 'address', - }, - ], - name: 'revokePermission', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'expected', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'actual', - type: 'bytes32', - }, - ], - name: 'MismatchAssociatedSystemKind', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'MissingAssociatedSystem', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'addr', - type: 'address', - }, - ], - name: 'Unauthorized', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'kind', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'proxy', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'impl', - type: 'address', - }, - ], - name: 'AssociatedSystemSet', - type: 'event', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getAssociatedSystem', - outputs: [ - { - internalType: 'address', - name: 'addr', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'kind', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'string', - name: 'name', - type: 'string', - }, - { - internalType: 'string', - name: 'symbol', - type: 'string', - }, - { - internalType: 'string', - name: 'uri', - type: 'string', - }, - { - internalType: 'address', - name: 'impl', - type: 'address', - }, - ], - name: 'initOrUpgradeNft', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'string', - name: 'name', - type: 'string', - }, - { - internalType: 'string', - name: 'symbol', - type: 'string', - }, - { - internalType: 'uint8', - name: 'decimals', - type: 'uint8', - }, - { - internalType: 'address', - name: 'impl', - type: 'address', - }, - ], - name: 'initOrUpgradeToken', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'endpoint', - type: 'address', - }, - ], - name: 'registerUnmanagedSystem', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'implementation', - type: 'address', - }, - ], - name: 'ImplementationIsSterile', - type: 'error', - }, - { - inputs: [], - name: 'NoChange', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'contr', - type: 'address', - }, - ], - name: 'NotAContract', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'addr', - type: 'address', - }, - ], - name: 'NotNominated', - type: 'error', - }, - { - inputs: [], - name: 'UpgradeSimulationFailed', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'self', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'implementation', - type: 'address', - }, - ], - name: 'Upgraded', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'getImplementation', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newNominatedOwner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'renounceNomination', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newImplementation', - type: 'address', - }, - ], - name: 'simulateUpgradeTo', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newImplementation', - type: 'address', - }, - ], - name: 'upgradeTo', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'InvalidMarketOwner', - type: 'error', - }, - { - inputs: [], - name: 'OverflowInt256ToUint256', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'MarketOwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'address', - name: 'newNominatedOwner', - type: 'address', - }, - ], - name: 'MarketOwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'feedId', - type: 'bytes32', - }, - ], - name: 'MarketPriceDataUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'address', - name: 'marketOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'string', - name: 'marketName', - type: 'string', - }, - { - indexed: false, - internalType: 'string', - name: 'marketSymbol', - type: 'string', - }, - ], - name: 'MarketRegistered', - type: 'event', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'acceptMarketOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'string', - name: 'marketName', - type: 'string', - }, - { - internalType: 'string', - name: 'marketSymbol', - type: 'string', - }, - { - internalType: 'address', - name: 'marketOwner', - type: 'address', - }, - ], - name: 'createMarket', - outputs: [ - { - internalType: 'uint128', - name: '', - type: 'uint128', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'getMarketOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'minimumCredit', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - internalType: 'address', - name: 'newNominatedOwner', - type: 'address', - }, - ], - name: 'nominateMarketOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'reportedDebt', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract ISpotMarketSystem', - name: 'spotMarket', - type: 'address', - }, - ], - name: 'setSpotMarket', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract ISynthetixSystem', - name: 'synthetix', - type: 'address', - }, - ], - name: 'setSynthetix', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', - }, - ], - name: 'supportsInterface', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - ], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'perpsMarketId', - type: 'uint128', - }, - { - internalType: 'bytes32', - name: 'feedId', - type: 'bytes32', - }, - ], - name: 'updatePriceData', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'AccountLiquidatable', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'AccountNotFound', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'collateralAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'withdrawAmount', - type: 'uint256', - }, - ], - name: 'InsufficientCollateral', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'available', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'required', - type: 'uint256', - }, - ], - name: 'InsufficientCollateralAvailableForWithdraw', - type: 'error', - }, - { - inputs: [ - { - internalType: 'int256', - name: 'amountDelta', - type: 'int256', - }, - ], - name: 'InvalidAmountDelta', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'InvalidMarket', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'maxAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'collateralAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'depositAmount', - type: 'uint256', - }, - ], - name: 'MaxCollateralExceeded', - type: 'error', - }, - { - inputs: [], - name: 'OverflowUint128ToInt128', - type: 'error', - }, - { - inputs: [], - name: 'OverflowUint256ToInt256', - type: 'error', - }, - { - inputs: [], - name: 'OverflowUint256ToUint128', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'PriceFeedNotSet', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - ], - name: 'SynthNotEnabledForCollateral', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'int256', - name: 'amountDelta', - type: 'int256', - }, - { - indexed: false, - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'CollateralModified', - type: 'event', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getAsyncOrderClaim', - outputs: [ - { - components: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'settlementStrategyId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct AsyncOrder.Data', - name: '', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'getAvailableMargin', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getOpenPosition', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - { - internalType: 'int256', - name: '', - type: 'int256', - }, - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - internalType: 'int256', - name: 'amountDelta', - type: 'int256', - }, - ], - name: 'modifyCollateral', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'totalAccountOpenInterest', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'totalCollateralValue', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'currentFundingRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'currentFundingVelocity', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'int256', - name: 'orderSize', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'price', - type: 'uint256', - }, - ], - name: 'fillPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getMarketSummary', - outputs: [ - { - components: [ - { - internalType: 'int256', - name: 'skew', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'size', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxOpenInterest', - type: 'uint256', - }, - { - internalType: 'int256', - name: 'currentFundingRate', - type: 'int256', - }, - { - internalType: 'int256', - name: 'currentFundingVelocity', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'indexPrice', - type: 'uint256', - }, - ], - internalType: 'struct IPerpsMarketModule.MarketSummary', - name: 'summary', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'indexPrice', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'maxOpenInterest', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'size', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'skew', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fillPrice', - type: 'uint256', - }, - ], - name: 'AcceptablePriceExceeded', - type: 'error', - }, - { - inputs: [ - { - internalType: 'int256', - name: 'availableMargin', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'minMargin', - type: 'uint256', - }, - ], - name: 'InsufficientMargin', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'leftover', - type: 'uint256', - }, - ], - name: 'InsufficientMarginError', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'settlementStrategyId', - type: 'uint128', - }, - ], - name: 'InvalidSettlementStrategy', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - { - internalType: 'string[]', - name: 'urls', - type: 'string[]', - }, - { - internalType: 'bytes', - name: 'callData', - type: 'bytes', - }, - { - internalType: 'bytes4', - name: 'callbackFunction', - type: 'bytes4', - }, - { - internalType: 'bytes', - name: 'extraData', - type: 'bytes', - }, - ], - name: 'OffchainLookup', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'OrderAlreadyCommitted', - type: 'error', - }, - { - inputs: [], - name: 'OrderNotValid', - type: 'error', - }, - { - inputs: [], - name: 'OverflowInt256ToInt128', - type: 'error', - }, - { - inputs: [], - name: 'OverflowUint256ToUint64', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'deviation', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'tolerance', - type: 'uint256', - }, - ], - name: 'PriceDeviationToleranceExceeded', - type: 'error', - }, - { - inputs: [ - { - internalType: 'enum SettlementStrategy.Type', - name: 'strategyType', - type: 'uint8', - }, - ], - name: 'SettlementStrategyNotFound', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementExpiration', - type: 'uint256', - }, - ], - name: 'SettlementWindowExpired', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'timestamp', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementExpiration', - type: 'uint256', - }, - ], - name: 'SettlementWindowNotExpired', - type: 'error', - }, - { - inputs: [], - name: 'ZeroSizeOrder', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - ], - name: 'OrderCanceled', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'enum SettlementStrategy.Type', - name: 'orderType', - type: 'uint8', - }, - { - indexed: false, - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'expirationTime', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'OrderCommitted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: true, - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fillPrice', - type: 'uint256', - }, - { - indexed: false, - internalType: 'int256', - name: 'accountPnlRealized', - type: 'int256', - }, - { - indexed: false, - internalType: 'int128', - name: 'newSize', - type: 'int128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'collectedFees', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'settelementReward', - type: 'uint256', - }, - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'settler', - type: 'address', - }, - ], - name: 'OrderSettled', - type: 'event', - }, - { - inputs: [], - name: 'PRECISION', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'cancelOrder', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - components: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'settlementStrategyId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct AsyncOrder.OrderCommitmentRequest', - name: 'commitment', - type: 'tuple', - }, - ], - name: 'commitOrder', - outputs: [ - { - components: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'settlementStrategyId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct AsyncOrder.Data', - name: 'retOrder', - type: 'tuple', - }, - { - internalType: 'uint256', - name: 'fees', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'getOrder', - outputs: [ - { - components: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'settlementStrategyId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'settlementTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'acceptablePrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct AsyncOrder.Data', - name: '', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'settle', - outputs: [], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes', - name: 'result', - type: 'bytes', - }, - { - internalType: 'bytes', - name: 'extraData', - type: 'bytes', - }, - ], - name: 'settlePythOrder', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bool', - name: 'allowAll', - type: 'bool', - }, - ], - name: 'FeatureFlagAllowAllSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'FeatureFlagAllowlistAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'FeatureFlagAllowlistRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address[]', - name: 'deniers', - type: 'address[]', - }, - ], - name: 'FeatureFlagDeniersReset', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bool', - name: 'denyAll', - type: 'bool', - }, - ], - name: 'FeatureFlagDenyAllSet', - type: 'event', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'addToFeatureFlagAllowlist', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - ], - name: 'getDeniers', - outputs: [ - { - internalType: 'address[]', - name: '', - type: 'address[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - ], - name: 'getFeatureFlagAllowAll', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - ], - name: 'getFeatureFlagAllowlist', - outputs: [ - { - internalType: 'address[]', - name: '', - type: 'address[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - ], - name: 'getFeatureFlagDenyAll', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'isFeatureAllowed', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'removeFromFeatureFlagAllowlist', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'address[]', - name: 'deniers', - type: 'address[]', - }, - ], - name: 'setDeniers', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'bool', - name: 'allowAll', - type: 'bool', - }, - ], - name: 'setFeatureFlagAllowAll', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'feature', - type: 'bytes32', - }, - { - internalType: 'bool', - name: 'denyAll', - type: 'bool', - }, - ], - name: 'setFeatureFlagDenyAll', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'NotEligibleForLiquidation', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'accountId', - type: 'uint128', - }, - ], - name: 'liquidate', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'liquidateFlagged', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'marketOwner', - type: 'address', - }, - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'OnlyMarketOwner', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - ], - name: 'FundingParametersSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'initialMarginFraction', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maintenanceMarginFraction', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'liquidationRewardRatioD18', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxLiquidationLimitAccumulationMultiplier', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxSecondsInLiquidationWindow', - type: 'uint256', - }, - ], - name: 'LiquidationParametersSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lockedOiPercent', - type: 'uint256', - }, - ], - name: 'LockedOiPercentSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - name: 'MaxMarketValueSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'makerFeeRatio', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'takerFeeRatio', - type: 'uint256', - }, - ], - name: 'OrderFeesSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - components: [ - { - internalType: 'enum SettlementStrategy.Type', - name: 'strategyType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'settlementDelay', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementWindowDuration', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceWindowDuration', - type: 'uint256', - }, - { - internalType: 'address', - name: 'priceVerificationContract', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'feedId', - type: 'bytes32', - }, - { - internalType: 'string', - name: 'url', - type: 'string', - }, - { - internalType: 'uint256', - name: 'settlementReward', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceDeviationTolerance', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'disabled', - type: 'bool', - }, - ], - indexed: false, - internalType: 'struct SettlementStrategy.Data', - name: 'strategy', - type: 'tuple', - }, - { - indexed: true, - internalType: 'uint256', - name: 'strategyId', - type: 'uint256', - }, - ], - name: 'SettlementStrategyAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'strategyId', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'SettlementStrategyEnabled', - type: 'event', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - components: [ - { - internalType: 'enum SettlementStrategy.Type', - name: 'strategyType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'settlementDelay', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementWindowDuration', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceWindowDuration', - type: 'uint256', - }, - { - internalType: 'address', - name: 'priceVerificationContract', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'feedId', - type: 'bytes32', - }, - { - internalType: 'string', - name: 'url', - type: 'string', - }, - { - internalType: 'uint256', - name: 'settlementReward', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceDeviationTolerance', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'disabled', - type: 'bool', - }, - ], - internalType: 'struct SettlementStrategy.Data', - name: 'strategy', - type: 'tuple', - }, - ], - name: 'addSettlementStrategy', - outputs: [ - { - internalType: 'uint256', - name: 'strategyId', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getFundingParameters', - outputs: [ - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getLiquidationParameters', - outputs: [ - { - internalType: 'uint256', - name: 'initialMarginFraction', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maintenanceMarginFraction', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationRewardRatioD18', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationLimitAccumulationMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxSecondsInLiquidationWindow', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getLockedOiPercent', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getMaxMarketValue', - outputs: [ - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - ], - name: 'getOrderFees', - outputs: [ - { - internalType: 'uint256', - name: 'makerFee', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFee', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'strategyId', - type: 'uint256', - }, - ], - name: 'getSettlementStrategy', - outputs: [ - { - components: [ - { - internalType: 'enum SettlementStrategy.Type', - name: 'strategyType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'settlementDelay', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'settlementWindowDuration', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceWindowDuration', - type: 'uint256', - }, - { - internalType: 'address', - name: 'priceVerificationContract', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'feedId', - type: 'bytes32', - }, - { - internalType: 'string', - name: 'url', - type: 'string', - }, - { - internalType: 'uint256', - name: 'settlementReward', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'priceDeviationTolerance', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'disabled', - type: 'bool', - }, - ], - internalType: 'struct SettlementStrategy.Data', - name: 'settlementStrategy', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'skewScale', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxFundingVelocity', - type: 'uint256', - }, - ], - name: 'setFundingParameters', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'initialMarginFraction', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maintenanceMarginFraction', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'liquidationRewardRatioD18', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationLimitAccumulationMultiplier', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxSecondsInLiquidationWindow', - type: 'uint256', - }, - ], - name: 'setLiquidationParameters', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'lockedOiPercent', - type: 'uint256', - }, - ], - name: 'setLockedOiPercent', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'maxMarketValue', - type: 'uint256', - }, - ], - name: 'setMaxMarketValue', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'makerFeeRatio', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'takerFeeRatio', - type: 'uint256', - }, - ], - name: 'setOrderFees', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'marketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'strategyId', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'setSettlementStrategyEnabled', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint256', - name: 'minLiquidationRewardUsd', - type: 'uint256', - }, - { - indexed: true, - internalType: 'uint256', - name: 'maxLiquidationRewardUsd', - type: 'uint256', - }, - ], - name: 'LiquidationRewardGuardsSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - indexed: false, - internalType: 'uint256', - name: 'collateralAmount', - type: 'uint256', - }, - ], - name: 'MaxCollateralAmountSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint128[]', - name: 'newSynthDeductionPriority', - type: 'uint128[]', - }, - ], - name: 'SynthDeductionPrioritySet', - type: 'event', - }, - { - inputs: [], - name: 'getLiquidationRewardGuards', - outputs: [ - { - internalType: 'uint256', - name: 'minLiquidationRewardUsd', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationRewardUsd', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - ], - name: 'getMaxCollateralAmount', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getSynthDeductionPriority', - outputs: [ - { - internalType: 'uint128[]', - name: '', - type: 'uint128[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'minLiquidationRewardUsd', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'maxLiquidationRewardUsd', - type: 'uint256', - }, - ], - name: 'setLiquidationRewardGuards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128', - name: 'synthMarketId', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'collateralAmount', - type: 'uint256', - }, - ], - name: 'setMaxCollateralAmount', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint128[]', - name: 'newSynthDeductionPriority', - type: 'uint128[]', - }, - ], - name: 'setSynthDeductionPriority', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "bytes32", + name: "which", + type: "bytes32", + }, + ], + name: "FeatureUnavailable", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "InvalidAccountId", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + ], + name: "InvalidPermission", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "origin", + type: "address", + }, + ], + name: "OnlyAccountTokenProxy", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "target", + type: "address", + }, + ], + name: "PermissionDenied", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "PermissionNotGranted", + type: "error", + }, + { + inputs: [], + name: "PositionOutOfBounds", + type: "error", + }, + { + inputs: [], + name: "ValueAlreadyInSet", + type: "error", + }, + { + inputs: [], + name: "ValueNotInSet", + type: "error", + }, + { + inputs: [], + name: "ZeroAddress", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + ], + name: "AccountCreated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "PermissionGranted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "PermissionRevoked", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "requestedAccountId", + type: "uint128", + }, + ], + name: "createAccount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountLastInteraction", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAccountPermissions", + outputs: [ + { + components: [ + { + internalType: "address", + name: "user", + type: "address", + }, + { + internalType: "bytes32[]", + name: "permissions", + type: "bytes32[]", + }, + ], + internalType: "struct IAccountModule.AccountPermissions[]", + name: "accountPerms", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getAccountTokenAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "grantPermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "hasPermission", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "isAuthorized", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "notifyAccountTransfer", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + ], + name: "renouncePermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "permission", + type: "bytes32", + }, + { + internalType: "address", + name: "user", + type: "address", + }, + ], + name: "revokePermission", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "expected", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "actual", + type: "bytes32", + }, + ], + name: "MismatchAssociatedSystemKind", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "MissingAssociatedSystem", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "Unauthorized", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "kind", + type: "bytes32", + }, + { + indexed: true, + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "proxy", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "AssociatedSystemSet", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getAssociatedSystem", + outputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + { + internalType: "bytes32", + name: "kind", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + { + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "initOrUpgradeNft", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "symbol", + type: "string", + }, + { + internalType: "uint8", + name: "decimals", + type: "uint8", + }, + { + internalType: "address", + name: "impl", + type: "address", + }, + ], + name: "initOrUpgradeToken", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "address", + name: "endpoint", + type: "address", + }, + ], + name: "registerUnmanagedSystem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "ImplementationIsSterile", + type: "error", + }, + { + inputs: [], + name: "NoChange", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "contr", + type: "address", + }, + ], + name: "NotAContract", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "NotNominated", + type: "error", + }, + { + inputs: [], + name: "UpgradeSimulationFailed", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "self", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getImplementation", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceNomination", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "simulateUpgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "upgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "InvalidMarketOwner", + type: "error", + }, + { + inputs: [], + name: "OverflowInt256ToUint256", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "MarketOwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "MarketOwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + ], + name: "MarketPriceDataUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + indexed: true, + internalType: "address", + name: "marketOwner", + type: "address", + }, + { + indexed: false, + internalType: "string", + name: "marketName", + type: "string", + }, + { + indexed: false, + internalType: "string", + name: "marketSymbol", + type: "string", + }, + ], + name: "MarketRegistered", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "acceptMarketOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "marketName", + type: "string", + }, + { + internalType: "string", + name: "marketSymbol", + type: "string", + }, + { + internalType: "address", + name: "marketOwner", + type: "address", + }, + ], + name: "createMarket", + outputs: [ + { + internalType: "uint128", + name: "", + type: "uint128", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "getMarketOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "minimumCredit", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "nominateMarketOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "reportedDebt", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract ISpotMarketSystem", + name: "spotMarket", + type: "address", + }, + ], + name: "setSpotMarket", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "contract ISynthetixSystem", + name: "synthetix", + type: "address", + }, + ], + name: "setSynthetix", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + ], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "perpsMarketId", + type: "uint128", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + ], + name: "updatePriceData", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "AccountLiquidatable", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "AccountNotFound", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "withdrawAmount", + type: "uint256", + }, + ], + name: "InsufficientCollateral", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "available", + type: "uint256", + }, + { + internalType: "uint256", + name: "required", + type: "uint256", + }, + ], + name: "InsufficientCollateralAvailableForWithdraw", + type: "error", + }, + { + inputs: [ + { + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + ], + name: "InvalidAmountDelta", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "InvalidMarket", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "maxAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "depositAmount", + type: "uint256", + }, + ], + name: "MaxCollateralExceeded", + type: "error", + }, + { + inputs: [], + name: "OverflowUint128ToInt128", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToInt256", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToUint128", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "PriceFeedNotSet", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + ], + name: "SynthNotEnabledForCollateral", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + indexed: true, + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "CollateralModified", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getAsyncOrderClaim", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getAvailableMargin", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getOpenPosition", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + { + internalType: "int256", + name: "", + type: "int256", + }, + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "int256", + name: "amountDelta", + type: "int256", + }, + ], + name: "modifyCollateral", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "totalAccountOpenInterest", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "totalCollateralValue", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "currentFundingRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "currentFundingVelocity", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int256", + name: "orderSize", + type: "int256", + }, + { + internalType: "uint256", + name: "price", + type: "uint256", + }, + ], + name: "fillPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getMarketSummary", + outputs: [ + { + components: [ + { + internalType: "int256", + name: "skew", + type: "int256", + }, + { + internalType: "uint256", + name: "size", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxOpenInterest", + type: "uint256", + }, + { + internalType: "int256", + name: "currentFundingRate", + type: "int256", + }, + { + internalType: "int256", + name: "currentFundingVelocity", + type: "int256", + }, + { + internalType: "uint256", + name: "indexPrice", + type: "uint256", + }, + ], + internalType: "struct IPerpsMarketModule.MarketSummary", + name: "summary", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "indexPrice", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "maxOpenInterest", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "size", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "skew", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "uint256", + name: "fillPrice", + type: "uint256", + }, + ], + name: "AcceptablePriceExceeded", + type: "error", + }, + { + inputs: [ + { + internalType: "int256", + name: "availableMargin", + type: "int256", + }, + { + internalType: "uint256", + name: "minMargin", + type: "uint256", + }, + ], + name: "InsufficientMargin", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "leftover", + type: "uint256", + }, + ], + name: "InsufficientMarginError", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + ], + name: "InvalidSettlementStrategy", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "string[]", + name: "urls", + type: "string[]", + }, + { + internalType: "bytes", + name: "callData", + type: "bytes", + }, + { + internalType: "bytes4", + name: "callbackFunction", + type: "bytes4", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "OffchainLookup", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "OrderAlreadyCommitted", + type: "error", + }, + { + inputs: [], + name: "OrderNotValid", + type: "error", + }, + { + inputs: [], + name: "OverflowInt256ToInt128", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToUint64", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "deviation", + type: "uint256", + }, + { + internalType: "uint256", + name: "tolerance", + type: "uint256", + }, + ], + name: "PriceDeviationToleranceExceeded", + type: "error", + }, + { + inputs: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + ], + name: "SettlementStrategyNotFound", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementExpiration", + type: "uint256", + }, + ], + name: "SettlementWindowExpired", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "timestamp", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementExpiration", + type: "uint256", + }, + ], + name: "SettlementWindowNotExpired", + type: "error", + }, + { + inputs: [], + name: "ZeroSizeOrder", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + ], + name: "OrderCanceled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: true, + internalType: "enum SettlementStrategy.Type", + name: "orderType", + type: "uint8", + }, + { + indexed: false, + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + indexed: false, + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "expirationTime", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "OrderCommitted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: true, + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "fillPrice", + type: "uint256", + }, + { + indexed: false, + internalType: "int256", + name: "accountPnlRealized", + type: "int256", + }, + { + indexed: false, + internalType: "int128", + name: "newSize", + type: "int128", + }, + { + indexed: false, + internalType: "uint256", + name: "collectedFees", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "settelementReward", + type: "uint256", + }, + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "settler", + type: "address", + }, + ], + name: "OrderSettled", + type: "event", + }, + { + inputs: [], + name: "PRECISION", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "cancelOrder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.OrderCommitmentRequest", + name: "commitment", + type: "tuple", + }, + ], + name: "commitOrder", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "retOrder", + type: "tuple", + }, + { + internalType: "uint256", + name: "fees", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "getOrder", + outputs: [ + { + components: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "settlementStrategyId", + type: "uint128", + }, + { + internalType: "uint256", + name: "settlementTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "acceptablePrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct AsyncOrder.Data", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "settle", + outputs: [], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "result", + type: "bytes", + }, + { + internalType: "bytes", + name: "extraData", + type: "bytes", + }, + ], + name: "settlePythOrder", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "allowAll", + type: "bool", + }, + ], + name: "FeatureFlagAllowAllSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "FeatureFlagAllowlistAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "FeatureFlagAllowlistRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "address[]", + name: "deniers", + type: "address[]", + }, + ], + name: "FeatureFlagDeniersReset", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "denyAll", + type: "bool", + }, + ], + name: "FeatureFlagDenyAllSet", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "addToFeatureFlagAllowlist", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getDeniers", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagAllowAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagAllowlist", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + ], + name: "getFeatureFlagDenyAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "isFeatureAllowed", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "removeFromFeatureFlagAllowlist", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "address[]", + name: "deniers", + type: "address[]", + }, + ], + name: "setDeniers", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "bool", + name: "allowAll", + type: "bool", + }, + ], + name: "setFeatureFlagAllowAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "feature", + type: "bytes32", + }, + { + internalType: "bool", + name: "denyAll", + type: "bool", + }, + ], + name: "setFeatureFlagDenyAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "NotEligibleForLiquidation", + type: "error", + }, + { + inputs: [ + { + internalType: "uint128", + name: "accountId", + type: "uint128", + }, + ], + name: "liquidate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "liquidateFlagged", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "marketOwner", + type: "address", + }, + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "OnlyMarketOwner", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + name: "FundingParametersSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + name: "LiquidationParametersSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "lockedOiPercent", + type: "uint256", + }, + ], + name: "LockedOiPercentSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + name: "MaxMarketValueSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "makerFeeRatio", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "takerFeeRatio", + type: "uint256", + }, + ], + name: "OrderFeesSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + indexed: false, + internalType: "struct SettlementStrategy.Data", + name: "strategy", + type: "tuple", + }, + { + indexed: true, + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + name: "SettlementStrategyAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "SettlementStrategyEnabled", + type: "event", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + internalType: "struct SettlementStrategy.Data", + name: "strategy", + type: "tuple", + }, + ], + name: "addSettlementStrategy", + outputs: [ + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getFundingParameters", + outputs: [ + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getLiquidationParameters", + outputs: [ + { + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getLockedOiPercent", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getMaxMarketValue", + outputs: [ + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + ], + name: "getOrderFees", + outputs: [ + { + internalType: "uint256", + name: "makerFee", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + ], + name: "getSettlementStrategy", + outputs: [ + { + components: [ + { + internalType: "enum SettlementStrategy.Type", + name: "strategyType", + type: "uint8", + }, + { + internalType: "uint256", + name: "settlementDelay", + type: "uint256", + }, + { + internalType: "uint256", + name: "settlementWindowDuration", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceWindowDuration", + type: "uint256", + }, + { + internalType: "address", + name: "priceVerificationContract", + type: "address", + }, + { + internalType: "bytes32", + name: "feedId", + type: "bytes32", + }, + { + internalType: "string", + name: "url", + type: "string", + }, + { + internalType: "uint256", + name: "settlementReward", + type: "uint256", + }, + { + internalType: "uint256", + name: "priceDeviationTolerance", + type: "uint256", + }, + { + internalType: "bool", + name: "disabled", + type: "bool", + }, + ], + internalType: "struct SettlementStrategy.Data", + name: "settlementStrategy", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "skewScale", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFundingVelocity", + type: "uint256", + }, + ], + name: "setFundingParameters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "initialMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "maintenanceMarginFraction", + type: "uint256", + }, + { + internalType: "uint256", + name: "liquidationRewardRatioD18", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationLimitAccumulationMultiplier", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxSecondsInLiquidationWindow", + type: "uint256", + }, + ], + name: "setLiquidationParameters", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "lockedOiPercent", + type: "uint256", + }, + ], + name: "setLockedOiPercent", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "maxMarketValue", + type: "uint256", + }, + ], + name: "setMaxMarketValue", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "makerFeeRatio", + type: "uint256", + }, + { + internalType: "uint256", + name: "takerFeeRatio", + type: "uint256", + }, + ], + name: "setOrderFees", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "marketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "strategyId", + type: "uint256", + }, + { + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "setSettlementStrategyEnabled", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + indexed: true, + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + name: "LiquidationRewardGuardsSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + indexed: false, + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + ], + name: "MaxCollateralAmountSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint128[]", + name: "newSynthDeductionPriority", + type: "uint128[]", + }, + ], + name: "SynthDeductionPrioritySet", + type: "event", + }, + { + inputs: [], + name: "getLiquidationRewardGuards", + outputs: [ + { + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + ], + name: "getMaxCollateralAmount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getSynthDeductionPriority", + outputs: [ + { + internalType: "uint128[]", + name: "", + type: "uint128[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "minLiquidationRewardUsd", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxLiquidationRewardUsd", + type: "uint256", + }, + ], + name: "setLiquidationRewardGuards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128", + name: "synthMarketId", + type: "uint128", + }, + { + internalType: "uint256", + name: "collateralAmount", + type: "uint256", + }, + ], + name: "setMaxCollateralAmount", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint128[]", + name: "newSynthDeductionPriority", + type: "uint128[]", + }, + ], + name: "setSynthDeductionPriority", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class PerpsV3MarketProxy__factory { - static readonly abi = _abi - static createInterface(): PerpsV3MarketProxyInterface { - return new utils.Interface(_abi) as PerpsV3MarketProxyInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): PerpsV3MarketProxy { - return new Contract(address, _abi, signerOrProvider) as PerpsV3MarketProxy - } + static readonly abi = _abi; + static createInterface(): PerpsV3MarketProxyInterface { + return new utils.Interface(_abi) as PerpsV3MarketProxyInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV3MarketProxy { + return new Contract(address, _abi, signerOrProvider) as PerpsV3MarketProxy; + } } diff --git a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts index d970425da3..7b5560e72c 100644 --- a/packages/sdk/src/contracts/types/factories/Pyth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Pyth__factory.ts @@ -2,488 +2,488 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Pyth, PythInterface } from '../Pyth' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Pyth, PythInterface } from "../Pyth"; const _abi = [ - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint16', - name: 'chainId', - type: 'uint16', - }, - { - indexed: false, - internalType: 'uint64', - name: 'sequenceNumber', - type: 'uint64', - }, - ], - name: 'BatchPriceFeedUpdate', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint64', - name: 'publishTime', - type: 'uint64', - }, - { - indexed: false, - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - indexed: false, - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - ], - name: 'PriceFeedUpdate', - type: 'event', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getEmaPrice', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'age', - type: 'uint256', - }, - ], - name: 'getEmaPriceNoOlderThan', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getEmaPriceUnsafe', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getPrice', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'age', - type: 'uint256', - }, - ], - name: 'getPriceNoOlderThan', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - ], - name: 'getPriceUnsafe', - outputs: [ - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - ], - name: 'getUpdateFee', - outputs: [ - { - internalType: 'uint256', - name: 'feeAmount', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getValidTimePeriod', - outputs: [ - { - internalType: 'uint256', - name: 'validTimePeriod', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - { - internalType: 'bytes32[]', - name: 'priceIds', - type: 'bytes32[]', - }, - { - internalType: 'uint64', - name: 'minPublishTime', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'maxPublishTime', - type: 'uint64', - }, - ], - name: 'parsePriceFeedUpdates', - outputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'id', - type: 'bytes32', - }, - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'price', - type: 'tuple', - }, - { - components: [ - { - internalType: 'int64', - name: 'price', - type: 'int64', - }, - { - internalType: 'uint64', - name: 'conf', - type: 'uint64', - }, - { - internalType: 'int32', - name: 'expo', - type: 'int32', - }, - { - internalType: 'uint256', - name: 'publishTime', - type: 'uint256', - }, - ], - internalType: 'struct PythStructs.Price', - name: 'emaPrice', - type: 'tuple', - }, - ], - internalType: 'struct PythStructs.PriceFeed[]', - name: 'priceFeeds', - type: 'tuple[]', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - ], - name: 'updatePriceFeeds', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes[]', - name: 'updateData', - type: 'bytes[]', - }, - { - internalType: 'bytes32[]', - name: 'priceIds', - type: 'bytes32[]', - }, - { - internalType: 'uint64[]', - name: 'publishTimes', - type: 'uint64[]', - }, - ], - name: 'updatePriceFeedsIfNecessary', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, -] as const + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint16", + name: "chainId", + type: "uint16", + }, + { + indexed: false, + internalType: "uint64", + name: "sequenceNumber", + type: "uint64", + }, + ], + name: "BatchPriceFeedUpdate", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint64", + name: "publishTime", + type: "uint64", + }, + { + indexed: false, + internalType: "int64", + name: "price", + type: "int64", + }, + { + indexed: false, + internalType: "uint64", + name: "conf", + type: "uint64", + }, + ], + name: "PriceFeedUpdate", + type: "event", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getEmaPrice", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "uint256", + name: "age", + type: "uint256", + }, + ], + name: "getEmaPriceNoOlderThan", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getEmaPriceUnsafe", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getPrice", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + internalType: "uint256", + name: "age", + type: "uint256", + }, + ], + name: "getPriceNoOlderThan", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + ], + name: "getPriceUnsafe", + outputs: [ + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + ], + name: "getUpdateFee", + outputs: [ + { + internalType: "uint256", + name: "feeAmount", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getValidTimePeriod", + outputs: [ + { + internalType: "uint256", + name: "validTimePeriod", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + { + internalType: "bytes32[]", + name: "priceIds", + type: "bytes32[]", + }, + { + internalType: "uint64", + name: "minPublishTime", + type: "uint64", + }, + { + internalType: "uint64", + name: "maxPublishTime", + type: "uint64", + }, + ], + name: "parsePriceFeedUpdates", + outputs: [ + { + components: [ + { + internalType: "bytes32", + name: "id", + type: "bytes32", + }, + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "price", + type: "tuple", + }, + { + components: [ + { + internalType: "int64", + name: "price", + type: "int64", + }, + { + internalType: "uint64", + name: "conf", + type: "uint64", + }, + { + internalType: "int32", + name: "expo", + type: "int32", + }, + { + internalType: "uint256", + name: "publishTime", + type: "uint256", + }, + ], + internalType: "struct PythStructs.Price", + name: "emaPrice", + type: "tuple", + }, + ], + internalType: "struct PythStructs.PriceFeed[]", + name: "priceFeeds", + type: "tuple[]", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + ], + name: "updatePriceFeeds", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes[]", + name: "updateData", + type: "bytes[]", + }, + { + internalType: "bytes32[]", + name: "priceIds", + type: "bytes32[]", + }, + { + internalType: "uint64[]", + name: "publishTimes", + type: "uint64[]", + }, + ], + name: "updatePriceFeedsIfNecessary", + outputs: [], + stateMutability: "payable", + type: "function", + }, +] as const; export class Pyth__factory { - static readonly abi = _abi - static createInterface(): PythInterface { - return new utils.Interface(_abi) as PythInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Pyth { - return new Contract(address, _abi, signerOrProvider) as Pyth - } + static readonly abi = _abi; + static createInterface(): PythInterface { + return new utils.Interface(_abi) as PythInterface; + } + static connect(address: string, signerOrProvider: Signer | Provider): Pyth { + return new Contract(address, _abi, signerOrProvider) as Pyth; + } } diff --git a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts index 82fbffa0ac..a3621db7f5 100644 --- a/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts +++ b/packages/sdk/src/contracts/types/factories/ReverseRecords__factory.ts @@ -2,49 +2,55 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ReverseRecords, ReverseRecordsInterface } from '../ReverseRecords' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + ReverseRecords, + ReverseRecordsInterface, +} from "../ReverseRecords"; const _abi = [ - { - inputs: [ - { - internalType: 'contract ENS', - name: '_ens', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [ - { - internalType: 'address[]', - name: 'addresses', - type: 'address[]', - }, - ], - name: 'getNames', - outputs: [ - { - internalType: 'string[]', - name: 'r', - type: 'string[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "contract ENS", + name: "_ens", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "address[]", + name: "addresses", + type: "address[]", + }, + ], + name: "getNames", + outputs: [ + { + internalType: "string[]", + name: "r", + type: "string[]", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class ReverseRecords__factory { - static readonly abi = _abi - static createInterface(): ReverseRecordsInterface { - return new utils.Interface(_abi) as ReverseRecordsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): ReverseRecords { - return new Contract(address, _abi, signerOrProvider) as ReverseRecords - } + static readonly abi = _abi; + static createInterface(): ReverseRecordsInterface { + return new utils.Interface(_abi) as ReverseRecordsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ReverseRecords { + return new Contract(address, _abi, signerOrProvider) as ReverseRecords; + } } diff --git a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts index b60a8cf285..735698c0ce 100644 --- a/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts +++ b/packages/sdk/src/contracts/types/factories/RewardEscrow__factory.ts @@ -2,679 +2,682 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { RewardEscrow, RewardEscrowInterface } from '../RewardEscrow' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { RewardEscrow, RewardEscrowInterface } from "../RewardEscrow"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_kwenta', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'rewardEscrow', - type: 'address', - }, - ], - name: 'StakingRewardsSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'treasuryDAO', - type: 'address', - }, - ], - name: 'TreasuryDAOSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Vested', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'VestingEntryCreated', - type: 'event', - }, - { - inputs: [], - name: 'MAX_DURATION', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'accountVestingEntryIDs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'quantity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'appendVestingEntry', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - internalType: 'uint256', - name: 'deposit', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'createEscrowEntry', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', - }, - ], - name: 'getAccountVestingEntryIDs', - outputs: [ - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'getKwentaAddress', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'getVestingEntry', - outputs: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - name: 'getVestingEntryClaimable', - outputs: [ - { - internalType: 'uint256', - name: 'quantity', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256[]', - name: 'entryIDs', - type: 'uint256[]', - }, - ], - name: 'getVestingQuantity', - outputs: [ - { - internalType: 'uint256', - name: 'total', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'totalFee', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', - }, - ], - name: 'getVestingSchedules', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'entryID', - type: 'uint256', - }, - ], - internalType: 'struct VestingEntries.VestingEntryWithID[]', - name: '', - type: 'tuple[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'nextEntryId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'numVestingEntries', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_stakingRewards', - type: 'address', - }, - ], - name: 'setStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - name: 'setTreasuryDAO', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - ], - name: 'stakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'stakingRewards', - outputs: [ - { - internalType: 'contract IStakingRewards', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'totalEscrowedAccountBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'totalEscrowedBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'totalVestedAccountBalance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDAO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - ], - name: 'unstakeEscrow', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256[]', - name: 'entryIDs', - type: 'uint256[]', - }, - ], - name: 'vest', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'vestingSchedules', - outputs: [ - { - internalType: 'uint64', - name: 'endTime', - type: 'uint64', - }, - { - internalType: 'uint256', - name: 'escrowAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_kwenta", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "rewardEscrow", + type: "address", + }, + ], + name: "StakingRewardsSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "treasuryDAO", + type: "address", + }, + ], + name: "TreasuryDAOSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Vested", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "duration", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "VestingEntryCreated", + type: "event", + }, + { + inputs: [], + name: "MAX_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "accountVestingEntryIDs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "quantity", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "appendVestingEntry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + internalType: "uint256", + name: "deposit", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "createEscrowEntry", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "pageSize", + type: "uint256", + }, + ], + name: "getAccountVestingEntryIDs", + outputs: [ + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "getKwentaAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "getVestingEntry", + outputs: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + name: "getVestingEntryClaimable", + outputs: [ + { + internalType: "uint256", + name: "quantity", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256[]", + name: "entryIDs", + type: "uint256[]", + }, + ], + name: "getVestingQuantity", + outputs: [ + { + internalType: "uint256", + name: "total", + type: "uint256", + }, + { + internalType: "uint256", + name: "totalFee", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + { + internalType: "uint256", + name: "pageSize", + type: "uint256", + }, + ], + name: "getVestingSchedules", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "entryID", + type: "uint256", + }, + ], + internalType: "struct VestingEntries.VestingEntryWithID[]", + name: "", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "nextEntryId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "numVestingEntries", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_stakingRewards", + type: "address", + }, + ], + name: "setStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + name: "setTreasuryDAO", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "stakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "stakingRewards", + outputs: [ + { + internalType: "contract IStakingRewards", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "totalEscrowedAccountBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalEscrowedBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "totalVestedAccountBalance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDAO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + ], + name: "unstakeEscrow", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256[]", + name: "entryIDs", + type: "uint256[]", + }, + ], + name: "vest", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "vestingSchedules", + outputs: [ + { + internalType: "uint64", + name: "endTime", + type: "uint64", + }, + { + internalType: "uint256", + name: "escrowAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class RewardEscrow__factory { - static readonly abi = _abi - static createInterface(): RewardEscrowInterface { - return new utils.Interface(_abi) as RewardEscrowInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): RewardEscrow { - return new Contract(address, _abi, signerOrProvider) as RewardEscrow - } + static readonly abi = _abi; + static createInterface(): RewardEscrowInterface { + return new utils.Interface(_abi) as RewardEscrowInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): RewardEscrow { + return new Contract(address, _abi, signerOrProvider) as RewardEscrow; + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts index 78d110c0b8..070e290ea7 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccountFactory__factory.ts @@ -2,292 +2,299 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; import type { - SmartMarginAccountFactory, - SmartMarginAccountFactoryInterface, -} from '../SmartMarginAccountFactory' + SmartMarginAccountFactory, + SmartMarginAccountFactoryInterface, +} from "../SmartMarginAccountFactory"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [], - name: 'AccountDoesNotExist', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes', - name: 'data', - type: 'bytes', - }, - ], - name: 'AccountFailedToFetchVersion', - type: 'error', - }, - { - inputs: [], - name: 'CannotUpgrade', - type: 'error', - }, - { - inputs: [ - { - internalType: 'bytes', - name: 'data', - type: 'bytes', - }, - ], - name: 'FailedToSetAcountOwner', - type: 'error', - }, - { - inputs: [], - name: 'OnlyAccount', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'implementation', - type: 'address', - }, - ], - name: 'AccountImplementationUpgraded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'creator', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'version', - type: 'bytes32', - }, - ], - name: 'NewAccount', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - inputs: [ - { - internalType: 'address', - name: 'accounts', - type: 'address', - }, - ], - name: 'accounts', - outputs: [ - { - internalType: 'bool', - name: 'exist', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'canUpgrade', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_account', - type: 'address', - }, - ], - name: 'getAccountOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'getAccountsOwnedBy', - outputs: [ - { - internalType: 'address[]', - name: '', - type: 'address[]', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'implementation', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'newAccount', - outputs: [ - { - internalType: 'address payable', - name: 'accountAddress', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'removeUpgradability', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_account', - type: 'address', - }, - { - internalType: 'address', - name: '_newOwner', - type: 'address', - }, - { - internalType: 'address', - name: '_oldOwner', - type: 'address', - }, - ], - name: 'updateAccountOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_implementation', - type: 'address', - }, - ], - name: 'upgradeAccountImplementation', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "AccountDoesNotExist", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "AccountFailedToFetchVersion", + type: "error", + }, + { + inputs: [], + name: "CannotUpgrade", + type: "error", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "FailedToSetAcountOwner", + type: "error", + }, + { + inputs: [], + name: "OnlyAccount", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "AccountImplementationUpgraded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "creator", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "version", + type: "bytes32", + }, + ], + name: "NewAccount", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "accounts", + type: "address", + }, + ], + name: "accounts", + outputs: [ + { + internalType: "bool", + name: "exist", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "canUpgrade", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_account", + type: "address", + }, + ], + name: "getAccountOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "getAccountsOwnedBy", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "implementation", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "newAccount", + outputs: [ + { + internalType: "address payable", + name: "accountAddress", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "removeUpgradability", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_account", + type: "address", + }, + { + internalType: "address", + name: "_newOwner", + type: "address", + }, + { + internalType: "address", + name: "_oldOwner", + type: "address", + }, + ], + name: "updateAccountOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_implementation", + type: "address", + }, + ], + name: "upgradeAccountImplementation", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class SmartMarginAccountFactory__factory { - static readonly abi = _abi - static createInterface(): SmartMarginAccountFactoryInterface { - return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccountFactory { - return new Contract(address, _abi, signerOrProvider) as SmartMarginAccountFactory - } + static readonly abi = _abi; + static createInterface(): SmartMarginAccountFactoryInterface { + return new utils.Interface(_abi) as SmartMarginAccountFactoryInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartMarginAccountFactory { + return new Contract( + address, + _abi, + signerOrProvider + ) as SmartMarginAccountFactory; + } } diff --git a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts index 08b4876946..4b12d1022b 100644 --- a/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SmartMarginAccount__factory.ts @@ -2,618 +2,624 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SmartMarginAccount, SmartMarginAccountInterface } from '../SmartMarginAccount' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SmartMarginAccount, + SmartMarginAccountInterface, +} from "../SmartMarginAccount"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_factory', - type: 'address', - }, - { - internalType: 'address', - name: '_events', - type: 'address', - }, - { - internalType: 'address', - name: '_marginAsset', - type: 'address', - }, - { - internalType: 'address', - name: '_futuresMarketManager', - type: 'address', - }, - { - internalType: 'address', - name: '_systemStatus', - type: 'address', - }, - { - internalType: 'address', - name: '_gelato', - type: 'address', - }, - { - internalType: 'address', - name: '_ops', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [], - name: 'EthWithdrawalFailed', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'available', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'required', - type: 'uint256', - }, - ], - name: 'InsufficientFreeMargin', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'commandType', - type: 'uint256', - }, - ], - name: 'InvalidCommandType', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'delegateAddress', - type: 'address', - }, - ], - name: 'InvalidDelegateAddress', - type: 'error', - }, - { - inputs: [], - name: 'InvalidPrice', - type: 'error', - }, - { - inputs: [], - name: 'LengthMismatch', - type: 'error', - }, - { - inputs: [], - name: 'OnlyOps', - type: 'error', - }, - { - inputs: [], - name: 'Unauthorized', - type: 'error', - }, - { - inputs: [], - name: 'ZeroSizeDelta', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'DelegatedAccountAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'DelegatedAccountRemoved', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnershipTransferred', - type: 'event', - }, - { - inputs: [], - name: 'ETH', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'GELATO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'OPS', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'VERSION', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_delegate', - type: 'address', - }, - ], - name: 'addDelegate', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'checker', - outputs: [ - { - internalType: 'bool', - name: 'canExec', - type: 'bool', - }, - { - internalType: 'bytes', - name: 'execPayload', - type: 'bytes', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'committedMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'conditionalOrderId', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: 'delegate', - type: 'address', - }, - ], - name: 'delegates', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'enum IAccount.Command[]', - name: '_commands', - type: 'uint8[]', - }, - { - internalType: 'bytes[]', - name: '_inputs', - type: 'bytes[]', - }, - ], - name: 'execute', - outputs: [], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'executeConditionalOrder', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'freeMargin', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_conditionalOrderId', - type: 'uint256', - }, - ], - name: 'getConditionalOrder', - outputs: [ - { - components: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'int256', - name: 'marginDelta', - type: 'int256', - }, - { - internalType: 'int256', - name: 'sizeDelta', - type: 'int256', - }, - { - internalType: 'uint256', - name: 'targetPrice', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'gelatoTaskId', - type: 'bytes32', - }, - { - internalType: 'enum IAccount.ConditionalOrderTypes', - name: 'conditionalOrderType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: 'desiredFillPrice', - type: 'uint256', - }, - { - internalType: 'bool', - name: 'reduceOnly', - type: 'bool', - }, - ], - internalType: 'struct IAccount.ConditionalOrder', - name: '', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'getDelayedOrder', - outputs: [ - { - components: [ - { - internalType: 'bool', - name: 'isOffchain', - type: 'bool', - }, - { - internalType: 'int128', - name: 'sizeDelta', - type: 'int128', - }, - { - internalType: 'uint128', - name: 'desiredFillPrice', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'targetRoundId', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'commitDeposit', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'keeperDeposit', - type: 'uint128', - }, - { - internalType: 'uint256', - name: 'executableAtTime', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'intentionTime', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.DelayedOrder', - name: 'order', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_marketKey', - type: 'bytes32', - }, - ], - name: 'getPosition', - outputs: [ - { - components: [ - { - internalType: 'uint64', - name: 'id', - type: 'uint64', - }, - { - internalType: 'uint64', - name: 'lastFundingIndex', - type: 'uint64', - }, - { - internalType: 'uint128', - name: 'margin', - type: 'uint128', - }, - { - internalType: 'uint128', - name: 'lastPrice', - type: 'uint128', - }, - { - internalType: 'int128', - name: 'size', - type: 'int128', - }, - ], - internalType: 'struct IPerpsV2MarketConsolidated.Position', - name: 'position', - type: 'tuple', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isAuth', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isOwner', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_delegate', - type: 'address', - }, - ], - name: 'removeDelegate', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'setInitialOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_newOwner', - type: 'address', - }, - ], - name: 'transferOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - stateMutability: 'payable', - type: 'receive', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_factory", + type: "address", + }, + { + internalType: "address", + name: "_events", + type: "address", + }, + { + internalType: "address", + name: "_marginAsset", + type: "address", + }, + { + internalType: "address", + name: "_futuresMarketManager", + type: "address", + }, + { + internalType: "address", + name: "_systemStatus", + type: "address", + }, + { + internalType: "address", + name: "_gelato", + type: "address", + }, + { + internalType: "address", + name: "_ops", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "EthWithdrawalFailed", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "available", + type: "uint256", + }, + { + internalType: "uint256", + name: "required", + type: "uint256", + }, + ], + name: "InsufficientFreeMargin", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "commandType", + type: "uint256", + }, + ], + name: "InvalidCommandType", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "delegateAddress", + type: "address", + }, + ], + name: "InvalidDelegateAddress", + type: "error", + }, + { + inputs: [], + name: "InvalidPrice", + type: "error", + }, + { + inputs: [], + name: "LengthMismatch", + type: "error", + }, + { + inputs: [], + name: "OnlyOps", + type: "error", + }, + { + inputs: [], + name: "Unauthorized", + type: "error", + }, + { + inputs: [], + name: "ZeroSizeDelta", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "DelegatedAccountAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "DelegatedAccountRemoved", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "caller", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "ETH", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "GELATO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "OPS", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_delegate", + type: "address", + }, + ], + name: "addDelegate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "checker", + outputs: [ + { + internalType: "bool", + name: "canExec", + type: "bool", + }, + { + internalType: "bytes", + name: "execPayload", + type: "bytes", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "committedMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "conditionalOrderId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "delegate", + type: "address", + }, + ], + name: "delegates", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "enum IAccount.Command[]", + name: "_commands", + type: "uint8[]", + }, + { + internalType: "bytes[]", + name: "_inputs", + type: "bytes[]", + }, + ], + name: "execute", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "executeConditionalOrder", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "freeMargin", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_conditionalOrderId", + type: "uint256", + }, + ], + name: "getConditionalOrder", + outputs: [ + { + components: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "int256", + name: "marginDelta", + type: "int256", + }, + { + internalType: "int256", + name: "sizeDelta", + type: "int256", + }, + { + internalType: "uint256", + name: "targetPrice", + type: "uint256", + }, + { + internalType: "bytes32", + name: "gelatoTaskId", + type: "bytes32", + }, + { + internalType: "enum IAccount.ConditionalOrderTypes", + name: "conditionalOrderType", + type: "uint8", + }, + { + internalType: "uint256", + name: "desiredFillPrice", + type: "uint256", + }, + { + internalType: "bool", + name: "reduceOnly", + type: "bool", + }, + ], + internalType: "struct IAccount.ConditionalOrder", + name: "", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "getDelayedOrder", + outputs: [ + { + components: [ + { + internalType: "bool", + name: "isOffchain", + type: "bool", + }, + { + internalType: "int128", + name: "sizeDelta", + type: "int128", + }, + { + internalType: "uint128", + name: "desiredFillPrice", + type: "uint128", + }, + { + internalType: "uint128", + name: "targetRoundId", + type: "uint128", + }, + { + internalType: "uint128", + name: "commitDeposit", + type: "uint128", + }, + { + internalType: "uint128", + name: "keeperDeposit", + type: "uint128", + }, + { + internalType: "uint256", + name: "executableAtTime", + type: "uint256", + }, + { + internalType: "uint256", + name: "intentionTime", + type: "uint256", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.DelayedOrder", + name: "order", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_marketKey", + type: "bytes32", + }, + ], + name: "getPosition", + outputs: [ + { + components: [ + { + internalType: "uint64", + name: "id", + type: "uint64", + }, + { + internalType: "uint64", + name: "lastFundingIndex", + type: "uint64", + }, + { + internalType: "uint128", + name: "margin", + type: "uint128", + }, + { + internalType: "uint128", + name: "lastPrice", + type: "uint128", + }, + { + internalType: "int128", + name: "size", + type: "int128", + }, + ], + internalType: "struct IPerpsV2MarketConsolidated.Position", + name: "position", + type: "tuple", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isAuth", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isOwner", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_delegate", + type: "address", + }, + ], + name: "removeDelegate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "setInitialOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +] as const; export class SmartMarginAccount__factory { - static readonly abi = _abi - static createInterface(): SmartMarginAccountInterface { - return new utils.Interface(_abi) as SmartMarginAccountInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SmartMarginAccount { - return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount - } + static readonly abi = _abi; + static createInterface(): SmartMarginAccountInterface { + return new utils.Interface(_abi) as SmartMarginAccountInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartMarginAccount { + return new Contract(address, _abi, signerOrProvider) as SmartMarginAccount; + } } diff --git a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts index e860b88c1d..f83039634d 100644 --- a/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts +++ b/packages/sdk/src/contracts/types/factories/StakingRewards__factory.ts @@ -2,669 +2,675 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { StakingRewards, StakingRewardsInterface } from '../StakingRewards' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + StakingRewards, + StakingRewardsInterface, +} from "../StakingRewards"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardsDistribution', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardsToken', - type: 'address', - }, - { - internalType: 'address', - name: '_stakingToken', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'isPaused', - type: 'bool', - }, - ], - name: 'PauseChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'token', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Recovered', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardAdded', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'RewardPaid', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'RewardsDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Staked', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'user', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'Withdrawn', - type: 'event', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'earned', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'exit', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'getReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'getRewardForDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastPauseTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastTimeRewardApplicable', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'lastUpdateTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'notifyRewardAmount', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'paused', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'periodFinish', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'tokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'tokenAmount', - type: 'uint256', - }, - ], - name: 'recoverERC20', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardPerToken', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardPerTokenStored', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'rewards', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsDistribution', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rewardsToken', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: '_paused', - type: 'bool', - }, - ], - name: 'setPaused', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_rewardsDistribution', - type: 'address', - }, - ], - name: 'setRewardsDistribution', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rewardsDuration', - type: 'uint256', - }, - ], - name: 'setRewardsDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'stake', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'stakingToken', - outputs: [ - { - internalType: 'contract IERC20', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'userRewardPerTokenPaid', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'withdraw', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_rewardsDistribution", + type: "address", + }, + { + internalType: "address", + name: "_rewardsToken", + type: "address", + }, + { + internalType: "address", + name: "_stakingToken", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "isPaused", + type: "bool", + }, + ], + name: "PauseChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "token", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Recovered", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardAdded", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "RewardPaid", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "RewardsDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Staked", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "user", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "Withdrawn", + type: "event", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "earned", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "exit", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "getReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "getRewardForDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastPauseTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastTimeRewardApplicable", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "lastUpdateTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "notifyRewardAmount", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "paused", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "periodFinish", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "tokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "tokenAmount", + type: "uint256", + }, + ], + name: "recoverERC20", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardPerToken", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardPerTokenStored", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "rewards", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsDistribution", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rewardsToken", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "_paused", + type: "bool", + }, + ], + name: "setPaused", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_rewardsDistribution", + type: "address", + }, + ], + name: "setRewardsDistribution", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rewardsDuration", + type: "uint256", + }, + ], + name: "setRewardsDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "stake", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "stakingToken", + outputs: [ + { + internalType: "contract IERC20", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "userRewardPerTokenPaid", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "withdraw", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class StakingRewards__factory { - static readonly abi = _abi - static createInterface(): StakingRewardsInterface { - return new utils.Interface(_abi) as StakingRewardsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): StakingRewards { - return new Contract(address, _abi, signerOrProvider) as StakingRewards - } + static readonly abi = _abi; + static createInterface(): StakingRewardsInterface { + return new utils.Interface(_abi) as StakingRewardsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): StakingRewards { + return new Contract(address, _abi, signerOrProvider) as StakingRewards; + } } diff --git a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts index e1953394c4..67e0bbae89 100644 --- a/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SupplySchedule__factory.ts @@ -2,656 +2,662 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SupplySchedule, SupplyScheduleInterface } from '../SupplySchedule' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SupplySchedule, + SupplyScheduleInterface, +} from "../SupplySchedule"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'KwentaUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRewardAmount', - type: 'uint256', - }, - ], - name: 'MinterRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'StakingRewardsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'supplyMinted', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'numberOfWeeksIssued', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'lastMintEvent', - type: 'uint256', - }, - ], - name: 'SupplyMinted', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPercentage', - type: 'uint256', - }, - ], - name: 'TradingRewardsDiversionUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newAddress', - type: 'address', - }, - ], - name: 'TradingRewardsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'treasuryDAO', - type: 'address', - }, - ], - name: 'TreasuryDAOSet', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPercentage', - type: 'uint256', - }, - ], - name: 'TreasuryDiversionUpdated', - type: 'event', - }, - { - inputs: [], - name: 'DECAY_RATE', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'INITIAL_SUPPLY', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'INITIAL_WEEKLY_SUPPLY', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MAX_MINTER_REWARD', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MINT_BUFFER', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'MINT_PERIOD_DURATION', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'SUPPLY_DECAY_END', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'SUPPLY_DECAY_START', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'TERMINAL_SUPPLY_RATE_ANNUAL', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'inflationStartDate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'isMintable', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'kwenta', - outputs: [ - { - internalType: 'contract IKwenta', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'lastMintEvent', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'mint', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'mintableSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'minterReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract IKwenta', - name: '_kwenta', - type: 'address', - }, - ], - name: 'setKwenta', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'setMinterReward', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_stakingRewards', - type: 'address', - }, - ], - name: 'setStakingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_tradingRewards', - type: 'address', - }, - ], - name: 'setTradingRewards', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_tradingRewardsDiversion', - type: 'uint256', - }, - ], - name: 'setTradingRewardsDiversion', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_treasuryDAO', - type: 'address', - }, - ], - name: 'setTreasuryDAO', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: '_treasuryDiversion', - type: 'uint256', - }, - ], - name: 'setTreasuryDiversion', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'stakingRewards', - outputs: [ - { - internalType: 'contract IStakingRewards', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'totalSupply', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numOfWeeks', - type: 'uint256', - }, - ], - name: 'terminalInflationSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'pure', - type: 'function', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'counter', - type: 'uint256', - }, - ], - name: 'tokenDecaySupplyForWeek', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'pure', - type: 'function', - }, - { - inputs: [], - name: 'tradingRewards', - outputs: [ - { - internalType: 'contract IMultipleMerkleDistributor', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'tradingRewardsDiversion', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDAO', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'treasuryDiversion', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'weekCounter', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'weeksSinceLastIssuance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "KwentaUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRewardAmount", + type: "uint256", + }, + ], + name: "MinterRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "StakingRewardsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "supplyMinted", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "numberOfWeeksIssued", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "lastMintEvent", + type: "uint256", + }, + ], + name: "SupplyMinted", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPercentage", + type: "uint256", + }, + ], + name: "TradingRewardsDiversionUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newAddress", + type: "address", + }, + ], + name: "TradingRewardsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "treasuryDAO", + type: "address", + }, + ], + name: "TreasuryDAOSet", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPercentage", + type: "uint256", + }, + ], + name: "TreasuryDiversionUpdated", + type: "event", + }, + { + inputs: [], + name: "DECAY_RATE", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "INITIAL_SUPPLY", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "INITIAL_WEEKLY_SUPPLY", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MAX_MINTER_REWARD", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINT_BUFFER", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "MINT_PERIOD_DURATION", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "SUPPLY_DECAY_END", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "SUPPLY_DECAY_START", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "TERMINAL_SUPPLY_RATE_ANNUAL", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "inflationStartDate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isMintable", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "kwenta", + outputs: [ + { + internalType: "contract IKwenta", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "lastMintEvent", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "mintableSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "minterReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IKwenta", + name: "_kwenta", + type: "address", + }, + ], + name: "setKwenta", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "setMinterReward", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_stakingRewards", + type: "address", + }, + ], + name: "setStakingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_tradingRewards", + type: "address", + }, + ], + name: "setTradingRewards", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_tradingRewardsDiversion", + type: "uint256", + }, + ], + name: "setTradingRewardsDiversion", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_treasuryDAO", + type: "address", + }, + ], + name: "setTreasuryDAO", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "_treasuryDiversion", + type: "uint256", + }, + ], + name: "setTreasuryDiversion", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "stakingRewards", + outputs: [ + { + internalType: "contract IStakingRewards", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "totalSupply", + type: "uint256", + }, + { + internalType: "uint256", + name: "numOfWeeks", + type: "uint256", + }, + ], + name: "terminalInflationSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "counter", + type: "uint256", + }, + ], + name: "tokenDecaySupplyForWeek", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [], + name: "tradingRewards", + outputs: [ + { + internalType: "contract IMultipleMerkleDistributor", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "tradingRewardsDiversion", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDAO", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "treasuryDiversion", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "weekCounter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "weeksSinceLastIssuance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class SupplySchedule__factory { - static readonly abi = _abi - static createInterface(): SupplyScheduleInterface { - return new utils.Interface(_abi) as SupplyScheduleInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SupplySchedule { - return new Contract(address, _abi, signerOrProvider) as SupplySchedule - } + static readonly abi = _abi; + static createInterface(): SupplyScheduleInterface { + return new utils.Interface(_abi) as SupplyScheduleInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SupplySchedule { + return new Contract(address, _abi, signerOrProvider) as SupplySchedule; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts index 747d89f3da..d33d0b0dad 100644 --- a/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthRedeemer__factory.ts @@ -2,319 +2,322 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthRedeemer, SynthRedeemerInterface } from '../SynthRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthRedeemer, SynthRedeemerInterface } from "../SynthRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'synth', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'rateToRedeem', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'totalSynthSupply', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'supplyInsUSD', - type: 'uint256', - }, - ], - name: 'SynthDeprecated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'synth', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountOfSynth', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountInsUSD', - type: 'uint256', - }, - ], - name: 'SynthRedeemed', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: 'balanceInsUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'uint256', - name: 'rateToRedeem', - type: 'uint256', - }, - ], - name: 'deprecate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - ], - name: 'redeem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20[]', - name: 'synthProxies', - type: 'address[]', - }, - ], - name: 'redeemAll', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amountOfSynth', - type: 'uint256', - }, - ], - name: 'redeemPartial', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'redemptions', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'contract IERC20', - name: 'synthProxy', - type: 'address', - }, - ], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: 'supplyInsUSD', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "synth", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "rateToRedeem", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "totalSynthSupply", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "supplyInsUSD", + type: "uint256", + }, + ], + name: "SynthDeprecated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "synth", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountOfSynth", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amountInsUSD", + type: "uint256", + }, + ], + name: "SynthRedeemed", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balanceInsUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "uint256", + name: "rateToRedeem", + type: "uint256", + }, + ], + name: "deprecate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + ], + name: "redeem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20[]", + name: "synthProxies", + type: "address[]", + }, + ], + name: "redeemAll", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + { + internalType: "uint256", + name: "amountOfSynth", + type: "uint256", + }, + ], + name: "redeemPartial", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "redemptions", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "contract IERC20", + name: "synthProxy", + type: "address", + }, + ], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "supplyInsUSD", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SynthRedeemer__factory { - static readonly abi = _abi - static createInterface(): SynthRedeemerInterface { - return new utils.Interface(_abi) as SynthRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthRedeemer { - return new Contract(address, _abi, signerOrProvider) as SynthRedeemer - } + static readonly abi = _abi; + static createInterface(): SynthRedeemerInterface { + return new utils.Interface(_abi) as SynthRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthRedeemer { + return new Contract(address, _abi, signerOrProvider) as SynthRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts index f44c3ead8d..ed9e6d6e7f 100644 --- a/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthSwap__factory.ts @@ -2,333 +2,336 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthSwap, SynthSwapInterface } from '../SynthSwap' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthSwap, SynthSwapInterface } from "../SynthSwap"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_sUSD', - type: 'address', - }, - { - internalType: 'address', - name: '_aggregationRouterV4', - type: 'address', - }, - { - internalType: 'address', - name: '_addressResolver', - type: 'address', - }, - { - internalType: 'address', - name: '_volumeRewards', - type: 'address', - }, - { - internalType: 'address', - name: '_treasury', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'Received', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'SwapInto', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - name: 'SwapOutOf', - type: 'event', - }, - { - inputs: [], - name: 'acceptOwnership', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'contract IERC20', - name: 'token', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'rescueFunds', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_destSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'swapInto', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_sourceSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'swapOutOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_destSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_sourceTokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: '_amount', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'uniswapSwapInto', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'payable', - type: 'function', - }, - { - inputs: [ - { - internalType: 'bytes32', - name: '_sourceSynthCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_destTokenAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: '_amountOfSynth', - type: 'uint256', - }, - { - internalType: 'uint256', - name: '_expectedAmountOfSUSDFromSwap', - type: 'uint256', - }, - { - internalType: 'bytes', - name: '_data', - type: 'bytes', - }, - ], - name: 'uniswapSwapOutOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - stateMutability: 'nonpayable', - type: 'function', - }, - { - stateMutability: 'payable', - type: 'receive', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_sUSD", + type: "address", + }, + { + internalType: "address", + name: "_aggregationRouterV4", + type: "address", + }, + { + internalType: "address", + name: "_addressResolver", + type: "address", + }, + { + internalType: "address", + name: "_volumeRewards", + type: "address", + }, + { + internalType: "address", + name: "_treasury", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "Received", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "SwapInto", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + name: "SwapOutOf", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "contract IERC20", + name: "token", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "rescueFunds", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_destSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "swapInto", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_sourceSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_sourceAmount", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "swapOutOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_destSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_sourceTokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "_amount", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "uniswapSwapInto", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes32", + name: "_sourceSynthCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_destTokenAddress", + type: "address", + }, + { + internalType: "uint256", + name: "_amountOfSynth", + type: "uint256", + }, + { + internalType: "uint256", + name: "_expectedAmountOfSUSDFromSwap", + type: "uint256", + }, + { + internalType: "bytes", + name: "_data", + type: "bytes", + }, + ], + name: "uniswapSwapOutOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, +] as const; export class SynthSwap__factory { - static readonly abi = _abi - static createInterface(): SynthSwapInterface { - return new utils.Interface(_abi) as SynthSwapInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthSwap { - return new Contract(address, _abi, signerOrProvider) as SynthSwap - } + static readonly abi = _abi; + static createInterface(): SynthSwapInterface { + return new utils.Interface(_abi) as SynthSwapInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthSwap { + return new Contract(address, _abi, signerOrProvider) as SynthSwap; + } } diff --git a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts index d4c68ad93d..640e7cf4d0 100644 --- a/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SynthUtil__factory.ts @@ -2,148 +2,151 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SynthUtil, SynthUtilInterface } from '../SynthUtil' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SynthUtil, SynthUtilInterface } from "../SynthUtil"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: 'resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - constant: true, - inputs: [], - name: 'addressResolverProxy', - outputs: [ - { - internalType: 'contract IAddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'synthsBalances', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'synthsRates', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'synthsTotalSupplies', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - { - internalType: 'uint256[]', - name: '', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalSynthsInKey', - outputs: [ - { - internalType: 'uint256', - name: 'total', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + constant: true, + inputs: [], + name: "addressResolverProxy", + outputs: [ + { + internalType: "contract IAddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "synthsBalances", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "synthsRates", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "synthsTotalSupplies", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + { + internalType: "uint256[]", + name: "", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalSynthsInKey", + outputs: [ + { + internalType: "uint256", + name: "total", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SynthUtil__factory { - static readonly abi = _abi - static createInterface(): SynthUtilInterface { - return new utils.Interface(_abi) as SynthUtilInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SynthUtil { - return new Contract(address, _abi, signerOrProvider) as SynthUtil - } + static readonly abi = _abi; + static createInterface(): SynthUtilInterface { + return new utils.Interface(_abi) as SynthUtilInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SynthUtil { + return new Contract(address, _abi, signerOrProvider) as SynthUtil; + } } diff --git a/packages/sdk/src/contracts/types/factories/Synth__factory.ts b/packages/sdk/src/contracts/types/factories/Synth__factory.ts index 0c1d26cad9..7a9411a1c5 100644 --- a/packages/sdk/src/contracts/types/factories/Synth__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synth__factory.ts @@ -2,812 +2,812 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Synth, SynthInterface } from '../Synth' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Synth, SynthInterface } from "../Synth"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - { - internalType: 'string', - name: '_tokenName', - type: 'string', - }, - { - internalType: 'string', - name: '_tokenSymbol', - type: 'string', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_totalSupply', - type: 'uint256', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Burned', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Issued', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'proxyAddress', - type: 'address', - }, - ], - name: 'ProxyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newTokenState', - type: 'address', - }, - ], - name: 'TokenStateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'DECIMALS', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'FEE_ADDRESS', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burn', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'currencyKey', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issue', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'messageSender', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'proxy', - outputs: [ - { - internalType: 'contract Proxy', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'setMessageSender', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - ], - name: 'setProxy', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - ], - name: 'setTokenState', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'setTotalSupply', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tokenState', - outputs: [ - { - internalType: 'contract TokenState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferAndSettle', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFromAndSettle', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'transferableSynths', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + { + internalType: "string", + name: "_tokenName", + type: "string", + }, + { + internalType: "string", + name: "_tokenSymbol", + type: "string", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_totalSupply", + type: "uint256", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Burned", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Issued", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "proxyAddress", + type: "address", + }, + ], + name: "ProxyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newTokenState", + type: "address", + }, + ], + name: "TokenStateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "DECIMALS", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "FEE_ADDRESS", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "currencyKey", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issue", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "messageSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "proxy", + outputs: [ + { + internalType: "contract Proxy", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "setMessageSender", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + ], + name: "setProxy", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + ], + name: "setTokenState", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "setTotalSupply", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tokenState", + outputs: [ + { + internalType: "contract TokenState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferAndSettle", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFromAndSettle", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "transferableSynths", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Synth__factory { - static readonly abi = _abi - static createInterface(): SynthInterface { - return new utils.Interface(_abi) as SynthInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Synth { - return new Contract(address, _abi, signerOrProvider) as Synth - } + static readonly abi = _abi; + static createInterface(): SynthInterface { + return new utils.Interface(_abi) as SynthInterface; + } + static connect(address: string, signerOrProvider: Signer | Provider): Synth { + return new Contract(address, _abi, signerOrProvider) as Synth; + } } diff --git a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts index 9d6766b350..8992e24beb 100644 --- a/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts +++ b/packages/sdk/src/contracts/types/factories/Synthetix__factory.ts @@ -2,1908 +2,1911 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { Synthetix, SynthetixInterface } from '../Synthetix' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { Synthetix, SynthetixInterface } from "../Synthetix"; const _abi = [ - { - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'uint256', - name: '_totalSupply', - type: 'uint256', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'snxRedeemed', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amountLiquidated', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'liquidator', - type: 'address', - }, - ], - name: 'AccountLiquidated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Approval', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'AtomicSynthExchange', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'ExchangeRebate', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'ExchangeReclaim', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'ExchangeTracking', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'proxyAddress', - type: 'address', - }, - ], - name: 'ProxyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - indexed: false, - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'SynthExchange', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newTokenState', - type: 'address', - }, - ], - name: 'TokenStateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'from', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'to', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'Transfer', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'DECIMALS', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'TOKEN_NAME', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'TOKEN_SYMBOL', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'owner', - type: 'address', - }, - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - ], - name: 'allowance', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'anySynthOrSNXRateIsInvalid', - outputs: [ - { - internalType: 'bool', - name: 'anyRateInvalid', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'spender', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'approve', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'availableCurrencyKeys', - outputs: [ - { - internalType: 'bytes32[]', - name: '', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'availableSynthCount', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'uint256', - name: 'index', - type: 'uint256', - }, - ], - name: 'availableSynths', - outputs: [ - { - internalType: 'contract ISynth', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'balanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'burnSecondary', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burnSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'burnForAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'burnSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'burnSynthsToTarget', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'burnForAddress', - type: 'address', - }, - ], - name: 'burnSynthsToTargetOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'collateral', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: '_issuer', - type: 'address', - }, - ], - name: 'collateralisationRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'debtBalanceOf', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'decimals', - outputs: [ - { - internalType: 'uint8', - name: '', - type: 'uint8', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'emitAtomicSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'emitExchangeRebate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'emitExchangeReclaim', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'fee', - type: 'uint256', - }, - ], - name: 'emitExchangeTracking', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'fromCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'fromAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'toCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'toAmount', - type: 'uint256', - }, - { - internalType: 'address', - name: 'toAddress', - type: 'address', - }, - ], - name: 'emitSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'exchange', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'minAmount', - type: 'uint256', - }, - ], - name: 'exchangeAtomically', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'exchangeOnBehalf', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'exchangeForAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeOnBehalfWithTracking', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithTracking', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'rewardAddress', - type: 'address', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithTrackingForInitiator', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'sourceAmount', - type: 'uint256', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'trackingCode', - type: 'bytes32', - }, - ], - name: 'exchangeWithVirtual', - outputs: [ - { - internalType: 'uint256', - name: 'amountReceived', - type: 'uint256', - }, - { - internalType: 'contract IVirtualSynth', - name: 'vSynth', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'getFirstNonZeroEscrowIndex', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'isWaitingPeriod', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'issueMaxSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'issueForAddress', - type: 'address', - }, - ], - name: 'issueMaxSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issueSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'issueForAddress', - type: 'address', - }, - { - internalType: 'uint256', - name: 'amount', - type: 'uint256', - }, - ], - name: 'issueSynthsOnBehalf', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'liquidateDelinquentAccount', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'uint256', - name: 'escrowStartIndex', - type: 'uint256', - }, - ], - name: 'liquidateDelinquentAccountEscrowIndex', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'liquidateSelf', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'maxIssuableSynths', - outputs: [ - { - internalType: 'uint256', - name: 'maxIssuable', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'messageSender', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'migrateEscrowBalanceToRewardEscrowV2', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'migrateEscrowContractBalance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'mint', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'mintSecondary', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - name: 'mintSecondaryRewards', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'name', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'proxy', - outputs: [ - { - internalType: 'contract Proxy', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'remainingIssuableSynths', - outputs: [ - { - internalType: 'uint256', - name: 'maxIssuable', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'alreadyIssued', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'totalSystemDebt', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'sUSD', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'sender', - type: 'address', - }, - ], - name: 'setMessageSender', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address payable', - name: '_proxy', - type: 'address', - }, - ], - name: 'setProxy', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'contract TokenState', - name: '_tokenState', - type: 'address', - }, - ], - name: 'setTokenState', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'settle', - outputs: [ - { - internalType: 'uint256', - name: 'reclaimed', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'refunded', - type: 'uint256', - }, - { - internalType: 'uint256', - name: 'numEntriesSettled', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'symbol', - outputs: [ - { - internalType: 'string', - name: '', - type: 'string', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'synths', - outputs: [ - { - internalType: 'contract ISynth', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'synthAddress', - type: 'address', - }, - ], - name: 'synthsByAddress', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tokenState', - outputs: [ - { - internalType: 'contract TokenState', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalIssuedSynths', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'totalIssuedSynthsExcludeOtherCollateral', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'totalSupply', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transfer', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: 'from', - type: 'address', - }, - { - internalType: 'address', - name: 'to', - type: 'address', - }, - { - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'transferFrom', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'account', - type: 'address', - }, - ], - name: 'transferableSynthetix', - outputs: [ - { - internalType: 'uint256', - name: 'transferable', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "uint256", + name: "_totalSupply", + type: "uint256", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "snxRedeemed", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "amountLiquidated", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "liquidator", + type: "address", + }, + ], + name: "AccountLiquidated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "spender", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "AtomicSynthExchange", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "ExchangeRebate", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "ExchangeReclaim", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "ExchangeTracking", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "proxyAddress", + type: "address", + }, + ], + name: "ProxyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + indexed: false, + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "SynthExchange", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newTokenState", + type: "address", + }, + ], + name: "TokenStateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "DECIMALS", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "TOKEN_NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "TOKEN_SYMBOL", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "anySynthOrSNXRateIsInvalid", + outputs: [ + { + internalType: "bool", + name: "anyRateInvalid", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "spender", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "availableCurrencyKeys", + outputs: [ + { + internalType: "bytes32[]", + name: "", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "availableSynthCount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "availableSynths", + outputs: [ + { + internalType: "contract ISynth", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "burnSecondary", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burnSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "burnForAddress", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "burnSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "burnSynthsToTarget", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "burnForAddress", + type: "address", + }, + ], + name: "burnSynthsToTargetOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "collateral", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "_issuer", + type: "address", + }, + ], + name: "collateralisationRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "debtBalanceOf", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + internalType: "uint8", + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "emitAtomicSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "emitExchangeRebate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "emitExchangeReclaim", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "uint256", + name: "fee", + type: "uint256", + }, + ], + name: "emitExchangeTracking", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bytes32", + name: "fromCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "fromAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "toCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "toAmount", + type: "uint256", + }, + { + internalType: "address", + name: "toAddress", + type: "address", + }, + ], + name: "emitSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "exchange", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + { + internalType: "uint256", + name: "minAmount", + type: "uint256", + }, + ], + name: "exchangeAtomically", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "exchangeOnBehalf", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "exchangeForAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeOnBehalfWithTracking", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithTracking", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "rewardAddress", + type: "address", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithTrackingForInitiator", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "sourceAmount", + type: "uint256", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "trackingCode", + type: "bytes32", + }, + ], + name: "exchangeWithVirtual", + outputs: [ + { + internalType: "uint256", + name: "amountReceived", + type: "uint256", + }, + { + internalType: "contract IVirtualSynth", + name: "vSynth", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "getFirstNonZeroEscrowIndex", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "isWaitingPeriod", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "issueMaxSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "issueForAddress", + type: "address", + }, + ], + name: "issueMaxSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issueSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "issueForAddress", + type: "address", + }, + { + internalType: "uint256", + name: "amount", + type: "uint256", + }, + ], + name: "issueSynthsOnBehalf", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "liquidateDelinquentAccount", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "uint256", + name: "escrowStartIndex", + type: "uint256", + }, + ], + name: "liquidateDelinquentAccountEscrowIndex", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "liquidateSelf", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "maxIssuableSynths", + outputs: [ + { + internalType: "uint256", + name: "maxIssuable", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "messageSender", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "migrateEscrowBalanceToRewardEscrowV2", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "migrateEscrowContractBalance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "mint", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "mintSecondary", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + name: "mintSecondaryRewards", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "proxy", + outputs: [ + { + internalType: "contract Proxy", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "remainingIssuableSynths", + outputs: [ + { + internalType: "uint256", + name: "maxIssuable", + type: "uint256", + }, + { + internalType: "uint256", + name: "alreadyIssued", + type: "uint256", + }, + { + internalType: "uint256", + name: "totalSystemDebt", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "sUSD", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + ], + name: "setMessageSender", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address payable", + name: "_proxy", + type: "address", + }, + ], + name: "setProxy", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "contract TokenState", + name: "_tokenState", + type: "address", + }, + ], + name: "setTokenState", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "settle", + outputs: [ + { + internalType: "uint256", + name: "reclaimed", + type: "uint256", + }, + { + internalType: "uint256", + name: "refunded", + type: "uint256", + }, + { + internalType: "uint256", + name: "numEntriesSettled", + type: "uint256", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "synths", + outputs: [ + { + internalType: "contract ISynth", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "synthAddress", + type: "address", + }, + ], + name: "synthsByAddress", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tokenState", + outputs: [ + { + internalType: "contract TokenState", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalIssuedSynths", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "totalIssuedSynthsExcludeOtherCollateral", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "account", + type: "address", + }, + ], + name: "transferableSynthetix", + outputs: [ + { + internalType: "uint256", + name: "transferable", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class Synthetix__factory { - static readonly abi = _abi - static createInterface(): SynthetixInterface { - return new utils.Interface(_abi) as SynthetixInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): Synthetix { - return new Contract(address, _abi, signerOrProvider) as Synthetix - } + static readonly abi = _abi; + static createInterface(): SynthetixInterface { + return new utils.Interface(_abi) as SynthetixInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Synthetix { + return new Contract(address, _abi, signerOrProvider) as Synthetix; + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts index 5252cd6b51..723fd00b3c 100644 --- a/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemSettings__factory.ts @@ -2,2139 +2,2145 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SystemSettings, SystemSettingsInterface } from '../SystemSettings' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + SystemSettings, + SystemSettingsInterface, +} from "../SystemSettings"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - { - internalType: 'address', - name: '_resolver', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'flags', - type: 'address', - }, - ], - name: 'AggregatorWarningFlagsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'equivalent', - type: 'address', - }, - ], - name: 'AtomicEquivalentForDexPricingUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newExchangeFeeRate', - type: 'uint256', - }, - ], - name: 'AtomicExchangeFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newMaxVolume', - type: 'uint256', - }, - ], - name: 'AtomicMaxVolumePerBlockUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newWindow', - type: 'uint256', - }, - ], - name: 'AtomicTwapWindowUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newVolatilityConsiderationWindow', - type: 'uint256', - }, - ], - name: 'AtomicVolatilityConsiderationWindowUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newVolatilityUpdateThreshold', - type: 'uint256', - }, - ], - name: 'AtomicVolatilityUpdateThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'name', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'address', - name: 'destination', - type: 'address', - }, - ], - name: 'CacheUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'collapseFeeRate', - type: 'uint256', - }, - ], - name: 'CollapseFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'value', - type: 'uint256', - }, - ], - name: 'CrossChainSynthTransferEnabledUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: 'gasLimitType', - type: 'uint8', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newLimit', - type: 'uint256', - }, - ], - name: 'CrossDomainMessageGasLimitChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'debtSnapshotStaleTime', - type: 'uint256', - }, - ], - name: 'DebtSnapshotStaleTimeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - ], - name: 'EtherWrapperBurnFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'maxETH', - type: 'uint256', - }, - ], - name: 'EtherWrapperMaxETHUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rate', - type: 'uint256', - }, - ], - name: 'EtherWrapperMintFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeRounds', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeRoundsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeThreshold', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'dynamicFeeWeightDecay', - type: 'uint256', - }, - ], - name: 'ExchangeDynamicFeeWeightDecayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'newExchangeFeeRate', - type: 'uint256', - }, - ], - name: 'ExchangeFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'maxDynamicFee', - type: 'uint256', - }, - ], - name: 'ExchangeMaxDynamicFeeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newFeePeriodDuration', - type: 'uint256', - }, - ], - name: 'FeePeriodDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newReward', - type: 'uint256', - }, - ], - name: 'FlagRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'interactionDelay', - type: 'uint256', - }, - ], - name: 'InteractionDelayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRatio', - type: 'uint256', - }, - ], - name: 'IssuanceRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newReward', - type: 'uint256', - }, - ], - name: 'LiquidateRewardUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDelay', - type: 'uint256', - }, - ], - name: 'LiquidationDelayUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newDuration', - type: 'uint256', - }, - ], - name: 'LiquidationEscrowDurationUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'LiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newRatio', - type: 'uint256', - }, - ], - name: 'LiquidationRatioUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'minimumStakeTime', - type: 'uint256', - }, - ], - name: 'MinimumStakeTimeUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'threshold', - type: 'uint256', - }, - ], - name: 'PriceDeviationThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'synthKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'PureChainlinkPriceForAtomicSwapsEnabledUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'rateStalePeriod', - type: 'uint256', - }, - ], - name: 'RateStalePeriodUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'SelfLiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newPenalty', - type: 'uint256', - }, - ], - name: 'SnxLiquidationPenaltyUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'newTargetThreshold', - type: 'uint256', - }, - ], - name: 'TargetThresholdUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bool', - name: 'enabled', - type: 'bool', - }, - ], - name: 'TradingRewardsEnabled', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'waitingPeriodSecs', - type: 'uint256', - }, - ], - name: 'WaitingPeriodSecsUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'rate', - type: 'int256', - }, - ], - name: 'WrapperBurnFeeRateUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'maxTokenAmount', - type: 'uint256', - }, - ], - name: 'WrapperMaxTokenAmountUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - { - indexed: false, - internalType: 'int256', - name: 'rate', - type: 'int256', - }, - ], - name: 'WrapperMintFeeRateUpdated', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'aggregatorWarningFlags', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicEquivalentForDexPricing', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicExchangeFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'atomicMaxVolumePerBlock', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'atomicTwapWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicVolatilityConsiderationWindow', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'atomicVolatilityUpdateThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'collateral', - type: 'address', - }, - ], - name: 'collapseFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'crossChainSynthTransferEnabled', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: 'gasLimitType', - type: 'uint8', - }, - ], - name: 'crossDomainMessageGasLimit', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'debtSnapshotStaleTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperBurnFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperMaxETH', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'etherWrapperMintFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeRounds', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeDynamicFeeWeightDecay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'exchangeFeeRate', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeMaxDynamicFee', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'feePeriodDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'flagReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'collateral', - type: 'address', - }, - ], - name: 'interactionDelay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isResolverCached', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'issuanceRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidateReward', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationDelay', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationEscrowDuration', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'liquidationRatio', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'minimumStakeTime', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'priceDeviationThresholdFactor', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'pureChainlinkPriceForAtomicSwapsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'rateStalePeriod', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'rebuildCache', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolver', - outputs: [ - { - internalType: 'contract AddressResolver', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'resolverAddressesRequired', - outputs: [ - { - internalType: 'bytes32[]', - name: 'addresses', - type: 'bytes32[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'selfLiquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_flags', - type: 'address', - }, - ], - name: 'setAggregatorWarningFlags', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'address', - name: '_equivalent', - type: 'address', - }, - ], - name: 'setAtomicEquivalentForDexPricing', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_exchangeFeeRate', - type: 'uint256', - }, - ], - name: 'setAtomicExchangeFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_maxVolume', - type: 'uint256', - }, - ], - name: 'setAtomicMaxVolumePerBlock', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_window', - type: 'uint256', - }, - ], - name: 'setAtomicTwapWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_window', - type: 'uint256', - }, - ], - name: 'setAtomicVolatilityConsiderationWindow', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_threshold', - type: 'uint256', - }, - ], - name: 'setAtomicVolatilityUpdateThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_collateral', - type: 'address', - }, - { - internalType: 'uint256', - name: '_collapseFeeRate', - type: 'uint256', - }, - ], - name: 'setCollapseFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: '_value', - type: 'uint256', - }, - ], - name: 'setCrossChainSynthTransferEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'enum MixinSystemSettings.CrossDomainMessageGasLimits', - name: '_gasLimitType', - type: 'uint8', - }, - { - internalType: 'uint256', - name: '_crossDomainMessageGasLimit', - type: 'uint256', - }, - ], - name: 'setCrossDomainMessageGasLimit', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_seconds', - type: 'uint256', - }, - ], - name: 'setDebtSnapshotStaleTime', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rate', - type: 'uint256', - }, - ], - name: 'setEtherWrapperBurnFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_maxETH', - type: 'uint256', - }, - ], - name: 'setEtherWrapperMaxETH', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_rate', - type: 'uint256', - }, - ], - name: 'setEtherWrapperMintFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'rounds', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeRounds', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'threshold', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'weightDecay', - type: 'uint256', - }, - ], - name: 'setExchangeDynamicFeeWeightDecay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synthKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256[]', - name: 'exchangeFeeRates', - type: 'uint256[]', - }, - ], - name: 'setExchangeFeeRateForSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'maxFee', - type: 'uint256', - }, - ], - name: 'setExchangeMaxDynamicFee', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_feePeriodDuration', - type: 'uint256', - }, - ], - name: 'setFeePeriodDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'setFlagReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_collateral', - type: 'address', - }, - { - internalType: 'uint256', - name: '_interactionDelay', - type: 'uint256', - }, - ], - name: 'setInteractionDelay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'ratio', - type: 'uint256', - }, - ], - name: 'setIssuanceRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reward', - type: 'uint256', - }, - ], - name: 'setLiquidateReward', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'time', - type: 'uint256', - }, - ], - name: 'setLiquidationDelay', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'duration', - type: 'uint256', - }, - ], - name: 'setLiquidationEscrowDuration', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_liquidationRatio', - type: 'uint256', - }, - ], - name: 'setLiquidationRatio', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_seconds', - type: 'uint256', - }, - ], - name: 'setMinimumStakeTime', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_priceDeviationThresholdFactor', - type: 'uint256', - }, - ], - name: 'setPriceDeviationThresholdFactor', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: '_currencyKey', - type: 'bytes32', - }, - { - internalType: 'bool', - name: '_enabled', - type: 'bool', - }, - ], - name: 'setPureChainlinkPriceForAtomicSwapsEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'period', - type: 'uint256', - }, - ], - name: 'setRateStalePeriod', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setSelfLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'penalty', - type: 'uint256', - }, - ], - name: 'setSnxLiquidationPenalty', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'percent', - type: 'uint256', - }, - ], - name: 'setTargetThreshold', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bool', - name: '_tradingRewardsEnabled', - type: 'bool', - }, - ], - name: 'setTradingRewardsEnabled', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: '_waitingPeriodSecs', - type: 'uint256', - }, - ], - name: 'setWaitingPeriodSecs', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'int256', - name: '_rate', - type: 'int256', - }, - ], - name: 'setWrapperBurnFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'uint256', - name: '_maxTokenAmount', - type: 'uint256', - }, - ], - name: 'setWrapperMaxTokenAmount', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_wrapper', - type: 'address', - }, - { - internalType: 'int256', - name: '_rate', - type: 'int256', - }, - ], - name: 'setWrapperMintFeeRate', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'snxLiquidationPenalty', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'targetThreshold', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'tradingRewardsEnabled', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'waitingPeriodSecs', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperBurnFeeRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperMaxTokenAmount', - outputs: [ - { - internalType: 'uint256', - name: '', - type: 'uint256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'address', - name: 'wrapper', - type: 'address', - }, - ], - name: 'wrapperMintFeeRate', - outputs: [ - { - internalType: 'int256', - name: '', - type: 'int256', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + { + internalType: "address", + name: "_resolver", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "flags", + type: "address", + }, + ], + name: "AggregatorWarningFlagsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "equivalent", + type: "address", + }, + ], + name: "AtomicEquivalentForDexPricingUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newExchangeFeeRate", + type: "uint256", + }, + ], + name: "AtomicExchangeFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newMaxVolume", + type: "uint256", + }, + ], + name: "AtomicMaxVolumePerBlockUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newWindow", + type: "uint256", + }, + ], + name: "AtomicTwapWindowUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newVolatilityConsiderationWindow", + type: "uint256", + }, + ], + name: "AtomicVolatilityConsiderationWindowUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newVolatilityUpdateThreshold", + type: "uint256", + }, + ], + name: "AtomicVolatilityUpdateThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "name", + type: "bytes32", + }, + { + indexed: false, + internalType: "address", + name: "destination", + type: "address", + }, + ], + name: "CacheUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "collapseFeeRate", + type: "uint256", + }, + ], + name: "CollapseFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "value", + type: "uint256", + }, + ], + name: "CrossChainSynthTransferEnabledUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "gasLimitType", + type: "uint8", + }, + { + indexed: false, + internalType: "uint256", + name: "newLimit", + type: "uint256", + }, + ], + name: "CrossDomainMessageGasLimitChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "debtSnapshotStaleTime", + type: "uint256", + }, + ], + name: "DebtSnapshotStaleTimeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rate", + type: "uint256", + }, + ], + name: "EtherWrapperBurnFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "maxETH", + type: "uint256", + }, + ], + name: "EtherWrapperMaxETHUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rate", + type: "uint256", + }, + ], + name: "EtherWrapperMintFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeRounds", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeRoundsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeThreshold", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "dynamicFeeWeightDecay", + type: "uint256", + }, + ], + name: "ExchangeDynamicFeeWeightDecayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "newExchangeFeeRate", + type: "uint256", + }, + ], + name: "ExchangeFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "maxDynamicFee", + type: "uint256", + }, + ], + name: "ExchangeMaxDynamicFeeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newFeePeriodDuration", + type: "uint256", + }, + ], + name: "FeePeriodDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newReward", + type: "uint256", + }, + ], + name: "FlagRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "interactionDelay", + type: "uint256", + }, + ], + name: "InteractionDelayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRatio", + type: "uint256", + }, + ], + name: "IssuanceRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newReward", + type: "uint256", + }, + ], + name: "LiquidateRewardUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDelay", + type: "uint256", + }, + ], + name: "LiquidationDelayUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newDuration", + type: "uint256", + }, + ], + name: "LiquidationEscrowDurationUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "LiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newRatio", + type: "uint256", + }, + ], + name: "LiquidationRatioUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "minimumStakeTime", + type: "uint256", + }, + ], + name: "MinimumStakeTimeUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "threshold", + type: "uint256", + }, + ], + name: "PriceDeviationThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "synthKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "PureChainlinkPriceForAtomicSwapsEnabledUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "rateStalePeriod", + type: "uint256", + }, + ], + name: "RateStalePeriodUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "SelfLiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newPenalty", + type: "uint256", + }, + ], + name: "SnxLiquidationPenaltyUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "newTargetThreshold", + type: "uint256", + }, + ], + name: "TargetThresholdUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "enabled", + type: "bool", + }, + ], + name: "TradingRewardsEnabled", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "waitingPeriodSecs", + type: "uint256", + }, + ], + name: "WaitingPeriodSecsUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "rate", + type: "int256", + }, + ], + name: "WrapperBurnFeeRateUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "maxTokenAmount", + type: "uint256", + }, + ], + name: "WrapperMaxTokenAmountUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "wrapper", + type: "address", + }, + { + indexed: false, + internalType: "int256", + name: "rate", + type: "int256", + }, + ], + name: "WrapperMintFeeRateUpdated", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "aggregatorWarningFlags", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicEquivalentForDexPricing", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicExchangeFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "atomicMaxVolumePerBlock", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "atomicTwapWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicVolatilityConsiderationWindow", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "atomicVolatilityUpdateThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "collateral", + type: "address", + }, + ], + name: "collapseFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "crossChainSynthTransferEnabled", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "gasLimitType", + type: "uint8", + }, + ], + name: "crossDomainMessageGasLimit", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "debtSnapshotStaleTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperBurnFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperMaxETH", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "etherWrapperMintFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeRounds", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeDynamicFeeWeightDecay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "exchangeFeeRate", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeMaxDynamicFee", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "feePeriodDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "flagReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "collateral", + type: "address", + }, + ], + name: "interactionDelay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isResolverCached", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "issuanceRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidateReward", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationDelay", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationEscrowDuration", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "liquidationRatio", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "minimumStakeTime", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "priceDeviationThresholdFactor", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "pureChainlinkPriceForAtomicSwapsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "rateStalePeriod", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "rebuildCache", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolver", + outputs: [ + { + internalType: "contract AddressResolver", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "resolverAddressesRequired", + outputs: [ + { + internalType: "bytes32[]", + name: "addresses", + type: "bytes32[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "selfLiquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_flags", + type: "address", + }, + ], + name: "setAggregatorWarningFlags", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "address", + name: "_equivalent", + type: "address", + }, + ], + name: "setAtomicEquivalentForDexPricing", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_exchangeFeeRate", + type: "uint256", + }, + ], + name: "setAtomicExchangeFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_maxVolume", + type: "uint256", + }, + ], + name: "setAtomicMaxVolumePerBlock", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_window", + type: "uint256", + }, + ], + name: "setAtomicTwapWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_window", + type: "uint256", + }, + ], + name: "setAtomicVolatilityConsiderationWindow", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_threshold", + type: "uint256", + }, + ], + name: "setAtomicVolatilityUpdateThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_collateral", + type: "address", + }, + { + internalType: "uint256", + name: "_collapseFeeRate", + type: "uint256", + }, + ], + name: "setCollapseFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "_value", + type: "uint256", + }, + ], + name: "setCrossChainSynthTransferEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "enum MixinSystemSettings.CrossDomainMessageGasLimits", + name: "_gasLimitType", + type: "uint8", + }, + { + internalType: "uint256", + name: "_crossDomainMessageGasLimit", + type: "uint256", + }, + ], + name: "setCrossDomainMessageGasLimit", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_seconds", + type: "uint256", + }, + ], + name: "setDebtSnapshotStaleTime", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rate", + type: "uint256", + }, + ], + name: "setEtherWrapperBurnFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_maxETH", + type: "uint256", + }, + ], + name: "setEtherWrapperMaxETH", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_rate", + type: "uint256", + }, + ], + name: "setEtherWrapperMintFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "rounds", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeRounds", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "threshold", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "weightDecay", + type: "uint256", + }, + ], + name: "setExchangeDynamicFeeWeightDecay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "synthKeys", + type: "bytes32[]", + }, + { + internalType: "uint256[]", + name: "exchangeFeeRates", + type: "uint256[]", + }, + ], + name: "setExchangeFeeRateForSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "maxFee", + type: "uint256", + }, + ], + name: "setExchangeMaxDynamicFee", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_feePeriodDuration", + type: "uint256", + }, + ], + name: "setFeePeriodDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "setFlagReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_collateral", + type: "address", + }, + { + internalType: "uint256", + name: "_interactionDelay", + type: "uint256", + }, + ], + name: "setInteractionDelay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "ratio", + type: "uint256", + }, + ], + name: "setIssuanceRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reward", + type: "uint256", + }, + ], + name: "setLiquidateReward", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + name: "setLiquidationDelay", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "duration", + type: "uint256", + }, + ], + name: "setLiquidationEscrowDuration", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_liquidationRatio", + type: "uint256", + }, + ], + name: "setLiquidationRatio", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_seconds", + type: "uint256", + }, + ], + name: "setMinimumStakeTime", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_priceDeviationThresholdFactor", + type: "uint256", + }, + ], + name: "setPriceDeviationThresholdFactor", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "_currencyKey", + type: "bytes32", + }, + { + internalType: "bool", + name: "_enabled", + type: "bool", + }, + ], + name: "setPureChainlinkPriceForAtomicSwapsEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "period", + type: "uint256", + }, + ], + name: "setRateStalePeriod", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setSelfLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "penalty", + type: "uint256", + }, + ], + name: "setSnxLiquidationPenalty", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "percent", + type: "uint256", + }, + ], + name: "setTargetThreshold", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bool", + name: "_tradingRewardsEnabled", + type: "bool", + }, + ], + name: "setTradingRewardsEnabled", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "_waitingPeriodSecs", + type: "uint256", + }, + ], + name: "setWaitingPeriodSecs", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "int256", + name: "_rate", + type: "int256", + }, + ], + name: "setWrapperBurnFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "uint256", + name: "_maxTokenAmount", + type: "uint256", + }, + ], + name: "setWrapperMaxTokenAmount", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_wrapper", + type: "address", + }, + { + internalType: "int256", + name: "_rate", + type: "int256", + }, + ], + name: "setWrapperMintFeeRate", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "snxLiquidationPenalty", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "targetThreshold", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "tradingRewardsEnabled", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "waitingPeriodSecs", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperBurnFeeRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperMaxTokenAmount", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "address", + name: "wrapper", + type: "address", + }, + ], + name: "wrapperMintFeeRate", + outputs: [ + { + internalType: "int256", + name: "", + type: "int256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, +] as const; export class SystemSettings__factory { - static readonly abi = _abi - static createInterface(): SystemSettingsInterface { - return new utils.Interface(_abi) as SystemSettingsInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SystemSettings { - return new Contract(address, _abi, signerOrProvider) as SystemSettings - } + static readonly abi = _abi; + static createInterface(): SystemSettingsInterface { + return new utils.Interface(_abi) as SystemSettingsInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SystemSettings { + return new Contract(address, _abi, signerOrProvider) as SystemSettings; + } } diff --git a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts index 633cffa7c5..55d7c02f4c 100644 --- a/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts +++ b/packages/sdk/src/contracts/types/factories/SystemStatus__factory.ts @@ -2,1291 +2,1294 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { SystemStatus, SystemStatusInterface } from '../SystemStatus' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { SystemStatus, SystemStatusInterface } from "../SystemStatus"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - payable: false, - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'bytes32', - name: 'section', - type: 'bytes32', - }, - { - indexed: true, - internalType: 'address', - name: 'account', - type: 'address', - }, - { - indexed: false, - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - indexed: false, - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - name: 'AccessControlUpdated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'ExchangeResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'ExchangeSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesMarketResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesMarketSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'FuturesSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'IssuanceResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'IssuanceSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'oldOwner', - type: 'address', - }, - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerChanged', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'newOwner', - type: 'address', - }, - ], - name: 'OwnerNominated', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthExchangeResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthExchangeSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SynthSuspended', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SystemResumed', - type: 'event', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'SystemSuspended', - type: 'event', - }, - { - constant: true, - inputs: [], - name: 'CONTRACT_NAME', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_EXCHANGE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_FUTURES', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_ISSUANCE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYNTH', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYNTH_EXCHANGE', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SECTION_SYSTEM', - outputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'SUSPENSION_REASON_UPGRADE', - outputs: [ - { - internalType: 'uint248', - name: '', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'acceptOwnership', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - name: 'accessControl', - outputs: [ - { - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'exchangeSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'futuresMarketSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'futuresSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'getFuturesMarketSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'suspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synths', - type: 'bytes32[]', - }, - ], - name: 'getSynthExchangeSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'exchangeSuspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32[]', - name: 'synths', - type: 'bytes32[]', - }, - ], - name: 'getSynthSuspensions', - outputs: [ - { - internalType: 'bool[]', - name: 'suspensions', - type: 'bool[]', - }, - { - internalType: 'uint256[]', - name: 'reasons', - type: 'uint256[]', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'isSystemUpgrading', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'issuanceSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'address', - name: '_owner', - type: 'address', - }, - ], - name: 'nominateNewOwner', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'nominatedOwner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'owner', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireExchangeActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'requireExchangeBetweenSynthsAllowed', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireFuturesActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'requireFuturesMarketActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireIssuanceActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthExchangeActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'sourceCurrencyKey', - type: 'bytes32', - }, - { - internalType: 'bytes32', - name: 'destinationCurrencyKey', - type: 'bytes32', - }, - ], - name: 'requireSynthsActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'requireSystemActive', - outputs: [], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeFutures', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - ], - name: 'resumeFuturesMarket', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeFuturesMarkets', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeIssuance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'resumeSynth', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'resumeSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - ], - name: 'resumeSynthsExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [], - name: 'resumeSystem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFutures', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'marketKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFuturesMarket', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'marketKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendFuturesMarkets', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendIssuance', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynth', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynthExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynths', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'currencyKeys', - type: 'bytes32[]', - }, - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSynthsExchange', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'uint256', - name: 'reason', - type: 'uint256', - }, - ], - name: 'suspendSystem', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthExchangeSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: 'currencyKey', - type: 'bytes32', - }, - ], - name: 'synthSuspended', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [ - { - internalType: 'bytes32', - name: '', - type: 'bytes32', - }, - ], - name: 'synthSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'systemSuspended', - outputs: [ - { - internalType: 'bool', - name: '', - type: 'bool', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: true, - inputs: [], - name: 'systemSuspension', - outputs: [ - { - internalType: 'bool', - name: 'suspended', - type: 'bool', - }, - { - internalType: 'uint248', - name: 'reason', - type: 'uint248', - }, - ], - payable: false, - stateMutability: 'view', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32', - name: 'section', - type: 'bytes32', - }, - { - internalType: 'address', - name: 'account', - type: 'address', - }, - { - internalType: 'bool', - name: 'canSuspend', - type: 'bool', - }, - { - internalType: 'bool', - name: 'canResume', - type: 'bool', - }, - ], - name: 'updateAccessControl', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, - { - constant: false, - inputs: [ - { - internalType: 'bytes32[]', - name: 'sections', - type: 'bytes32[]', - }, - { - internalType: 'address[]', - name: 'accounts', - type: 'address[]', - }, - { - internalType: 'bool[]', - name: 'canSuspends', - type: 'bool[]', - }, - { - internalType: 'bool[]', - name: 'canResumes', - type: 'bool[]', - }, - ], - name: 'updateAccessControls', - outputs: [], - payable: false, - stateMutability: 'nonpayable', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "bytes32", + name: "section", + type: "bytes32", + }, + { + indexed: true, + internalType: "address", + name: "account", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + indexed: false, + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + name: "AccessControlUpdated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "ExchangeResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "ExchangeSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesMarketResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesMarketSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "FuturesSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "IssuanceResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "IssuanceSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthExchangeResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthExchangeSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SynthSuspended", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SystemResumed", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "SystemSuspended", + type: "event", + }, + { + constant: true, + inputs: [], + name: "CONTRACT_NAME", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_EXCHANGE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_FUTURES", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_ISSUANCE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYNTH", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYNTH_EXCHANGE", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SECTION_SYSTEM", + outputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "SUSPENSION_REASON_UPGRADE", + outputs: [ + { + internalType: "uint248", + name: "", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "acceptOwnership", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "accessControl", + outputs: [ + { + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "exchangeSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "futuresMarketSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "futuresSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "getFuturesMarketSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "suspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "synths", + type: "bytes32[]", + }, + ], + name: "getSynthExchangeSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "exchangeSuspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32[]", + name: "synths", + type: "bytes32[]", + }, + ], + name: "getSynthSuspensions", + outputs: [ + { + internalType: "bool[]", + name: "suspensions", + type: "bool[]", + }, + { + internalType: "uint256[]", + name: "reasons", + type: "uint256[]", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "isSystemUpgrading", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "issuanceSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "address", + name: "_owner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireExchangeActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "requireExchangeBetweenSynthsAllowed", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireFuturesActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "requireFuturesMarketActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireIssuanceActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "requireSynthActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "requireSynthExchangeActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "sourceCurrencyKey", + type: "bytes32", + }, + { + internalType: "bytes32", + name: "destinationCurrencyKey", + type: "bytes32", + }, + ], + name: "requireSynthsActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "requireSystemActive", + outputs: [], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeFutures", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + ], + name: "resumeFuturesMarket", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + ], + name: "resumeFuturesMarkets", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeIssuance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "resumeSynth", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "resumeSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "resumeSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + ], + name: "resumeSynthsExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [], + name: "resumeSystem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFutures", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "marketKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFuturesMarket", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "marketKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendFuturesMarkets", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendIssuance", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynth", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynthExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynths", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "currencyKeys", + type: "bytes32[]", + }, + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSynthsExchange", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "uint256", + name: "reason", + type: "uint256", + }, + ], + name: "suspendSystem", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthExchangeSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "currencyKey", + type: "bytes32", + }, + ], + name: "synthSuspended", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + internalType: "bytes32", + name: "", + type: "bytes32", + }, + ], + name: "synthSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "systemSuspended", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "systemSuspension", + outputs: [ + { + internalType: "bool", + name: "suspended", + type: "bool", + }, + { + internalType: "uint248", + name: "reason", + type: "uint248", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32", + name: "section", + type: "bytes32", + }, + { + internalType: "address", + name: "account", + type: "address", + }, + { + internalType: "bool", + name: "canSuspend", + type: "bool", + }, + { + internalType: "bool", + name: "canResume", + type: "bool", + }, + ], + name: "updateAccessControl", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: false, + inputs: [ + { + internalType: "bytes32[]", + name: "sections", + type: "bytes32[]", + }, + { + internalType: "address[]", + name: "accounts", + type: "address[]", + }, + { + internalType: "bool[]", + name: "canSuspends", + type: "bool[]", + }, + { + internalType: "bool[]", + name: "canResumes", + type: "bool[]", + }, + ], + name: "updateAccessControls", + outputs: [], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, +] as const; export class SystemStatus__factory { - static readonly abi = _abi - static createInterface(): SystemStatusInterface { - return new utils.Interface(_abi) as SystemStatusInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): SystemStatus { - return new Contract(address, _abi, signerOrProvider) as SystemStatus - } + static readonly abi = _abi; + static createInterface(): SystemStatusInterface { + return new utils.Interface(_abi) as SystemStatusInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SystemStatus { + return new Contract(address, _abi, signerOrProvider) as SystemStatus; + } } diff --git a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts index d288f13018..b845b05363 100644 --- a/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VKwentaRedeemer__factory.ts @@ -2,87 +2,93 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { VKwentaRedeemer, VKwentaRedeemerInterface } from '../VKwentaRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + VKwentaRedeemer, + VKwentaRedeemerInterface, +} from "../VKwentaRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_vToken', - type: 'address', - }, - { - internalType: 'address', - name: '_token', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: 'address', - name: 'redeemer', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'redeemedAmount', - type: 'uint256', - }, - ], - name: 'Redeemed', - type: 'event', - }, - { - inputs: [], - name: 'redeem', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'token', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'vToken', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_vToken", + type: "address", + }, + { + internalType: "address", + name: "_token", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "redeemer", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "redeemedAmount", + type: "uint256", + }, + ], + name: "Redeemed", + type: "event", + }, + { + inputs: [], + name: "redeem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "token", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "vToken", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class VKwentaRedeemer__factory { - static readonly abi = _abi - static createInterface(): VKwentaRedeemerInterface { - return new utils.Interface(_abi) as VKwentaRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): VKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer - } + static readonly abi = _abi; + static createInterface(): VKwentaRedeemerInterface { + return new utils.Interface(_abi) as VKwentaRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): VKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VKwentaRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts index e9d633545a..0f70b6c656 100644 --- a/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts +++ b/packages/sdk/src/contracts/types/factories/VeKwentaRedeemer__factory.ts @@ -2,155 +2,161 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { VeKwentaRedeemer, VeKwentaRedeemerInterface } from '../VeKwentaRedeemer' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + VeKwentaRedeemer, + VeKwentaRedeemerInterface, +} from "../VeKwentaRedeemer"; const _abi = [ - { - inputs: [ - { - internalType: 'address', - name: '_veKwenta', - type: 'address', - }, - { - internalType: 'address', - name: '_kwenta', - type: 'address', - }, - { - internalType: 'address', - name: '_rewardEscrow', - type: 'address', - }, - ], - stateMutability: 'nonpayable', - type: 'constructor', - }, - { - inputs: [ - { - internalType: 'address', - name: 'caller', - type: 'address', - }, - { - internalType: 'uint256', - name: 'callerBalance', - type: 'uint256', - }, - ], - name: 'InvalidCallerBalance', - type: 'error', - }, - { - inputs: [ - { - internalType: 'uint256', - name: 'contractBalance', - type: 'uint256', - }, - ], - name: 'InvalidContractBalance', - type: 'error', - }, - { - inputs: [ - { - internalType: 'address', - name: 'caller', - type: 'address', - }, - ], - name: 'TransferFailed', - type: 'error', - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: 'address', - name: 'redeemer', - type: 'address', - }, - { - indexed: true, - internalType: 'address', - name: 'beneficiary', - type: 'address', - }, - { - indexed: false, - internalType: 'uint256', - name: 'redeemedAmount', - type: 'uint256', - }, - ], - name: 'Redeemed', - type: 'event', - }, - { - inputs: [], - name: 'kwenta', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [ - { - internalType: 'address', - name: '_beneficiary', - type: 'address', - }, - ], - name: 'redeem', - outputs: [], - stateMutability: 'nonpayable', - type: 'function', - }, - { - inputs: [], - name: 'rewardEscrow', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, - { - inputs: [], - name: 'veKwenta', - outputs: [ - { - internalType: 'address', - name: '', - type: 'address', - }, - ], - stateMutability: 'view', - type: 'function', - }, -] as const + { + inputs: [ + { + internalType: "address", + name: "_veKwenta", + type: "address", + }, + { + internalType: "address", + name: "_kwenta", + type: "address", + }, + { + internalType: "address", + name: "_rewardEscrow", + type: "address", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [ + { + internalType: "address", + name: "caller", + type: "address", + }, + { + internalType: "uint256", + name: "callerBalance", + type: "uint256", + }, + ], + name: "InvalidCallerBalance", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "contractBalance", + type: "uint256", + }, + ], + name: "InvalidContractBalance", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "caller", + type: "address", + }, + ], + name: "TransferFailed", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "redeemer", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "beneficiary", + type: "address", + }, + { + indexed: false, + internalType: "uint256", + name: "redeemedAmount", + type: "uint256", + }, + ], + name: "Redeemed", + type: "event", + }, + { + inputs: [], + name: "kwenta", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "_beneficiary", + type: "address", + }, + ], + name: "redeem", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "rewardEscrow", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "veKwenta", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; export class VeKwentaRedeemer__factory { - static readonly abi = _abi - static createInterface(): VeKwentaRedeemerInterface { - return new utils.Interface(_abi) as VeKwentaRedeemerInterface - } - static connect(address: string, signerOrProvider: Signer | Provider): VeKwentaRedeemer { - return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer - } + static readonly abi = _abi; + static createInterface(): VeKwentaRedeemerInterface { + return new utils.Interface(_abi) as VeKwentaRedeemerInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): VeKwentaRedeemer { + return new Contract(address, _abi, signerOrProvider) as VeKwentaRedeemer; + } } diff --git a/packages/sdk/src/contracts/types/factories/index.ts b/packages/sdk/src/contracts/types/factories/index.ts index 8d67cb91e8..5516690741 100644 --- a/packages/sdk/src/contracts/types/factories/index.ts +++ b/packages/sdk/src/contracts/types/factories/index.ts @@ -1,37 +1,37 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { BatchClaimer__factory } from './BatchClaimer__factory' -export { DappMaintenance__factory } from './DappMaintenance__factory' -export { ERC20__factory } from './ERC20__factory' -export { ExchangeRates__factory } from './ExchangeRates__factory' -export { Exchanger__factory } from './Exchanger__factory' -export { FuturesMarket__factory } from './FuturesMarket__factory' -export { FuturesMarketData__factory } from './FuturesMarketData__factory' -export { FuturesMarketSettings__factory } from './FuturesMarketSettings__factory' -export { KwentaArrakisVault__factory } from './KwentaArrakisVault__factory' -export { KwentaStakingRewards__factory } from './KwentaStakingRewards__factory' -export { MultipleMerkleDistributor__factory } from './MultipleMerkleDistributor__factory' -export { MultipleMerkleDistributorOp__factory } from './MultipleMerkleDistributorOp__factory' -export { MultipleMerkleDistributorPerpsV2__factory } from './MultipleMerkleDistributorPerpsV2__factory' -export { PerpsV2Market__factory } from './PerpsV2Market__factory' -export { PerpsV2MarketData__factory } from './PerpsV2MarketData__factory' -export { PerpsV2MarketSettings__factory } from './PerpsV2MarketSettings__factory' -export { PerpsV2MarketViews__factory } from './PerpsV2MarketViews__factory' -export { PerpsV3MarketProxy__factory } from './PerpsV3MarketProxy__factory' -export { Pyth__factory } from './Pyth__factory' -export { ReverseRecords__factory } from './ReverseRecords__factory' -export { RewardEscrow__factory } from './RewardEscrow__factory' -export { SmartMarginAccount__factory } from './SmartMarginAccount__factory' -export { SmartMarginAccountFactory__factory } from './SmartMarginAccountFactory__factory' -export { StakingRewards__factory } from './StakingRewards__factory' -export { SupplySchedule__factory } from './SupplySchedule__factory' -export { Synth__factory } from './Synth__factory' -export { SynthRedeemer__factory } from './SynthRedeemer__factory' -export { SynthSwap__factory } from './SynthSwap__factory' -export { SynthUtil__factory } from './SynthUtil__factory' -export { Synthetix__factory } from './Synthetix__factory' -export { SystemSettings__factory } from './SystemSettings__factory' -export { SystemStatus__factory } from './SystemStatus__factory' -export { VKwentaRedeemer__factory } from './VKwentaRedeemer__factory' -export { VeKwentaRedeemer__factory } from './VeKwentaRedeemer__factory' +export { BatchClaimer__factory } from "./BatchClaimer__factory"; +export { DappMaintenance__factory } from "./DappMaintenance__factory"; +export { ERC20__factory } from "./ERC20__factory"; +export { ExchangeRates__factory } from "./ExchangeRates__factory"; +export { Exchanger__factory } from "./Exchanger__factory"; +export { FuturesMarket__factory } from "./FuturesMarket__factory"; +export { FuturesMarketData__factory } from "./FuturesMarketData__factory"; +export { FuturesMarketSettings__factory } from "./FuturesMarketSettings__factory"; +export { KwentaArrakisVault__factory } from "./KwentaArrakisVault__factory"; +export { KwentaStakingRewards__factory } from "./KwentaStakingRewards__factory"; +export { MultipleMerkleDistributor__factory } from "./MultipleMerkleDistributor__factory"; +export { MultipleMerkleDistributorOp__factory } from "./MultipleMerkleDistributorOp__factory"; +export { MultipleMerkleDistributorPerpsV2__factory } from "./MultipleMerkleDistributorPerpsV2__factory"; +export { PerpsV2Market__factory } from "./PerpsV2Market__factory"; +export { PerpsV2MarketData__factory } from "./PerpsV2MarketData__factory"; +export { PerpsV2MarketSettings__factory } from "./PerpsV2MarketSettings__factory"; +export { PerpsV2MarketViews__factory } from "./PerpsV2MarketViews__factory"; +export { PerpsV3MarketProxy__factory } from "./PerpsV3MarketProxy__factory"; +export { Pyth__factory } from "./Pyth__factory"; +export { ReverseRecords__factory } from "./ReverseRecords__factory"; +export { RewardEscrow__factory } from "./RewardEscrow__factory"; +export { SmartMarginAccount__factory } from "./SmartMarginAccount__factory"; +export { SmartMarginAccountFactory__factory } from "./SmartMarginAccountFactory__factory"; +export { StakingRewards__factory } from "./StakingRewards__factory"; +export { SupplySchedule__factory } from "./SupplySchedule__factory"; +export { Synth__factory } from "./Synth__factory"; +export { SynthRedeemer__factory } from "./SynthRedeemer__factory"; +export { SynthSwap__factory } from "./SynthSwap__factory"; +export { SynthUtil__factory } from "./SynthUtil__factory"; +export { Synthetix__factory } from "./Synthetix__factory"; +export { SystemSettings__factory } from "./SystemSettings__factory"; +export { SystemStatus__factory } from "./SystemStatus__factory"; +export { VKwentaRedeemer__factory } from "./VKwentaRedeemer__factory"; +export { VeKwentaRedeemer__factory } from "./VeKwentaRedeemer__factory"; diff --git a/packages/sdk/src/contracts/types/index.ts b/packages/sdk/src/contracts/types/index.ts index 8367de2cf7..d626faeb08 100644 --- a/packages/sdk/src/contracts/types/index.ts +++ b/packages/sdk/src/contracts/types/index.ts @@ -1,72 +1,72 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { BatchClaimer } from './BatchClaimer' -export type { DappMaintenance } from './DappMaintenance' -export type { ERC20 } from './ERC20' -export type { ExchangeRates } from './ExchangeRates' -export type { Exchanger } from './Exchanger' -export type { FuturesMarket } from './FuturesMarket' -export type { FuturesMarketData } from './FuturesMarketData' -export type { FuturesMarketSettings } from './FuturesMarketSettings' -export type { KwentaArrakisVault } from './KwentaArrakisVault' -export type { KwentaStakingRewards } from './KwentaStakingRewards' -export type { MultipleMerkleDistributor } from './MultipleMerkleDistributor' -export type { MultipleMerkleDistributorOp } from './MultipleMerkleDistributorOp' -export type { MultipleMerkleDistributorPerpsV2 } from './MultipleMerkleDistributorPerpsV2' -export type { PerpsV2Market } from './PerpsV2Market' -export type { PerpsV2MarketData } from './PerpsV2MarketData' -export type { PerpsV2MarketSettings } from './PerpsV2MarketSettings' -export type { PerpsV2MarketViews } from './PerpsV2MarketViews' -export type { PerpsV3MarketProxy } from './PerpsV3MarketProxy' -export type { Pyth } from './Pyth' -export type { ReverseRecords } from './ReverseRecords' -export type { RewardEscrow } from './RewardEscrow' -export type { SmartMarginAccount } from './SmartMarginAccount' -export type { SmartMarginAccountFactory } from './SmartMarginAccountFactory' -export type { StakingRewards } from './StakingRewards' -export type { SupplySchedule } from './SupplySchedule' -export type { Synth } from './Synth' -export type { SynthRedeemer } from './SynthRedeemer' -export type { SynthSwap } from './SynthSwap' -export type { SynthUtil } from './SynthUtil' -export type { Synthetix } from './Synthetix' -export type { SystemSettings } from './SystemSettings' -export type { SystemStatus } from './SystemStatus' -export type { VKwentaRedeemer } from './VKwentaRedeemer' -export type { VeKwentaRedeemer } from './VeKwentaRedeemer' -export * as factories from './factories' -export { BatchClaimer__factory } from './factories/BatchClaimer__factory' -export { DappMaintenance__factory } from './factories/DappMaintenance__factory' -export { ERC20__factory } from './factories/ERC20__factory' -export { Exchanger__factory } from './factories/Exchanger__factory' -export { ExchangeRates__factory } from './factories/ExchangeRates__factory' -export { FuturesMarket__factory } from './factories/FuturesMarket__factory' -export { FuturesMarketData__factory } from './factories/FuturesMarketData__factory' -export { FuturesMarketSettings__factory } from './factories/FuturesMarketSettings__factory' -export { KwentaArrakisVault__factory } from './factories/KwentaArrakisVault__factory' -export { KwentaStakingRewards__factory } from './factories/KwentaStakingRewards__factory' -export { MultipleMerkleDistributor__factory } from './factories/MultipleMerkleDistributor__factory' -export { MultipleMerkleDistributorOp__factory } from './factories/MultipleMerkleDistributorOp__factory' -export { MultipleMerkleDistributorPerpsV2__factory } from './factories/MultipleMerkleDistributorPerpsV2__factory' -export { PerpsV2Market__factory } from './factories/PerpsV2Market__factory' -export { PerpsV2MarketData__factory } from './factories/PerpsV2MarketData__factory' -export { PerpsV2MarketSettings__factory } from './factories/PerpsV2MarketSettings__factory' -export { PerpsV2MarketViews__factory } from './factories/PerpsV2MarketViews__factory' -export { PerpsV3MarketProxy__factory } from './factories/PerpsV3MarketProxy__factory' -export { Pyth__factory } from './factories/Pyth__factory' -export { ReverseRecords__factory } from './factories/ReverseRecords__factory' -export { RewardEscrow__factory } from './factories/RewardEscrow__factory' -export { SmartMarginAccount__factory } from './factories/SmartMarginAccount__factory' -export { SmartMarginAccountFactory__factory } from './factories/SmartMarginAccountFactory__factory' -export { StakingRewards__factory } from './factories/StakingRewards__factory' -export { SupplySchedule__factory } from './factories/SupplySchedule__factory' -export { Synth__factory } from './factories/Synth__factory' -export { Synthetix__factory } from './factories/Synthetix__factory' -export { SynthRedeemer__factory } from './factories/SynthRedeemer__factory' -export { SynthSwap__factory } from './factories/SynthSwap__factory' -export { SynthUtil__factory } from './factories/SynthUtil__factory' -export { SystemSettings__factory } from './factories/SystemSettings__factory' -export { SystemStatus__factory } from './factories/SystemStatus__factory' -export { VeKwentaRedeemer__factory } from './factories/VeKwentaRedeemer__factory' -export { VKwentaRedeemer__factory } from './factories/VKwentaRedeemer__factory' +export type { BatchClaimer } from "./BatchClaimer"; +export type { DappMaintenance } from "./DappMaintenance"; +export type { ERC20 } from "./ERC20"; +export type { ExchangeRates } from "./ExchangeRates"; +export type { Exchanger } from "./Exchanger"; +export type { FuturesMarket } from "./FuturesMarket"; +export type { FuturesMarketData } from "./FuturesMarketData"; +export type { FuturesMarketSettings } from "./FuturesMarketSettings"; +export type { KwentaArrakisVault } from "./KwentaArrakisVault"; +export type { KwentaStakingRewards } from "./KwentaStakingRewards"; +export type { MultipleMerkleDistributor } from "./MultipleMerkleDistributor"; +export type { MultipleMerkleDistributorOp } from "./MultipleMerkleDistributorOp"; +export type { MultipleMerkleDistributorPerpsV2 } from "./MultipleMerkleDistributorPerpsV2"; +export type { PerpsV2Market } from "./PerpsV2Market"; +export type { PerpsV2MarketData } from "./PerpsV2MarketData"; +export type { PerpsV2MarketSettings } from "./PerpsV2MarketSettings"; +export type { PerpsV2MarketViews } from "./PerpsV2MarketViews"; +export type { PerpsV3MarketProxy } from "./PerpsV3MarketProxy"; +export type { Pyth } from "./Pyth"; +export type { ReverseRecords } from "./ReverseRecords"; +export type { RewardEscrow } from "./RewardEscrow"; +export type { SmartMarginAccount } from "./SmartMarginAccount"; +export type { SmartMarginAccountFactory } from "./SmartMarginAccountFactory"; +export type { StakingRewards } from "./StakingRewards"; +export type { SupplySchedule } from "./SupplySchedule"; +export type { Synth } from "./Synth"; +export type { SynthRedeemer } from "./SynthRedeemer"; +export type { SynthSwap } from "./SynthSwap"; +export type { SynthUtil } from "./SynthUtil"; +export type { Synthetix } from "./Synthetix"; +export type { SystemSettings } from "./SystemSettings"; +export type { SystemStatus } from "./SystemStatus"; +export type { VKwentaRedeemer } from "./VKwentaRedeemer"; +export type { VeKwentaRedeemer } from "./VeKwentaRedeemer"; +export * as factories from "./factories"; +export { BatchClaimer__factory } from "./factories/BatchClaimer__factory"; +export { DappMaintenance__factory } from "./factories/DappMaintenance__factory"; +export { ERC20__factory } from "./factories/ERC20__factory"; +export { Exchanger__factory } from "./factories/Exchanger__factory"; +export { ExchangeRates__factory } from "./factories/ExchangeRates__factory"; +export { FuturesMarket__factory } from "./factories/FuturesMarket__factory"; +export { FuturesMarketData__factory } from "./factories/FuturesMarketData__factory"; +export { FuturesMarketSettings__factory } from "./factories/FuturesMarketSettings__factory"; +export { KwentaArrakisVault__factory } from "./factories/KwentaArrakisVault__factory"; +export { KwentaStakingRewards__factory } from "./factories/KwentaStakingRewards__factory"; +export { MultipleMerkleDistributor__factory } from "./factories/MultipleMerkleDistributor__factory"; +export { MultipleMerkleDistributorOp__factory } from "./factories/MultipleMerkleDistributorOp__factory"; +export { MultipleMerkleDistributorPerpsV2__factory } from "./factories/MultipleMerkleDistributorPerpsV2__factory"; +export { PerpsV2Market__factory } from "./factories/PerpsV2Market__factory"; +export { PerpsV2MarketData__factory } from "./factories/PerpsV2MarketData__factory"; +export { PerpsV2MarketSettings__factory } from "./factories/PerpsV2MarketSettings__factory"; +export { PerpsV2MarketViews__factory } from "./factories/PerpsV2MarketViews__factory"; +export { PerpsV3MarketProxy__factory } from "./factories/PerpsV3MarketProxy__factory"; +export { Pyth__factory } from "./factories/Pyth__factory"; +export { ReverseRecords__factory } from "./factories/ReverseRecords__factory"; +export { RewardEscrow__factory } from "./factories/RewardEscrow__factory"; +export { SmartMarginAccount__factory } from "./factories/SmartMarginAccount__factory"; +export { SmartMarginAccountFactory__factory } from "./factories/SmartMarginAccountFactory__factory"; +export { StakingRewards__factory } from "./factories/StakingRewards__factory"; +export { SupplySchedule__factory } from "./factories/SupplySchedule__factory"; +export { Synth__factory } from "./factories/Synth__factory"; +export { Synthetix__factory } from "./factories/Synthetix__factory"; +export { SynthRedeemer__factory } from "./factories/SynthRedeemer__factory"; +export { SynthSwap__factory } from "./factories/SynthSwap__factory"; +export { SynthUtil__factory } from "./factories/SynthUtil__factory"; +export { SystemSettings__factory } from "./factories/SystemSettings__factory"; +export { SystemStatus__factory } from "./factories/SystemStatus__factory"; +export { VeKwentaRedeemer__factory } from "./factories/VeKwentaRedeemer__factory"; +export { VKwentaRedeemer__factory } from "./factories/VKwentaRedeemer__factory"; diff --git a/packages/sdk/src/queries/perpsV3.ts b/packages/sdk/src/queries/perpsV3.ts index f828d5f01b..84174a7003 100644 --- a/packages/sdk/src/queries/perpsV3.ts +++ b/packages/sdk/src/queries/perpsV3.ts @@ -18,11 +18,11 @@ export const getPerpsV3Markets = async (sdk: KwentaSDK): Promise { + const { SNXUSD } = this.sdk.context.multicallContracts + + console.log('SNXUSD', SNXUSD) + + if (!SNXUSD) throw new Error(sdkErrors.UNSUPPORTED_NETWORK) + const [balance, ...allowances] = (await this.sdk.context.multicallProvider.all([ + SNXUSD.balanceOf(walletAddress), + ...spenders.map((s) => SNXUSD.allowance(walletAddress, s)), + ])) as [BigNumber, BigNumber[]] + return { + SNXUSD: { + balance: wei(balance), + allowances: allowances.reduce>((acc, a, i) => { + acc[spenders[i]] = wei(a) + return acc + }, {}), + }, + } + } } diff --git a/packages/sdk/src/types/synths.ts b/packages/sdk/src/types/synths.ts index 463e271ce9..313ed88b7e 100644 --- a/packages/sdk/src/types/synths.ts +++ b/packages/sdk/src/types/synths.ts @@ -44,3 +44,15 @@ export type DeprecatedSynthBalance = { balance: Wei usdBalance: Wei } + +export enum SynthV3Asset { + SNXUSD = 'SNXUSD', +} + +export type SynthV3BalancesAndAllowances = Record< + SynthV3Asset, + { + balance: T + allowances: Record + } +> From 2bb00502d95172a6871f26b7a7c62a17a02e4561 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Mon, 17 Jul 2023 15:02:53 +0100 Subject: [PATCH 10/43] clean up --- packages/app/src/constants/futures.ts | 6 ------ packages/app/src/pages/market.tsx | 8 +++++--- packages/app/src/state/futures/crossMargin/actions.ts | 2 +- packages/app/src/state/futures/crossMargin/selectors.ts | 3 ++- packages/app/src/state/futures/selectors.ts | 2 +- packages/sdk/src/queries/perpsV3.ts | 6 +++--- 6 files changed, 12 insertions(+), 15 deletions(-) delete mode 100644 packages/app/src/constants/futures.ts diff --git a/packages/app/src/constants/futures.ts b/packages/app/src/constants/futures.ts deleted file mode 100644 index e3f3f6cf27..0000000000 --- a/packages/app/src/constants/futures.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { FuturesMarginType } from '@kwenta/sdk/types' - -export const SUPPORTED_PERPS_TYPES = - process.env.NODE_ENV === 'production' - ? [FuturesMarginType.SMART_MARGIN] - : [FuturesMarginType.SMART_MARGIN, FuturesMarginType.CROSS_MARGIN] diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index b728c3c3f6..2933eefa2e 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -6,7 +6,6 @@ import styled from 'styled-components' import Loader from 'components/Loader' import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' -import { SUPPORTED_PERPS_TYPES } from 'constants/futures' import Connector from 'containers/Connector' import useIsL2 from 'hooks/useIsL2' import useWindowSize from 'hooks/useWindowSize' @@ -30,6 +29,7 @@ import { setOpenModal } from 'state/app/reducer' import { selectShowModal, selectShowPositionModal } from 'state/app/selectors' import { clearTradeInputs } from 'state/futures/actions' import { AppFuturesMarginType } from 'state/futures/common/types' +import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' import { usePollMarketFuturesData } from 'state/futures/hooks' import { setFuturesAccountType } from 'state/futures/reducer' import { selectFuturesType, selectMarketAsset } from 'state/futures/selectors' @@ -61,12 +61,14 @@ const Market: MarketComponent = () => { const showPositionModal = useAppSelector(selectShowPositionModal) const accountType = useAppSelector(selectFuturesType) const selectedMarketAsset = useAppSelector(selectMarketAsset) + const crossMarginSupported = useAppSelector(selectCrossMarginSupportedNetwork) const routerAccountType = useMemo(() => { - if (SUPPORTED_PERPS_TYPES.includes(router.query.accountType as AppFuturesMarginType)) + if (router.query.accountType === 'cross_margin' && crossMarginSupported) { return router.query.accountType as AppFuturesMarginType + } return FuturesMarginType.SMART_MARGIN - }, [router.query.accountType]) + }, [router.query.accountType, crossMarginSupported]) useEffect(() => { if (router.isReady && accountType !== routerAccountType) { diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 6bac6bbca5..385408e33c 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -89,7 +89,7 @@ export const fetchPerpsV3Account = createAsyncThunk< } return undefined } catch (err) { - notifyError('Failed to fetch smart margin account', err) + notifyError('Failed to fetch cross margin account', err) rejectWithValue(err.message) } }) diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 5d40aa6039..91ef263ca8 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -37,7 +37,8 @@ export const selectV3MarketInfo = createSelector( ) export const selectCrossMarginSupportedNetwork = (state: RootState) => - state.wallet.networkId === 10 || state.wallet.networkId === 420 + // TODO: Add support for mainnet + state.wallet.networkId === 420 export const selectCrossMarginAccount = createSelector( selectWallet, diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index 1117d05bfe..2bcdd3eb32 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -508,7 +508,7 @@ export const selectPlaceOrderTranslationKey = createSelector( selectIsMarketCapReached, (position, marginDelta, { freeMargin }, selectedType, orderType) => { let remainingMargin - if (selectedType === FuturesMarginType.SMART_MARGIN) { + if (selectedType === FuturesMarginType.CROSS_MARGIN) { remainingMargin = position?.remainingMargin || ZERO_WEI } else { remainingMargin = marginDelta diff --git a/packages/sdk/src/queries/perpsV3.ts b/packages/sdk/src/queries/perpsV3.ts index f828d5f01b..df04259a5a 100644 --- a/packages/sdk/src/queries/perpsV3.ts +++ b/packages/sdk/src/queries/perpsV3.ts @@ -18,11 +18,11 @@ export const getPerpsV3Markets = async (sdk: KwentaSDK): Promise Date: Tue, 18 Jul 2023 10:12:36 +0100 Subject: [PATCH 11/43] Fetch available margin --- .../src/sections/futures/MarketInfoBox.tsx | 31 +------ .../Trade/DepositWithdrawCrossMargin.tsx | 8 +- .../sections/futures/Trade/TradeBalance.tsx | 5 +- .../futures/Trade/TradeBalanceCrossMargin.tsx | 5 +- packages/app/src/state/constants.ts | 1 + .../app/src/state/futures/common/types.ts | 5 +- .../src/state/futures/crossMargin/actions.ts | 58 ++++++++++---- .../src/state/futures/crossMargin/reducer.ts | 23 +++++- .../state/futures/crossMargin/selectors.ts | 16 ++++ .../src/state/futures/crossMargin/types.ts | 10 ++- packages/app/src/state/futures/selectors.ts | 35 -------- .../state/futures/smartMargin/selectors.ts | 35 -------- .../src/state/futures/smartMargin/types.ts | 4 +- packages/sdk/src/contracts/index.ts | 4 + packages/sdk/src/services/perpsV3.ts | 80 ++----------------- 15 files changed, 118 insertions(+), 202 deletions(-) diff --git a/packages/app/src/sections/futures/MarketInfoBox.tsx b/packages/app/src/sections/futures/MarketInfoBox.tsx index a188f006c9..ef48ba6148 100644 --- a/packages/app/src/sections/futures/MarketInfoBox.tsx +++ b/packages/app/src/sections/futures/MarketInfoBox.tsx @@ -4,17 +4,13 @@ import styled from 'styled-components' import { InfoBoxContainer, InfoBoxRow } from 'components/InfoBox' import PreviewArrow from 'components/PreviewArrow' -import { - selectAvailableMargin, - selectBuyingPower, - selectMarginUsage, - selectMarketSuspended, -} from 'state/futures/selectors' +import { selectCrossMarginAvailableMargin } from 'state/futures/crossMargin/selectors' +import { selectBuyingPower, selectMarketSuspended } from 'state/futures/selectors' import { selectPreviewMarginChange, selectTradePreview } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' const AvailableMarginRow = memo(() => { - const availableMargin = useAppSelector(selectAvailableMargin) + const availableMargin = useAppSelector(selectCrossMarginAvailableMargin) const potentialTrade = useAppSelector(selectTradePreview) const previewTradeData = useAppSelector(selectPreviewMarginChange) const marketSuspended = useAppSelector(selectMarketSuspended) @@ -55,32 +51,11 @@ const BuyingPowerRow = memo(() => { ) }) -const MarginUsageRow = memo(() => { - const previewTradeData = useAppSelector(selectPreviewMarginChange) - const potentialTrade = useAppSelector(selectTradePreview) - const marginUsage = useAppSelector(selectMarginUsage) - const marketSuspended = useAppSelector(selectMarketSuspended) - - return ( - - {formatPercent(previewTradeData?.marginUsage)} - - } - disabled={marketSuspended} - /> - ) -}) - const MarketInfoBox: React.FC = memo(() => { return ( - ) }) diff --git a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx index e01b0156eb..fd07156285 100644 --- a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx @@ -23,14 +23,16 @@ import { withdrawCrossMargin, } from 'state/futures/crossMargin/actions' import { - selectAvailableMargin, selectIsApprovingCrossDeposit, selectIsolatedTransferError, selectIsSubmittingIsolatedTransfer, selectPosition, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' -import { selectDepositAllowances } from 'state/futures/crossMargin/selectors' +import { + selectCrossMarginAvailableMargin, + selectDepositAllowances, +} from 'state/futures/crossMargin/selectors' type Props = { onDismiss(): void @@ -54,7 +56,7 @@ const DepositWithdrawCrossMarginModal: React.FC = ({ onDismiss, defaultTa const approving = useAppSelector(selectIsApprovingCrossDeposit) const txError = useAppSelector(selectIsolatedTransferError) const usdBalance = useAppSelector(selectSNXUSDBalance) - const availableMargin = useAppSelector(selectAvailableMargin) + const availableMargin = useAppSelector(selectCrossMarginAvailableMargin) const allowances = useAppSelector(selectDepositAllowances) const minDeposit = useMemo(() => { diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalance.tsx index 238361c48b..daf593dbbf 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalance.tsx @@ -16,7 +16,8 @@ import useWindowSize from 'hooks/useWindowSize' import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' import { selectSNXUSDBalance } from 'state/balances/selectors' -import { selectAvailableMargin, selectFuturesType } from 'state/futures/selectors' +import { selectCrossMarginAvailableMargin } from 'state/futures/crossMargin/selectors' +import { selectFuturesType } from 'state/futures/selectors' import { selectIdleMargin, selectLockedMarginInMarkets, @@ -42,7 +43,7 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => const lockedMargin = useAppSelector(selectLockedMarginInMarkets) const walletBal = useAppSelector(selectSNXUSDBalance) const accountType = useAppSelector(selectFuturesType) - const availableIsolatedMargin = useAppSelector(selectAvailableMargin) + const availableIsolatedMargin = useAppSelector(selectCrossMarginAvailableMargin) const withdrawable = useAppSelector(selectWithdrawableSmartMargin) const openModal = useAppSelector(selectShowModal) diff --git a/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx index 8f8dc85d36..20ba6cf5a0 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx @@ -14,9 +14,10 @@ import { setOpenModal } from 'state/app/reducer' import { selectSNXUSDBalance } from 'state/balances/selectors' import { selectCrossMarginAccount, + selectCrossMarginAvailableMargin, selectWithdrawableCrossMargin, } from 'state/futures/crossMargin/selectors' -import { selectAvailableMargin, selectFuturesType } from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PencilButton from '../../../components/Button/PencilButton' @@ -31,7 +32,7 @@ const TradeBalanceCrossMargin: React.FC = memo(({ isMobile = const { deviceType } = useWindowSize() const accountType = useAppSelector(selectFuturesType) - const availableCrossMargin = useAppSelector(selectAvailableMargin) + const availableCrossMargin = useAppSelector(selectCrossMarginAvailableMargin) const withdrawable = useAppSelector(selectWithdrawableCrossMargin) const crossMarginAccount = useAppSelector(selectCrossMarginAccount) const walletBal = useAppSelector(selectSNXUSDBalance) diff --git a/packages/app/src/state/constants.ts b/packages/app/src/state/constants.ts index 344e9e0f51..fa3680b357 100644 --- a/packages/app/src/state/constants.ts +++ b/packages/app/src/state/constants.ts @@ -38,6 +38,7 @@ export const ZERO_STATE_ACCOUNT = { export const ZERO_STATE_CM_ACCOUNT = { ...ZERO_STATE_ACCOUNT, balances: {}, + availableMargin: '0', } export const DEFAULT_QUERY_STATUS = { diff --git a/packages/app/src/state/futures/common/types.ts b/packages/app/src/state/futures/common/types.ts index e7312e0dfc..814fbb1fdf 100644 --- a/packages/app/src/state/futures/common/types.ts +++ b/packages/app/src/state/futures/common/types.ts @@ -54,7 +54,6 @@ export type HistoricalFundingRates = Partial< export type FuturesQueryStatuses = { markets: QueryStatus - smartMarginBalanceInfo: QueryStatus dailyVolumes: QueryStatus positions: QueryStatus positionHistory: QueryStatus @@ -69,6 +68,10 @@ export type FuturesQueryStatuses = { futuresFeesForAccount: QueryStatus } +export type SmartMarginQueryStatuses = FuturesQueryStatuses & { + smartMarginBalanceInfo: QueryStatus +} + export type TradeSizeInputs = { nativeSize: T susdSize: T diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index a5ad579758..5d3943640d 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -15,7 +15,7 @@ import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' import { monitorAndAwaitTransaction } from 'state/app/helpers' import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' -import { fetchBalances, fetchV3BalancesAndAllowances } from 'state/balances/actions' +import { fetchV3BalancesAndAllowances } from 'state/balances/actions' import { selectMarketInfo, selectMarkets } from 'state/futures/selectors' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -40,6 +40,7 @@ import { setPerpsV3MarketProxyAddress, } from './reducer' import { + selectAccountContext, selectCrossMarginAccount, selectCrossMarginSupportedNetwork, selectCrossMarginTradeInputs, @@ -122,18 +123,18 @@ export const fetchCrossMarginPositions = createAsyncThunk< ThunkConfig >('futures/fetchCrossMarginPositions', async (_, { extra: { sdk }, getState }) => { const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) - const account = selectCrossMarginAccount(getState()) + const { network, accountId } = selectAccountContext(getState()) + const markets = selectMarkets(getState()) - if (!supportedNetwork || !account) return + if (!supportedNetwork || !accountId) return try { - // const positions = await sdk.perpsV3.getPositions( - // account, - // markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.market })) - // ) + const positions = await sdk.perpsV3.getPositions( + accountId, + markets.map((m) => Number(m.market)) + ) - return { positions: [], account, network } + return { positions: [], account: accountId, network } } catch (err) { logError(err) notifyError('Failed to fetch isolated margin positions', err) @@ -153,13 +154,17 @@ export const fetchPositionHistoryV3 = createAsyncThunk< ThunkConfig >('futures/fetchPositionHistoryV3', async (_, { getState, extra: { sdk } }) => { try { - const account = selectCrossMarginAccount(getState()) - const networkId = selectNetwork(getState()) - const wallet = selectWallet(getState()) + const { wallet, network, accountId } = selectAccountContext(getState()) + const futuresSupported = selectCrossMarginSupportedNetwork(getState()) - if (!wallet || !account || !futuresSupported) return - const history = await sdk.futures.getPositionHistory(account) - return { account, wallet, networkId, history: serializePositionHistory(history) } + if (!wallet || !accountId || !futuresSupported) return + const history = await sdk.futures.getPositionHistory(accountId) + return { + account: accountId, + wallet, + networkId: network, + history: serializePositionHistory(history), + } } catch (err) { notifyError('Failed to fetch perps v3 position history', err) throw err @@ -185,9 +190,8 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< void, ThunkConfig >('futures/fetchCrossMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { - const wallet = selectWallet(getState()) + const { wallet, network } = selectAccountContext(getState()) const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) - const network = selectNetwork(getState()) const markets = selectV3Markets(getState()) const existingOrders = selectOpenDelayedOrdersV3(getState()) if (!wallet || !supportedNetwork || !markets.length) return @@ -230,11 +234,31 @@ export const fetchMarginTransfersV3 = createAsyncThunk( } ) +export const fetchAvailableMargin = createAsyncThunk< + { wallet: string; network: NetworkId; availableMargin: string } | undefined, + void, + ThunkConfig +>('futures/fetchAvailableMargin', async (_, { getState, extra: { sdk } }) => { + const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) + const { wallet, network, accountId } = selectAccountContext(getState()) + + if (!supportedNetwork || !wallet || !accountId) return + try { + const availableMargin = await sdk.perpsV3.getAvailableMargin(accountId) + return { wallet, network, availableMargin: availableMargin.toString() } + } catch (err) { + logError(err) + notifyError('Failed to fetch available margin', err) + throw err + } +}) + export const fetchCrossMarginAccountData = createAsyncThunk( 'futures/fetchCrossMarginAccountData', async (_, { dispatch }) => { dispatch(fetchCrossMarginPositions()) dispatch(fetchPerpsV3Balances()) + dispatch(fetchAvailableMargin()) } ) diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index 0f974145d8..9398287baf 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -27,6 +27,7 @@ import { fetchPositionHistoryV3, fetchMarketsV3, fetchPerpsV3Account, + fetchAvailableMargin, } from './actions' import { EditPositionInputs, @@ -87,8 +88,7 @@ export const COSS_MARGIN_INITIAL_STATE: CrossMarginState = { historicalFundingRates: DEFAULT_QUERY_STATUS, futuresFees: DEFAULT_QUERY_STATUS, futuresFeesForAccount: DEFAULT_QUERY_STATUS, - // TODO: Separate cross / smart query status - smartMarginBalanceInfo: DEFAULT_QUERY_STATUS, + availableMargin: DEFAULT_QUERY_STATUS, }, historicalFundingRates: {}, } @@ -301,6 +301,25 @@ const crossMarginSlice = createSlice({ } }) + builder.addCase(fetchAvailableMargin.pending, (futuresState) => { + futuresState.queryStatuses.availableMargin = LOADING_STATUS + }) + builder.addCase(fetchAvailableMargin.fulfilled, (futuresState, { payload }) => { + if (payload) { + const { wallet, availableMargin, network } = payload + updateCrossMarginAccount(futuresState, network, wallet, { + availableMargin, + }) + } + futuresState.queryStatuses.availableMargin = SUCCESS_STATUS + }) + builder.addCase(fetchAvailableMargin.rejected, (futuresState) => { + futuresState.queryStatuses.availableMargin = { + status: FetchStatus.Error, + error: 'Failed to fetch available margin', + } + }) + // Fetch position history builder.addCase(fetchPositionHistoryV3.pending, (futuresState) => { futuresState.queryStatuses.positionHistory = LOADING_STATUS diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index b03e506669..6ff1bd8b6e 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -50,6 +50,15 @@ export const selectCrossMarginAccount = createSelector( } ) +export const selectAccountContext = createSelector( + selectWallet, + selectNetwork, + selectCrossMarginAccount, + (wallet, network, accountId) => { + return { wallet, network, accountId } + } +) + export const selectCrossMarginAccountData = createSelector( selectWallet, selectNetwork, @@ -60,6 +69,13 @@ export const selectCrossMarginAccountData = createSelector( } ) +export const selectCrossMarginAvailableMargin = createSelector( + selectCrossMarginAccountData, + (account) => { + return wei(account?.availableMargin || 0) + } +) + export const selectV3ProxyAddress = createSelector( (state: RootState) => state.crossMargin, (crossMargin) => crossMargin.perpsV3MarketProxyAddress diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index 7d0ba3953b..688d326750 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -15,6 +15,7 @@ import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' import { FuturesAccountData, FuturesQueryStatuses, TradeSizeInputs } from '../common/types' +import { QueryStatus } from 'state/types' export type EditPositionInputs = { nativeSizeDelta: T @@ -74,8 +75,13 @@ export type FundingRatePeriods = { [key: number]: string } +export type CrossMarginQueryStatuses = FuturesQueryStatuses & { + availableMargin: QueryStatus +} + export type CrossMarginAccountData = FuturesAccountData & { - balances: { [asset: string]: { balance: Wei; allowance: Wei } } + balances: { [asset: string]: { balance: string; allowance: string } } + availableMargin: string } export type CrossMarginState = { @@ -103,7 +109,7 @@ export type CrossMarginState = { } > fundingRates: FundingRate[] - queryStatuses: FuturesQueryStatuses + queryStatuses: CrossMarginQueryStatuses dailyMarketVolumes: FuturesVolumes selectedInputDenomination: InputCurrencyDenomination selectedInputHours: number diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index 2bcdd3eb32..361ecf18d3 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -525,28 +525,6 @@ export const selectPlaceOrderTranslationKey = createSelector( } ) -export const selectAvailableMargin = createSelector( - selectMarketInfo, - selectPosition, - (marketInfo, position) => { - if (!marketInfo || !position) return ZERO_WEI - if (!position?.position) return position.remainingMargin - - let inaccessible = - position.position.notionalValue.div(marketInfo.appMaxLeverage).abs() ?? ZERO_WEI - - // If the user has a position open, we'll enforce a min initial margin requirement. - if (inaccessible.gt(0) && inaccessible.lt(marketInfo.minInitialMargin)) { - inaccessible = marketInfo.minInitialMargin - } - - // check if available margin will be less than 0 - return position.remainingMargin.sub(inaccessible).gt(0) - ? position.remainingMargin.sub(inaccessible).abs() - : ZERO_WEI - } -) - export const selectRemainingMarketMargin = createSelector(selectPosition, (position) => { if (!position) return ZERO_WEI return position.remainingMargin @@ -1049,19 +1027,6 @@ export const selectBuyingPower = createSelector( } ) -export const selectMarginUsage = createSelector( - selectAvailableMargin, - selectPosition, - (availableMargin, position) => { - const totalMargin = position?.remainingMargin ?? ZERO_WEI - return availableMargin.gt(ZERO_WEI) - ? totalMargin.sub(availableMargin).div(totalMargin) - : totalMargin.gt(ZERO_WEI) - ? wei(1) - : ZERO_WEI - } -) - export const selectMarketSuspended = createSelector( selectMarketInfo, (marketInfo) => marketInfo?.isSuspended diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts index 339207e2a5..662e33e58c 100644 --- a/packages/app/src/state/futures/smartMargin/selectors.ts +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -482,28 +482,6 @@ export const selectSmartMarginDepositApproved = createSelector( } ) -export const selectAvailableMargin = createSelector( - selectV2MarketInfo, - selectPosition, - (marketInfo, position) => { - if (!marketInfo || !position) return ZERO_WEI - if (!position?.position) return position.remainingMargin - - let inaccessible = - position.position.notionalValue.div(marketInfo.appMaxLeverage).abs() ?? ZERO_WEI - - // If the user has a position open, we'll enforce a min initial margin requirement. - if (inaccessible.gt(0) && inaccessible.lt(marketInfo.minInitialMargin)) { - inaccessible = marketInfo.minInitialMargin - } - - // check if available margin will be less than 0 - return position.remainingMargin.sub(inaccessible).gt(0) - ? position.remainingMargin.sub(inaccessible).abs() - : ZERO_WEI - } -) - export const selectRemainingMarketMargin = createSelector(selectPosition, (position) => { if (!position) return ZERO_WEI return position.remainingMargin @@ -1129,19 +1107,6 @@ export const selectBuyingPower = createSelector( } ) -export const selectMarginUsage = createSelector( - selectAvailableMargin, - selectPosition, - (availableMargin, position) => { - const totalMargin = position?.remainingMargin ?? ZERO_WEI - return availableMargin.gt(ZERO_WEI) - ? totalMargin.sub(availableMargin).div(totalMargin) - : totalMargin.gt(ZERO_WEI) - ? wei(1) - : ZERO_WEI - } -) - export const selectMarketSuspended = createSelector( selectV2MarketInfo, (marketInfo) => marketInfo?.isSuspended diff --git a/packages/app/src/state/futures/smartMargin/types.ts b/packages/app/src/state/futures/smartMargin/types.ts index 8246e82cdc..e3215c13c9 100644 --- a/packages/app/src/state/futures/smartMargin/types.ts +++ b/packages/app/src/state/futures/smartMargin/types.ts @@ -18,9 +18,9 @@ import { PricesInfo } from 'state/prices/types' import { FuturesAccountData, - FuturesQueryStatuses, FuturesTransactionType, HistoricalFundingRates, + SmartMarginQueryStatuses, TradeSizeInputs, } from '../common/types' @@ -112,7 +112,7 @@ export type SmartMarginState = { dailyMarketVolumes: FuturesVolumes fundingRates: FundingRate[] historicalFundingRates: HistoricalFundingRates - queryStatuses: FuturesQueryStatuses + queryStatuses: SmartMarginQueryStatuses tradeInputs: SmartMarginTradeInputs editPositionInputs: EditPositionInputs closePositionOrderInputs: ClosePositionInputs diff --git a/packages/sdk/src/contracts/index.ts b/packages/sdk/src/contracts/index.ts index 8dfcee7764..20ba865450 100644 --- a/packages/sdk/src/contracts/index.ts +++ b/packages/sdk/src/contracts/index.ts @@ -17,6 +17,7 @@ import MultipleMerkleDistributorPerpsV2ABI from './abis/MultipleMerkleDistributo import PerpsV2MarketABI from './abis/PerpsV2Market.json' import PerpsV2MarketDataABI from './abis/PerpsV2MarketData.json' import PerpsV2MarketSettingsABI from './abis/PerpsV2MarketSettings.json' +import PerpsV3MarketProxy from './abis/PerpsV3MarketProxy.json' import RewardEscrowABI from './abis/RewardEscrow.json' import RewardEscrowV2ABI from './abis/RewardEscrowV2.json' import StakingRewardsABI from './abis/StakingRewards.json' @@ -262,6 +263,9 @@ export const getMulticallContractsByNetwork = (networkId: NetworkId) => { RewardEscrowV2: ADDRESSES.RewardEscrowV2[networkId] ? new EthCallContract(ADDRESSES.RewardEscrowV2[networkId], RewardEscrowV2ABI) : undefined, + perpsV3MarketProxy: ADDRESSES.PerpsV3MarketProxy[networkId] + ? new EthCallContract(ADDRESSES.PerpsV3MarketProxy[networkId], PerpsV3MarketProxy) + : undefined, } } diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 137db36a29..84366d8494 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -70,70 +70,6 @@ export default class PerpsV3Service { public async getMarkets() { const perpsV3Markets = await getPerpsV3Markets(this.sdk) - // const enabledMarkets = marketsForNetwork( - // networkOverride?.networkId || this.sdk.context.networkId, - // this.sdk.context.logError - // ) - // const contracts = - // networkOverride && networkOverride?.networkId !== this.sdk.context.networkId - // ? getContractsByNetwork(networkOverride.networkId, networkOverride.provider) - // : this.sdk.context.contracts - - // const { SystemStatus } = contracts - // const { - // ExchangeRates, - // PerpsV2MarketData, - // PerpsV2MarketSettings, - // } = this.sdk.context.multicallContracts - - // if (!SystemStatus || !ExchangeRates || !PerpsV2MarketData || !PerpsV2MarketSettings) { - // throw new Error(UNSUPPORTED_NETWORK) - // } - - // const futuresData = await this.sdk.context.multicallProvider.all([ - // PerpsV2MarketData.allProxiedMarketSummaries(), - // PerpsV2MarketSettings.minInitialMargin(), - // PerpsV2MarketSettings.minKeeperFee(), - // ]) - - // const { markets, minInitialMargin, minKeeperFee } = { - // markets: futuresData[0] as PerpsV2MarketData.MarketSummaryStructOutput[], - // minInitialMargin: futuresData[1] as BigNumber, - // minKeeperFee: futuresData[2] as BigNumber, - // } - - // const filteredMarkets = markets.filter((m) => { - // const marketKey = parseBytes32String(m.key) as FuturesMarketKey - // const market = enabledMarkets.find((market) => { - // return marketKey === market.key - // }) - // return !!market - // }) - - // const marketKeys = filteredMarkets.map((m) => { - // return m.key - // }) - - // const parametersCalls = marketKeys.map((key: string) => PerpsV2MarketSettings.parameters(key)) - - // let marketParameters: IPerpsV2MarketSettings.ParametersStructOutput[] = [] - - // if (this.sdk.context.isMainnet) { - // marketParameters = await this.sdk.context.multicallProvider.all(parametersCalls) - // } else { - // const firstResponses = await this.sdk.context.multicallProvider.all( - // parametersCalls.slice(0, 20) - // ) - // const secondResponses = await this.sdk.context.multicallProvider.all( - // parametersCalls.slice(20, parametersCalls.length) - // ) - // marketParameters = [ - // ...firstResponses, - // ...secondResponses, - // ] as IPerpsV2MarketSettings.ParametersStructOutput[] - // } - - // const { suspensions, reasons } = await SystemStatus.getFuturesMarketSuspensions(marketKeys) const futuresMarkets = perpsV3Markets.reduce( ( @@ -212,7 +148,7 @@ export default class PerpsV3Service { address: string, // Cross margin or EOA address marketIds: number[] ) { - const proxy = this.sdk.context.multicallContracts.PerpsV2MarketData + const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy if (!this.sdk.context.isL2 || !proxy) { throw new Error(UNSUPPORTED_NETWORK) @@ -234,7 +170,7 @@ export default class PerpsV3Service { }) ) - return positions + return positions.filter((position) => !!position) } public async getMarketFundingRatesHistory( @@ -403,13 +339,11 @@ export default class PerpsV3Service { return queryIsolatedMarginTransfers(this.sdk, address) } - public async getAccountCollateral(crossMarginAddress: string) { - // TODO: Get collateral balances - return {} - } - - public async getAvailableMargin(walletAddress: string, crossMarginAddress: string) { - return wei(0) + public async getAvailableMargin(accountId: string) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + const availableMargin = await marketProxy.getAvailableMargin(accountId) + return wei(availableMargin) } // Perps V2 read functions From 7ff60895c451fdfab7f48b83ba594748ffec48ff Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 18 Jul 2023 10:28:52 +0100 Subject: [PATCH 12/43] Fix dashboard positions --- .../FuturesPositionsTable.tsx | 25 ++++++---- .../MobileDashboard/OpenPositions.tsx | 2 +- .../app/src/sections/dashboard/Overview.tsx | 2 +- packages/app/src/state/futures/selectors.ts | 4 +- .../src/state/futures/smartMargin/actions.ts | 10 ++-- .../state/futures/smartMargin/selectors.ts | 48 +++++++++---------- 6 files changed, 47 insertions(+), 44 deletions(-) diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx index 181f7e00b1..09f04a0fce 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx @@ -18,12 +18,9 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' import { AppFuturesMarginType } from 'state/futures/common/types' -import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' -import { - selectSmartMarginPositions, - selectMarkets, - selectPositionHistory, -} from 'state/futures/selectors' +import { selectCrossMarginPositions, selectV3Markets } from 'state/futures/crossMargin/selectors' +import { selectSmartMarginPositions, selectPositionHistory } from 'state/futures/selectors' +import { selectV2Markets } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { getSynthDescription } from 'utils/futures' @@ -49,14 +46,16 @@ const FuturesPositionsTable: FC = ({ const crossMarginPositions = useAppSelector(selectCrossMarginPositions) const smartMarginPositions = useAppSelector(selectSmartMarginPositions) const positionHistory = useAppSelector(selectPositionHistory) - const futuresMarkets = useAppSelector(selectMarkets) + const v2Markets = useAppSelector(selectV2Markets) + const v3Markets = useAppSelector(selectV3Markets) let data = useMemo(() => { const positions = accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions + const markets = accountType === FuturesMarginType.SMART_MARGIN ? v2Markets : v3Markets return positions .map((position) => { - const market = futuresMarkets.find((market) => market.asset === position.asset) + const market = markets.find((market) => market.asset === position.asset) const description = getSynthDescription(position.asset, t) const thisPositionHistory = positionHistory.find((ph) => { return ph.isOpen && ph.asset === position.asset @@ -72,7 +71,15 @@ const FuturesPositionsTable: FC = ({ } }) .filter(({ position, market }) => !!position && !!market) - }, [accountType, crossMarginPositions, smartMarginPositions, futuresMarkets, t, positionHistory]) + }, [ + accountType, + crossMarginPositions, + smartMarginPositions, + v2Markets, + v3Markets, + t, + positionHistory, + ]) return ( <> diff --git a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx index 9839069392..efcc15cecd 100644 --- a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx +++ b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx @@ -80,7 +80,7 @@ const OpenPositions: React.FC = ({ exchangeTokens, exchangeT
- + diff --git a/packages/app/src/sections/dashboard/Overview.tsx b/packages/app/src/sections/dashboard/Overview.tsx index 9882ce383d..c1fbd5712e 100644 --- a/packages/app/src/sections/dashboard/Overview.tsx +++ b/packages/app/src/sections/dashboard/Overview.tsx @@ -165,7 +165,7 @@ const Overview: FC = () => { ))} - + diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index 2bcdd3eb32..a7907ea48e 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -43,7 +43,7 @@ import { selectIdleMarginTransfers, selectMarginDeltaInputValue, selectOpenDelayedOrders, - selectPerpsV2Markets, + selectV2Markets, selectSmartMarginAccount, selectSmartMarginAccountData, selectSmartMarginBalanceInfo, @@ -103,7 +103,7 @@ export const selectMarketAsset = createSelector( export const selectMarkets = createSelector( selectFuturesType, - selectPerpsV2Markets, + selectV2Markets, selectV3Markets, (futuresType, v2Markets, v3Markets) => { return futuresType === FuturesMarginType.CROSS_MARGIN ? v3Markets : v2Markets diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts index 6217170ae5..b98abff505 100644 --- a/packages/app/src/state/futures/smartMargin/actions.ts +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -103,7 +103,7 @@ import { selectKeeperEthBalance, selectLeverageSide, selectV2MarketAsset, - selectPerpsV2Markets, + selectV2Markets, selectOrderType, selectOrderFeeCap, selectPosition, @@ -189,7 +189,7 @@ export const fetchSmartMarginPositions = createAsyncThunk< const account = selectSmartMarginAccount(getState()) const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) - const markets = selectPerpsV2Markets(getState()) + const markets = selectV2Markets(getState()) if (!account || !supportedNetwork) return try { @@ -308,7 +308,7 @@ export const fetchSmartMarginOpenOrders = createAsyncThunk< const account = selectSmartMarginAccount(getState()) const supportedNetwork = selectSmartMarginSupportedNetwork(getState()) const network = selectNetwork(getState()) - const markets = selectPerpsV2Markets(getState()) + const markets = selectV2Markets(getState()) const existingOrders = selectOpenDelayedOrders(getState()) const marketAddresses = markets.map((market) => market.market) @@ -772,7 +772,7 @@ export const fetchAllV2TradesForAccount = createAsyncThunk< export const calculateSmartMarginFees = (params: TradePreviewParams): AppThunk => (dispatch, getState) => { - const markets = selectPerpsV2Markets(getState()) + const markets = selectV2Markets(getState()) const market = markets.find((m) => m.marketKey === params.market.key) if (!market) throw new Error('Missing market info to compute fee') const keeperBalance = selectKeeperEthBalance(getState()) @@ -1421,7 +1421,7 @@ export const fetchFundingRatesHistory = createAsyncThunk< }) const getMarketDetailsByKey = (getState: () => RootState, key: FuturesMarketKey) => { - const markets = selectPerpsV2Markets(getState()) + const markets = selectV2Markets(getState()) const market = markets.find((m) => { return m.marketKey === key }) diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts index 276f4e333a..656e0e58e7 100644 --- a/packages/app/src/state/futures/smartMargin/selectors.ts +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -104,7 +104,7 @@ export const selectCMBalance = createSelector(selectSmartMarginAccountData, (acc export const selectV2MarketAsset = (state: RootState) => state.smartMargin.selectedMarketAsset -export const selectPerpsV2Markets = createSelector( +export const selectV2Markets = createSelector( selectNetwork, (state: RootState) => state.smartMargin, (network, smartMargin) => { @@ -117,16 +117,16 @@ export const selectPerpsV2MarketVolumes = createSelector( (dailyMarketVolumes) => unserializeFuturesVolumes(dailyMarketVolumes) ) -export const selectMarketKeys = createSelector(selectPerpsV2Markets, (markets) => +export const selectMarketKeys = createSelector(selectV2Markets, (markets) => markets.map(({ asset }) => MarketKeyByAsset[asset]) ) -export const selectMarketAssets = createSelector(selectPerpsV2Markets, (markets) => +export const selectMarketAssets = createSelector(selectV2Markets, (markets) => markets.map(({ asset }) => asset) ) export const selectV2MarketInfo = createSelector( - selectPerpsV2Markets, + selectV2Markets, selectV2MarketKey, (markets, selectedMarket) => { return markets.find((market) => market.marketKey === selectedMarket) @@ -201,25 +201,21 @@ export const selectMarketPrices = createSelector( } ) -export const selectMarkPrices = createSelector( - selectPerpsV2Markets, - selectPrices, - (markets, prices) => { - const markPrices: MarkPrices = {} - return markets.reduce((acc, market) => { - const price = prices[market.asset]?.offChain ?? wei(0) - return { - ...acc, - [market.marketKey]: wei(price).mul( - wei(market.marketSkew).div(market.settings.skewScale).add(1) - ), - } - }, markPrices) - } -) +export const selectMarkPrices = createSelector(selectV2Markets, selectPrices, (markets, prices) => { + const markPrices: MarkPrices = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.offChain ?? wei(0) + return { + ...acc, + [market.marketKey]: wei(price).mul( + wei(market.marketSkew).div(market.settings.skewScale).add(1) + ), + } + }, markPrices) +}) export const selectMarkPriceInfos = createSelector( - selectPerpsV2Markets, + selectV2Markets, selectOffchainPricesInfo, (markets, prices) => { const markPrices: MarkPriceInfos = {} @@ -510,7 +506,7 @@ export const selectRemainingMarketMargin = createSelector(selectPosition, (posit }) export const selectMarginInMarkets = (isSuspended: boolean = false) => - createSelector(selectSmartMarginPositions, selectPerpsV2Markets, (positions, markets) => { + createSelector(selectSmartMarginPositions, selectV2Markets, (positions, markets) => { const idleInMarkets = positions .filter((p) => { const market = markets.find((m) => m.marketKey === p.marketKey) @@ -622,7 +618,7 @@ export const selectKeeperDepositExceedsBal = createSelector( export const selectEditPositionModalInfo = createSelector( selectEditPositionModalMarket, selectSmartMarginPositions, - selectPerpsV2Markets, + selectV2Markets, selectPrices, (modalMarketKey, smartPositions, markets, prices) => { const position = smartPositions.find((p) => p.marketKey === modalMarketKey) @@ -857,7 +853,7 @@ export const selectTradePreviewStatus = createSelector( export const selectOpenDelayedOrders = createSelector( selectSmartMarginAccountData, - selectPerpsV2Markets, + selectV2Markets, (account, markets) => { const orders = unserializeDelayedOrders(account?.delayedOrders ?? []) @@ -915,7 +911,7 @@ export const selectDelayedOrderFee = createSelector( } ) -export const selectOpenInterest = createSelector(selectPerpsV2Markets, (futuresMarkets) => +export const selectOpenInterest = createSelector(selectV2Markets, (futuresMarkets) => futuresMarkets.reduce( (total, { openInterest }) => total.add(openInterest.shortUSD).add(openInterest.longUSD), wei(0) @@ -933,7 +929,7 @@ export const selectUsersTradesForMarket = createSelector( export const selectAllSmartMarginTrades = createSelector( selectSmartMarginAccountData, - selectPerpsV2Markets, + selectV2Markets, (smartMarginAccountData, markets) => { const trades = unserializeTrades(smartMarginAccountData?.trades ?? []) return trades.map((t) => { From 9a49fcfcd2ab8714c7ff0be7debaf81119f05ec0 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Tue, 18 Jul 2023 16:31:21 +0100 Subject: [PATCH 13/43] Refactor trade inputs --- .../components/SocketBridge/SocketBridge.tsx | 2 +- packages/app/src/pages/market.tsx | 10 +-- .../dashboard/FuturesHistoryTable.tsx | 7 +- .../dashboard/FuturesMarketsTable.tsx | 8 +- .../src/sections/dashboard/PortfolioChart.tsx | 2 +- .../ClosePositionModal/ClosePositionModal.tsx | 3 +- .../futures/CreatePerpsV3AccountModal.tsx | 2 +- .../app/src/sections/futures/FundingChart.tsx | 3 +- .../src/sections/futures/LeverageInput.tsx | 3 +- .../futures/MarketDetails/MarketDetails.tsx | 2 +- .../futures/MarketInfo/MarketHead.tsx | 3 +- .../MobileTrade/OverviewTabs/AccountTab.tsx | 2 +- .../futures/MobileTrade/PositionDetails.tsx | 3 +- .../UserTabs/ConditionalOrdersTab.tsx | 3 +- .../MobileTrade/UserTabs/OrdersTab.tsx | 3 +- .../MobileTrade/UserTabs/PositionsTab.tsx | 3 +- .../MobileTrade/UserTabs/TradesTab.tsx | 8 +- .../MobileTrade/UserTabs/TransfersTab.tsx | 7 +- .../OrderSizing/DenominationToggle.tsx | 3 +- .../futures/OrderSizing/OrderSizing.tsx | 12 ++- .../ProfitCalculator/ProfitCalculator.tsx | 2 +- .../futures/ShareModal/AmountContainer.tsx | 2 +- .../Trade/DepositWithdrawCrossMargin.tsx | 8 +- .../sections/futures/Trade/ManagePosition.tsx | 3 +- .../futures/Trade/MarketsDropdown.tsx | 3 +- .../src/sections/futures/Trade/SLTPInputs.tsx | 7 +- .../sections/futures/Trade/TradeBalance.tsx | 2 +- .../futures/Trade/TradeBalanceCrossMargin.tsx | 2 +- .../src/sections/futures/Trade/TradePanel.tsx | 11 ++- .../futures/Trade/TradePanelCrossMargin.tsx | 2 +- .../futures/Trade/TradePanelPriceInput.tsx | 3 +- .../DelayedOrderConfirmationModal.tsx | 2 +- .../TradeConfirmationModal.tsx | 8 +- .../src/sections/futures/Trades/Trades.tsx | 8 +- .../futures/TradingHistory/SkewInfo.tsx | 3 +- .../app/src/sections/futures/Transfers.tsx | 7 +- .../UserInfo/ConditionalOrdersTable.tsx | 3 +- .../UserInfo/OpenDelayedOrdersTable.tsx | 2 +- .../futures/UserInfo/PositionsTable.tsx | 3 +- .../sections/futures/UserInfo/UserInfo.tsx | 3 +- .../shared/Layout/AppLayout/Header/Nav.tsx | 2 +- packages/app/src/state/balances/actions.ts | 2 +- packages/app/src/state/balances/reducer.ts | 2 +- packages/app/src/state/futures/actions.ts | 10 ++- .../app/src/state/futures/common/selectors.ts | 29 +++++++ .../app/src/state/futures/common/types.ts | 13 ++- .../src/state/futures/crossMargin/actions.ts | 82 +++++++++++++++++-- .../src/state/futures/crossMargin/reducer.ts | 13 +-- .../state/futures/crossMargin/selectors.ts | 2 +- .../src/state/futures/crossMargin/types.ts | 2 +- packages/app/src/state/futures/hooks.ts | 3 +- packages/app/src/state/futures/selectors.ts | 53 ++++++------ .../src/state/futures/smartMargin/actions.ts | 41 ++++------ 53 files changed, 259 insertions(+), 168 deletions(-) create mode 100644 packages/app/src/state/futures/common/selectors.ts diff --git a/packages/app/src/components/SocketBridge/SocketBridge.tsx b/packages/app/src/components/SocketBridge/SocketBridge.tsx index 7ee33806b0..ebf5ee2d2f 100644 --- a/packages/app/src/components/SocketBridge/SocketBridge.tsx +++ b/packages/app/src/components/SocketBridge/SocketBridge.tsx @@ -7,7 +7,7 @@ import ArrowIcon from 'assets/svg/app/arrow-down.svg' import Connector from 'containers/Connector' import { chain } from 'containers/Connector/config' import { fetchBalances } from 'state/balances/actions' -import { selectFuturesType } from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { customizeSocket, diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index b42a8528c4..dc13b56325 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -10,6 +10,7 @@ import Connector from 'containers/Connector' import useIsL2 from 'hooks/useIsL2' import useWindowSize from 'hooks/useWindowSize' import ClosePositionModal from 'sections/futures/ClosePositionModal/ClosePositionModal' +import CreatePerpsV3AccountModal from 'sections/futures/CreatePerpsV3AccountModal' import EditPositionMarginModal from 'sections/futures/EditPositionModal/EditPositionMarginModal' import EditPositionSizeModal from 'sections/futures/EditPositionModal/EditPositionSizeModal' import EditStopLossAndTakeProfitModal from 'sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal' @@ -18,9 +19,10 @@ import MarketHead from 'sections/futures/MarketInfo/MarketHead' import MobileTrade from 'sections/futures/MobileTrade/MobileTrade' import SmartMarginOnboard from 'sections/futures/SmartMarginOnboard' import { TRADE_PANEL_WIDTH_LG, TRADE_PANEL_WIDTH_MD } from 'sections/futures/styles' +import DepositWithdrawCrossMarginModal from 'sections/futures/Trade/DepositWithdrawCrossMargin' import FuturesUnsupportedNetwork from 'sections/futures/Trade/FuturesUnsupported' import TradePanel from 'sections/futures/Trade/TradePanel' -import DepositWithdrawCrossMarginModal from 'sections/futures/Trade/DepositWithdrawCrossMargin' +import TradePanelCrossMargin from 'sections/futures/Trade/TradePanelCrossMargin' import DelayedOrderConfirmationModal from 'sections/futures/TradeConfirmation/DelayedOrderConfirmationModal' import TradeConfirmationModalCrossMargin from 'sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin' import WithdrawSmartMargin from 'sections/futures/TradeSmartMargin/WithdrawSmartMargin' @@ -28,11 +30,12 @@ import AppLayout from 'sections/shared/Layout/AppLayout' import { setOpenModal } from 'state/app/reducer' import { selectShowModal, selectShowPositionModal } from 'state/app/selectors' import { clearTradeInputs } from 'state/futures/actions' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { AppFuturesMarginType } from 'state/futures/common/types' import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' +import { selectShowCrossMarginOnboard } from 'state/futures/crossMargin/selectors' import { usePollMarketFuturesData } from 'state/futures/hooks' import { setFuturesAccountType } from 'state/futures/reducer' -import { selectFuturesType, selectMarketAsset } from 'state/futures/selectors' import { setMarketAsset } from 'state/futures/smartMargin/reducer' import { selectShowSmartMarginOnboard, @@ -43,9 +46,6 @@ import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { PageContent } from 'styles/common' import media from 'styles/media' -import CreatePerpsV3AccountModal from 'sections/futures/CreatePerpsV3AccountModal' -import { selectShowCrossMarginOnboard } from 'state/futures/crossMargin/selectors' -import TradePanelCrossMargin from 'sections/futures/Trade/TradePanelCrossMargin' type MarketComponent = FC & { getLayout: (page: ReactNode) => JSX.Element } diff --git a/packages/app/src/sections/dashboard/FuturesHistoryTable.tsx b/packages/app/src/sections/dashboard/FuturesHistoryTable.tsx index 3cdd08dab0..f3584d7b01 100644 --- a/packages/app/src/sections/dashboard/FuturesHistoryTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesHistoryTable.tsx @@ -27,11 +27,8 @@ import useSelectedPriceCurrency from 'hooks/useSelectedPriceCurrency' import TradeDrawer from 'sections/futures/MobileTrade/drawers/TradeDrawer' import PositionType from 'sections/futures/PositionType' import { TradeStatus } from 'sections/futures/types' -import { - selectAllUsersTrades, - selectFuturesType, - selectQueryStatuses, -} from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectAllUsersTrades, selectQueryStatuses } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { getMarketName } from 'utils/futures' diff --git a/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx b/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx index cff632f755..40c46ab5c7 100644 --- a/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx @@ -19,12 +19,8 @@ import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' import Spacer from 'components/Spacer' import Table, { TableHeader } from 'components/Table' import ROUTES from 'constants/routes' -import { - selectFuturesType, - selectMarkets, - selectMarketVolumes, - selectMarkPrices, -} from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectMarkets, selectMarketVolumes, selectMarkPrices } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' import { selectPreviousDayPrices, selectOffchainPricesInfo } from 'state/prices/selectors' import { getSynthDescription } from 'utils/futures' diff --git a/packages/app/src/sections/dashboard/PortfolioChart.tsx b/packages/app/src/sections/dashboard/PortfolioChart.tsx index e5e034500b..518dcba05a 100644 --- a/packages/app/src/sections/dashboard/PortfolioChart.tsx +++ b/packages/app/src/sections/dashboard/PortfolioChart.tsx @@ -17,10 +17,10 @@ import { MobileHiddenView, MobileOnlyView } from 'components/Media' import { Body, NumericValue, Heading } from 'components/Text' import { DEFAULT_FUTURES_MARGIN_TYPE } from 'constants/defaults' import ROUTES from 'constants/routes' +import { selectFuturesType } from 'state/futures/common/selectors' import { selectBuyingPower, selectFuturesPortfolio, - selectFuturesType, selectPortfolioChartData, selectSelectedPortfolioTimeframe, selectTotalUnrealizedPnl, diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx index a061dfdabb..d5ed045ab0 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx @@ -24,8 +24,9 @@ import { Body } from 'components/Text' import { previewErrorI18n } from 'queries/futures/constants' import { setShowPositionModal } from 'state/app/reducer' import { selectTransaction } from 'state/app/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' import { submitCrossMarginReducePositionOrder } from 'state/futures/crossMargin/actions' -import { selectFuturesType, selectSubmittingFuturesTx } from 'state/futures/selectors' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' import { editClosePositionPrice, editClosePositionSizeDelta, diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 0fbb0cc71b..3d389874d7 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -9,6 +9,7 @@ import ErrorView from 'components/ErrorView' import Loader from 'components/Loader' import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' +import { createPerpsV3Account } from 'state/futures/crossMargin/actions' import { selectCrossMarginAccount, selectCrossMarginSupportedNetwork, @@ -24,7 +25,6 @@ import { useAppDispatch, useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import CrossMarginFAQ from './SmartMarginOnboard/SmartMarginFAQ' -import { createPerpsV3Account } from 'state/futures/crossMargin/actions' type Props = { isOpen: boolean diff --git a/packages/app/src/sections/futures/FundingChart.tsx b/packages/app/src/sections/futures/FundingChart.tsx index 398adf7b1b..5a5541ea04 100644 --- a/packages/app/src/sections/futures/FundingChart.tsx +++ b/packages/app/src/sections/futures/FundingChart.tsx @@ -13,7 +13,8 @@ import styled, { css } from 'styled-components' import { useTheme } from 'styled-components' import { fetchFundingRatesHistory } from 'state/futures/actions' -import { selectHistoricalFundingRatePeriod, selectMarketAsset } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectHistoricalFundingRatePeriod } from 'state/futures/selectors' import { useAppSelector, usePollAction } from 'state/hooks' import FundingChartTooltip, { formatFundingRate } from './FundingChartTooltip' diff --git a/packages/app/src/sections/futures/LeverageInput.tsx b/packages/app/src/sections/futures/LeverageInput.tsx index 7b5f269158..ed989e3207 100644 --- a/packages/app/src/sections/futures/LeverageInput.tsx +++ b/packages/app/src/sections/futures/LeverageInput.tsx @@ -14,12 +14,11 @@ import NumericInput from 'components/Input/NumericInput' import { FlexDivCol, FlexDivRow } from 'components/layout/flex' import { DEFAULT_FIAT_DECIMALS } from 'constants/defaults' import { editTradeSizeInput } from 'state/futures/actions' +import { selectFuturesType, selectMarketIndexPrice } from 'state/futures/common/selectors' import { selectLeverageInput, - selectMarketIndexPrice, selectMaxLeverage, selectPosition, - selectFuturesType, selectTradeSizeInputsDisabled, } from 'state/futures/selectors' import { setSmartMarginLeverageInput } from 'state/futures/smartMargin/reducer' diff --git a/packages/app/src/sections/futures/MarketDetails/MarketDetails.tsx b/packages/app/src/sections/futures/MarketDetails/MarketDetails.tsx index 4d44296b78..11a1e91c8b 100644 --- a/packages/app/src/sections/futures/MarketDetails/MarketDetails.tsx +++ b/packages/app/src/sections/futures/MarketDetails/MarketDetails.tsx @@ -10,8 +10,8 @@ import { FlexDivCol, FlexDivRow, FlexDivRowCentered } from 'components/layout/fl import { Body } from 'components/Text' import { NO_VALUE } from 'constants/placeholder' import useWindowSize from 'hooks/useWindowSize' +import { selectMarketAsset } from 'state/futures/common/selectors' import { - selectMarketAsset, selectMarketInfo, selectMarketPriceInfo, selectSelectedInputHours, diff --git a/packages/app/src/sections/futures/MarketInfo/MarketHead.tsx b/packages/app/src/sections/futures/MarketInfo/MarketHead.tsx index 41389d71eb..701fe91056 100644 --- a/packages/app/src/sections/futures/MarketInfo/MarketHead.tsx +++ b/packages/app/src/sections/futures/MarketInfo/MarketHead.tsx @@ -3,7 +3,8 @@ import Head from 'next/head' import { FC } from 'react' import { useTranslation } from 'react-i18next' -import { selectMarketAsset, selectSkewAdjustedPrice } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectSkewAdjustedPrice } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' const MarketHead: FC = () => { diff --git a/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx b/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx index 27f25b8c45..fcdf8f3bbf 100644 --- a/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/OverviewTabs/AccountTab.tsx @@ -5,7 +5,7 @@ import MarketInfoBox from 'sections/futures/MarketInfoBox' import { Pane, SectionHeader, SectionTitle } from 'sections/futures/mobile' import MarketActions from 'sections/futures/Trade/MarketActions' import MarginInfoBox from 'sections/futures/TradeSmartMargin/SmartMarginInfoBox' -import { selectFuturesType } from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' import { useAppSelector } from 'state/hooks' const AccountTab: React.FC = () => { diff --git a/packages/app/src/sections/futures/MobileTrade/PositionDetails.tsx b/packages/app/src/sections/futures/MobileTrade/PositionDetails.tsx index 56796039f5..b22eb9e844 100644 --- a/packages/app/src/sections/futures/MobileTrade/PositionDetails.tsx +++ b/packages/app/src/sections/futures/MobileTrade/PositionDetails.tsx @@ -3,7 +3,8 @@ import styled from 'styled-components' import FuturesPositionsTable from 'sections/dashboard/FuturesPositionsTable' import { SectionHeader, SectionSeparator, SectionTitle } from 'sections/futures/mobile' -import { selectFuturesType, selectPosition } from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectPosition } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' const PositionDetails = () => { diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx index 84d6beafbb..8412332475 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/ConditionalOrdersTab.tsx @@ -13,7 +13,8 @@ import { Body } from 'components/Text' import { NO_VALUE } from 'constants/placeholder' import PositionType from 'sections/futures/PositionType' import ConditionalOrdersWarning from 'sections/futures/UserInfo/ConditionalOrdersWarning' -import { selectAllConditionalOrders, selectMarketAsset } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectAllConditionalOrders } from 'state/futures/selectors' import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' import { selectCancellingConditionalOrder } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx index 427ea428fd..1fb8a9fefd 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/OrdersTab.tsx @@ -15,7 +15,8 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' -import { selectMarketAsset, selectMarkets, selectIsExecutingOrder } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectMarkets, selectIsExecutingOrder } from 'state/futures/selectors' import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx index 848743731b..43329c5c41 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx @@ -20,11 +20,10 @@ import PositionType from 'sections/futures/PositionType' import ShareModal from 'sections/futures/ShareModal' import EditPositionButton from 'sections/futures/UserInfo/EditPositionButton' import { setShowPositionModal } from 'state/app/reducer' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, - selectFuturesType, - selectMarketAsset, selectMarkets, selectMarkPrices, selectPositionHistory, diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx index 21f0169e60..4b653ae1de 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/TradesTab.tsx @@ -11,12 +11,8 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import TimeDisplay from 'sections/futures/Trades/TimeDisplay' import { TradeStatus } from 'sections/futures/types' -import { - selectAllTradesForAccountType, - selectFuturesType, - selectMarketAsset, - selectQueryStatuses, -} from 'state/futures/selectors' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' +import { selectAllTradesForAccountType, selectQueryStatuses } from 'state/futures/selectors' import { fetchAllV2TradesForAccount } from 'state/futures/smartMargin/actions' import { useAppSelector, useFetchAction } from 'state/hooks' import { FetchStatus } from 'state/types' diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx index 2b4b519e74..37a3032c0d 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/TransfersTab.tsx @@ -9,11 +9,8 @@ import Table, { TableHeader, TableNoResults } from 'components/Table' import { Body } from 'components/Text' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' -import { - selectFuturesType, - selectMarketMarginTransfers, - selectQueryStatuses, -} from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectMarketMarginTransfers, selectQueryStatuses } from 'state/futures/selectors' import { selectIdleMarginTransfers } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' diff --git a/packages/app/src/sections/futures/OrderSizing/DenominationToggle.tsx b/packages/app/src/sections/futures/OrderSizing/DenominationToggle.tsx index 5791576702..f1f4fe03a9 100644 --- a/packages/app/src/sections/futures/OrderSizing/DenominationToggle.tsx +++ b/packages/app/src/sections/futures/OrderSizing/DenominationToggle.tsx @@ -3,8 +3,9 @@ import { memo, useCallback } from 'react' import SwitchAssetArrows from 'assets/svg/futures/switch-arrows.svg' import InputButton from 'components/Input/InputButton' +import { selectMarketAsset } from 'state/futures/common/selectors' import { setSelectedInputDenomination } from 'state/futures/reducer' -import { selectMarketAsset, selectSelectedInputDenomination } from 'state/futures/selectors' +import { selectSelectedInputDenomination } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' export const DenominationToggle = memo(() => { diff --git a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx index 452de00cc8..c00fcc86fb 100644 --- a/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx +++ b/packages/app/src/sections/futures/OrderSizing/OrderSizing.tsx @@ -9,19 +9,17 @@ import InputHeaderRow from 'components/Input/InputHeaderRow' import InputTitle, { InputTitleSpan } from 'components/Input/InputTitle' import NumericInput from 'components/Input/NumericInput' import { editTradeSizeInput } from 'state/futures/actions' +import { selectMarketIndexPrice } from 'state/futures/common/selectors' import { - selectMarketIndexPrice, selectPosition, selectSelectedInputDenomination, selectMaxUsdSizeInput, selectLeverageSide, selectAvailableOi, selectTradeSizeInputsDisabled, + selectTradeSizeInputs, + selectTradePrice, } from 'state/futures/selectors' -import { - selectSmartMarginOrderPrice, - selectSmartMarginTradeInputs, -} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { DenominationToggle } from './DenominationToggle' @@ -33,11 +31,11 @@ type OrderSizingProps = { const OrderSizing: React.FC = memo(({ isMobile }) => { const dispatch = useAppDispatch() - const { susdSizeString, nativeSizeString } = useAppSelector(selectSmartMarginTradeInputs) + const { susdSizeString, nativeSizeString } = useAppSelector(selectTradeSizeInputs) const position = useAppSelector(selectPosition) const marketAssetRate = useAppSelector(selectMarketIndexPrice) - const orderPrice = useAppSelector(selectSmartMarginOrderPrice) + const orderPrice = useAppSelector(selectTradePrice) const assetInputType = useAppSelector(selectSelectedInputDenomination) const maxUsdInputAmount = useAppSelector(selectMaxUsdSizeInput) const tradeSide = useAppSelector(selectLeverageSide) diff --git a/packages/app/src/sections/futures/ProfitCalculator/ProfitCalculator.tsx b/packages/app/src/sections/futures/ProfitCalculator/ProfitCalculator.tsx index fbb89722ad..1f4d7a00cd 100644 --- a/packages/app/src/sections/futures/ProfitCalculator/ProfitCalculator.tsx +++ b/packages/app/src/sections/futures/ProfitCalculator/ProfitCalculator.tsx @@ -6,7 +6,7 @@ import styled from 'styled-components' import BaseModal from 'components/BaseModal' import PositionButtons from 'sections/futures/PositionButtons' -import { selectMarketAsset, selectMarketIndexPrice } from 'state/futures/selectors' +import { selectMarketAsset, selectMarketIndexPrice } from 'state/futures/common/selectors' import { useAppSelector } from 'state/hooks' import { getMarketName } from 'utils/futures' diff --git a/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx b/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx index 156b3a1dd9..c14287b580 100644 --- a/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx +++ b/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx @@ -5,7 +5,7 @@ import { FC, useMemo } from 'react' import styled from 'styled-components' import CurrencyIcon from 'components/Currency/CurrencyIcon' -import { selectMarketAsset } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' import { SharePositionParams } from 'state/futures/types' import { useAppSelector } from 'state/hooks' import media from 'styles/media' diff --git a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx index fd07156285..3c3f3c2929 100644 --- a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx @@ -22,6 +22,10 @@ import { depositCrossMarginMargin, withdrawCrossMargin, } from 'state/futures/crossMargin/actions' +import { + selectCrossMarginAvailableMargin, + selectDepositAllowances, +} from 'state/futures/crossMargin/selectors' import { selectIsApprovingCrossDeposit, selectIsolatedTransferError, @@ -29,10 +33,6 @@ import { selectPosition, } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' -import { - selectCrossMarginAvailableMargin, - selectDepositAllowances, -} from 'state/futures/crossMargin/selectors' type Props = { onDismiss(): void diff --git a/packages/app/src/sections/futures/Trade/ManagePosition.tsx b/packages/app/src/sections/futures/Trade/ManagePosition.tsx index 9b0fb3f741..4220f97ba1 100644 --- a/packages/app/src/sections/futures/Trade/ManagePosition.tsx +++ b/packages/app/src/sections/futures/Trade/ManagePosition.tsx @@ -11,14 +11,13 @@ import { ERROR_MESSAGES } from 'components/ErrorNotifier' import Error from 'components/ErrorView' import { previewErrorI18n } from 'queries/futures/constants' import { setOpenModal } from 'state/app/reducer' +import { selectFuturesType, selectMarketIndexPrice } from 'state/futures/common/selectors' import { setTradePanelDrawerOpen } from 'state/futures/reducer' import { selectMarketInfo, selectIsMarketCapReached, - selectMarketIndexPrice, selectPlaceOrderTranslationKey, selectMaxLeverage, - selectFuturesType, selectLeverageSide, selectPendingDelayedOrder, selectMaxUsdSizeInput, diff --git a/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx b/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx index 19a26d95d3..623d73acd8 100644 --- a/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx +++ b/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx @@ -30,11 +30,10 @@ import { zIndex } from 'constants/ui' import useClickOutside from 'hooks/useClickOutside' import useLocalStorage from 'hooks/useLocalStorage' import { selectShowBanner } from 'state/app/selectors' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { - selectMarketAsset, selectMarkets, selectMarketsQueryStatus, - selectFuturesType, selectMarketInfo, selectMarkPriceInfos, } from 'state/futures/selectors' diff --git a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx index 7e3a4e35c7..b457d9c7e7 100644 --- a/packages/app/src/sections/futures/Trade/SLTPInputs.tsx +++ b/packages/app/src/sections/futures/Trade/SLTPInputs.tsx @@ -12,11 +12,8 @@ import { StyledCaretDownIcon } from 'components/Select' import SelectorButtons from 'components/SelectorButtons' import Spacer from 'components/Spacer' import { selectAckedOrdersWarning } from 'state/app/selectors' -import { - selectLeverageInput, - selectLeverageSide, - selectMarketIndexPrice, -} from 'state/futures/selectors' +import { selectMarketIndexPrice } from 'state/futures/common/selectors' +import { selectLeverageInput, selectLeverageSide } from 'state/futures/selectors' import { setSmartMarginTradeStopLoss, setSmartMarginTradeTakeProfit, diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalance.tsx index daf593dbbf..75ea9283d5 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalance.tsx @@ -16,8 +16,8 @@ import useWindowSize from 'hooks/useWindowSize' import { setOpenModal } from 'state/app/reducer' import { selectShowModal } from 'state/app/selectors' import { selectSNXUSDBalance } from 'state/balances/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' import { selectCrossMarginAvailableMargin } from 'state/futures/crossMargin/selectors' -import { selectFuturesType } from 'state/futures/selectors' import { selectIdleMargin, selectLockedMarginInMarkets, diff --git a/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx index 20ba6cf5a0..3571edf861 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalanceCrossMargin.tsx @@ -12,12 +12,12 @@ import { Body, NumericValue } from 'components/Text' import useWindowSize from 'hooks/useWindowSize' import { setOpenModal } from 'state/app/reducer' import { selectSNXUSDBalance } from 'state/balances/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' import { selectCrossMarginAccount, selectCrossMarginAvailableMargin, selectWithdrawableCrossMargin, } from 'state/futures/crossMargin/selectors' -import { selectFuturesType } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import PencilButton from '../../../components/Button/PencilButton' diff --git a/packages/app/src/sections/futures/Trade/TradePanel.tsx b/packages/app/src/sections/futures/Trade/TradePanel.tsx index 5a59ac0f25..d2e396692a 100644 --- a/packages/app/src/sections/futures/Trade/TradePanel.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanel.tsx @@ -5,10 +5,15 @@ import styled, { css } from 'styled-components' import Error from 'components/ErrorView' import Spacer from 'components/Spacer' import { selectAckedOrdersWarning } from 'state/app/selectors' -import { selectFuturesType, selectLeverageSide } from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectLeverageSide } from 'state/futures/selectors' import { changeLeverageSide } from 'state/futures/smartMargin/actions' import { setOrderType } from 'state/futures/smartMargin/reducer' -import { selectOrderType } from 'state/futures/smartMargin/selectors' +import { + selectOrderType, + selectSmartMarginOrderPrice, + selectSmartMarginTradeInputs, +} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { selectPricesConnectionError } from 'state/prices/selectors' @@ -40,6 +45,8 @@ const TradePanel: FC = memo(({ mobile, closeDrawer }) => { const orderType = useAppSelector(selectOrderType) const pricesConnectionError = useAppSelector(selectPricesConnectionError) const hideOrderWarning = useAppSelector(selectAckedOrdersWarning) + const { susdSizeString, nativeSizeString } = useAppSelector(selectSmartMarginTradeInputs) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) const [showOrderWarning, setShowOrderWarning] = useState(false) diff --git a/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx index 9d1e03cc16..1040a9202c 100644 --- a/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx @@ -4,6 +4,7 @@ import styled, { css } from 'styled-components' import Error from 'components/ErrorView' import { changeCrossMarginLeverageSide } from 'state/futures/crossMargin/actions' +import { selectCrossMarginTradeInputs } from 'state/futures/crossMargin/selectors' import { selectLeverageSide } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { selectPricesConnectionError } from 'state/prices/selectors' @@ -16,7 +17,6 @@ import PositionButtons from '../PositionButtons' import CloseOnlyPrompt from './CloseOnlyPrompt' import ManagePosition from './ManagePosition' import MarketsDropdown from './MarketsDropdown' -import TradeBalance from './TradeBalance' import TradeBalanceCrossMargin from './TradeBalanceCrossMargin' type Props = { diff --git a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx index 556d0cc847..d1a9e625e7 100644 --- a/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanelPriceInput.tsx @@ -1,6 +1,7 @@ import { ChangeEvent, useCallback } from 'react' -import { selectLeverageSide, selectMarketIndexPrice } from 'state/futures/selectors' +import { selectMarketIndexPrice } from 'state/futures/common/selectors' +import { selectLeverageSide } from 'state/futures/selectors' import { editTradeOrderPrice } from 'state/futures/smartMargin/actions' import { selectOrderType, selectSmartMarginOrderPrice } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' diff --git a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx index 5b3feafb62..c9e9acd54b 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx @@ -21,12 +21,12 @@ import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { setOpenModal } from 'state/app/reducer' +import { selectMarketAsset } from 'state/futures/common/selectors' import { submitCrossMarginOrder } from 'state/futures/crossMargin/actions' import { selectCrossMarginTradeInputs } from 'state/futures/crossMargin/selectors' import { selectIsModifyingIsolatedPosition, selectLeverageSide, - selectMarketAsset, selectMarketInfo, selectModifyPositionError, selectNextPriceDisclaimer, diff --git a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx index 1623f45015..5ae1687fa6 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/TradeConfirmationModal.tsx @@ -21,12 +21,8 @@ import { ButtonLoader } from 'components/Loader' import Spacer from 'components/Spacer' import Tooltip from 'components/Tooltip/Tooltip' import { NO_VALUE } from 'constants/placeholder' -import { - selectLeverageSide, - selectMarketAsset, - selectPosition, - selectLeverageInput, -} from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectLeverageSide, selectPosition, selectLeverageInput } from 'state/futures/selectors' import { refetchTradePreview, submitSmartMarginOrder } from 'state/futures/smartMargin/actions' import { selectKeeperDepositExceedsBal, diff --git a/packages/app/src/sections/futures/Trades/Trades.tsx b/packages/app/src/sections/futures/Trades/Trades.tsx index d70bc76f96..75105c4ff0 100644 --- a/packages/app/src/sections/futures/Trades/Trades.tsx +++ b/packages/app/src/sections/futures/Trades/Trades.tsx @@ -14,12 +14,8 @@ import { blockExplorer } from 'containers/Connector/Connector' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' -import { - selectAllTradesForAccountType, - selectFuturesType, - selectMarketAsset, - selectQueryStatuses, -} from 'state/futures/selectors' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' +import { selectAllTradesForAccountType, selectQueryStatuses } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' import { ExternalLink } from 'styles/common' diff --git a/packages/app/src/sections/futures/TradingHistory/SkewInfo.tsx b/packages/app/src/sections/futures/TradingHistory/SkewInfo.tsx index 62e0e10ffd..75a08cbc55 100644 --- a/packages/app/src/sections/futures/TradingHistory/SkewInfo.tsx +++ b/packages/app/src/sections/futures/TradingHistory/SkewInfo.tsx @@ -6,7 +6,8 @@ import styled from 'styled-components' import { Body } from 'components/Text' import Tooltip from 'components/Tooltip/Tooltip' -import { selectMarketAsset, selectMarketInfo } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectMarketInfo } from 'state/futures/selectors' import { useAppSelector } from 'state/hooks' import OpenInterestBar from './OpenInterestBar' diff --git a/packages/app/src/sections/futures/Transfers.tsx b/packages/app/src/sections/futures/Transfers.tsx index 04cb22e0bb..78eca3a969 100644 --- a/packages/app/src/sections/futures/Transfers.tsx +++ b/packages/app/src/sections/futures/Transfers.tsx @@ -10,11 +10,8 @@ import { Body } from 'components/Text' import { blockExplorer } from 'containers/Connector/Connector' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' -import { - selectFuturesType, - selectMarketMarginTransfers, - selectQueryStatuses, -} from 'state/futures/selectors' +import { selectFuturesType } from 'state/futures/common/selectors' +import { selectMarketMarginTransfers, selectQueryStatuses } from 'state/futures/selectors' import { selectIdleMarginTransfers } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { FetchStatus } from 'state/types' diff --git a/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx b/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx index 8a874c6bcd..3b6ef52bb2 100644 --- a/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/ConditionalOrdersTable.tsx @@ -14,7 +14,8 @@ import { CustomFontLabel } from 'components/Text/CustomFontLabel' import { NO_VALUE } from 'constants/placeholder' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' -import { selectMarketAsset, selectAllConditionalOrders } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' +import { selectAllConditionalOrders } from 'state/futures/selectors' import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' import { selectCancellingConditionalOrder } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' diff --git a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx index 477081928c..34716f9a9e 100644 --- a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx @@ -14,10 +14,10 @@ import useInterval from 'hooks/useInterval' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' +import { selectMarketAsset } from 'state/futures/common/selectors' import { selectIsCancellingOrder, selectIsExecutingOrder, - selectMarketAsset, selectMarkets, } from 'state/futures/selectors' import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' diff --git a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx index 9230ff80c8..53805adc0b 100644 --- a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx @@ -20,11 +20,10 @@ import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import useWindowSize from 'hooks/useWindowSize' import PositionType from 'sections/futures/PositionType' import { setShowPositionModal } from 'state/app/reducer' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' import { selectSmartMarginPositions, - selectFuturesType, - selectMarketAsset, selectMarkets, selectMarkPrices, selectPositionHistory, diff --git a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx index 2bd3dbb806..42c2d052a3 100644 --- a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx +++ b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx @@ -13,11 +13,10 @@ import Spacer from 'components/Spacer' import { TabPanel } from 'components/Tab' import ROUTES from 'constants/routes' import useWindowSize from 'hooks/useWindowSize' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { selectActiveSmartPositionsCount, selectActiveCrossMarginPositionsCount, - selectFuturesType, - selectMarketAsset, selectPosition, selectAllConditionalOrders, } from 'state/futures/selectors' diff --git a/packages/app/src/sections/shared/Layout/AppLayout/Header/Nav.tsx b/packages/app/src/sections/shared/Layout/AppLayout/Header/Nav.tsx index e2d2eea177..3c5cfb1d71 100644 --- a/packages/app/src/sections/shared/Layout/AppLayout/Header/Nav.tsx +++ b/packages/app/src/sections/shared/Layout/AppLayout/Header/Nav.tsx @@ -12,7 +12,7 @@ import LabelContainer from 'components/Nav/DropDownLabel' import Select from 'components/Select' import { DropdownIndicator, IndicatorSeparator } from 'components/Select' import Tooltip from 'components/Tooltip/Tooltip' -import { selectMarketAsset } from 'state/futures/selectors' +import { selectMarketAsset } from 'state/futures/common/selectors' import { useAppSelector } from 'state/hooks' import { linkCSS } from 'styles/common' import media from 'styles/media' diff --git a/packages/app/src/state/balances/actions.ts b/packages/app/src/state/balances/actions.ts index b6fa3ced57..fd127cd57c 100644 --- a/packages/app/src/state/balances/actions.ts +++ b/packages/app/src/state/balances/actions.ts @@ -1,12 +1,12 @@ import { SynthV3Asset, SynthV3BalancesAndAllowances } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' +import { notifyError } from 'components/ErrorNotifier' import type { ThunkConfig } from 'state/store' import { serializeBalances, serializeV3Balances } from 'utils/balances' import { ZERO_BALANCES } from './reducer' import { BalancesActionReturn } from './types' -import { notifyError } from 'components/ErrorNotifier' export const fetchBalances = createAsyncThunk, void, ThunkConfig>( 'balances/fetchBalances', diff --git a/packages/app/src/state/balances/reducer.ts b/packages/app/src/state/balances/reducer.ts index 52f8bf6a6f..bd49c3c57a 100644 --- a/packages/app/src/state/balances/reducer.ts +++ b/packages/app/src/state/balances/reducer.ts @@ -1,10 +1,10 @@ +import { SynthV3Asset } from '@kwenta/sdk/types' import { createSlice } from '@reduxjs/toolkit' import { FetchStatus } from 'state/types' import { fetchBalances, fetchV3BalancesAndAllowances } from './actions' import { BalancesState } from './types' -import { SynthV3Asset } from '@kwenta/sdk/dist/types' export const ZERO_BALANCES = { synthBalances: [], diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index aed7424ff7..10e6f3c96d 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -21,6 +21,7 @@ import { selectNetwork } from 'state/wallet/selectors' import { serializePositionHistory } from 'utils/futures' import { refetchWithComparator } from 'utils/queries' +import { selectFuturesType } from './common/selectors' import { AppFuturesMarginType } from './common/types' import { selectFuturesAccount, selectMarketInfo, selectPosition } from './selectors' import { @@ -129,8 +130,13 @@ export const clearTradeInputs = createAsyncThunk( export const editTradeSizeInput = (size: string, currencyType: 'usd' | 'native'): AppThunk => - (dispatch) => { - dispatch(editSmartMarginTradeSize(size, currencyType)) + (dispatch, getState) => { + const type = selectFuturesType(getState()) + if (type === FuturesMarginType.CROSS_MARGIN) { + dispatch(editSmartMarginTradeSize(size, currencyType)) + } else { + dispatch(editSmartMarginTradeSize(size, currencyType)) + } } export const fetchFuturesPositionHistory = createAsyncThunk( diff --git a/packages/app/src/state/futures/common/selectors.ts b/packages/app/src/state/futures/common/selectors.ts new file mode 100644 index 0000000000..920b699198 --- /dev/null +++ b/packages/app/src/state/futures/common/selectors.ts @@ -0,0 +1,29 @@ +import { FuturesMarginType } from '@kwenta/sdk/types' +import { createSelector } from '@reduxjs/toolkit' +import { wei } from '@synthetixio/wei' + +import { selectPrices } from 'state/prices/selectors' +import { RootState } from 'state/store' + +export const selectFuturesType = (state: RootState) => state.futures.selectedType + +export const selectFuturesState = createSelector( + selectFuturesType, + (state: RootState) => state, + (type, state) => (type === FuturesMarginType.CROSS_MARGIN ? state.crossMargin : state.smartMargin) +) + +export const selectMarketAsset = createSelector( + selectFuturesState, + (state) => state.selectedMarketAsset +) + +export const selectMarketIndexPrice = createSelector( + selectMarketAsset, + selectPrices, + (marketAsset, prices) => { + const price = prices[marketAsset] + // Note this assumes the order type is always delayed off chain + return price?.offChain ?? price?.onChain ?? wei(0) + } +) diff --git a/packages/app/src/state/futures/common/types.ts b/packages/app/src/state/futures/common/types.ts index 814fbb1fdf..9e7c441f2a 100644 --- a/packages/app/src/state/futures/common/types.ts +++ b/packages/app/src/state/futures/common/types.ts @@ -84,18 +84,25 @@ export type EditPositionInputs = { export type PreviewAction = 'edit' | 'trade' | 'close' -export type TradePreviewParams = { +export type CrossMarginTradePreviewParams = { market: { key: FuturesMarketKey address: string } orderPrice: Wei sizeDelta: Wei - marginDelta: Wei action: PreviewAction } -export type DebouncedPreviewParams = TradePreviewParams & { +export type SmartMarginTradePreviewParams = CrossMarginTradePreviewParams & { + marginDelta: Wei +} + +export type DebouncedSMPreviewParams = SmartMarginTradePreviewParams & { + debounceCount: number +} + +export type DebouncedCMPreviewParams = CrossMarginTradePreviewParams & { debounceCount: number } diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 5d3943640d..40691dc542 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -8,15 +8,23 @@ import { SynthV3Asset, TransactionStatus, } from '@kwenta/sdk/types' +import { floorNumber } from '@kwenta/sdk/utils' import { createAsyncThunk } from '@reduxjs/toolkit' -import Wei from '@synthetixio/wei' +import Wei, { wei } from '@synthetixio/wei' import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' import { monitorAndAwaitTransaction } from 'state/app/helpers' import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' import { fetchV3BalancesAndAllowances } from 'state/balances/actions' -import { selectMarketInfo, selectMarkets } from 'state/futures/selectors' +import { ZERO_STATE_TRADE_INPUTS } from 'state/constants' +import { + selectLeverageSide, + selectMarketInfo, + selectMarkets, + selectTradePrice, +} from 'state/futures/selectors' +import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { @@ -28,27 +36,34 @@ import { } from 'utils/futures' import logError from 'utils/logError' +import { selectMarketIndexPrice } from '../common/selectors' import { AppFuturesMarginType, - DebouncedPreviewParams, + CrossMarginTradePreviewParams, + DebouncedCMPreviewParams, + DebouncedSMPreviewParams, DelayedOrderWithDetails, } from '../common/types' import { + incrementPreviewCrossMarginCount, + setCrossMarginLeverageInput, setCrossMarginLeverageSide, + setCrossMarginTradeInputs, + setCrossMarginTradePreview, setPerpsV3Account, setPerpsV3MarketProxyAddress, } from './reducer' import { selectAccountContext, selectCrossMarginAccount, + selectCrossMarginAvailableMargin, selectCrossMarginSupportedNetwork, selectCrossMarginTradeInputs, selectOpenDelayedOrdersV3, + selectV3MarketInfo, selectV3Markets, } from './selectors' -import { editCrossMarginTradeSize } from '../smartMargin/actions' -import { AppThunk } from 'state/store' export const fetchMarketsV3 = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, @@ -214,14 +229,14 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< export const fetchCrossMarginTradePreview = createAsyncThunk< void, - DebouncedPreviewParams, + DebouncedCMPreviewParams, ThunkConfig >('futures/fetchCrossMarginTradePreview', async () => { // TODO: Fetch cross margin trade preview }) export const debouncedPrepareCrossMarginTradePreview = debounce( - (dispatch, inputs: DebouncedPreviewParams) => { + (dispatch, inputs: DebouncedCMPreviewParams) => { dispatch(fetchCrossMarginTradePreview(inputs)) }, 500 @@ -269,6 +284,59 @@ export const clearTradeInputs = createAsyncThunk( } ) +export const editCrossMarginTradeSize = + (size: string, currencyType: 'usd' | 'native'): AppThunk => + (dispatch, getState) => { + const indexPrice = selectMarketIndexPrice(getState()) + const tradeSide = selectLeverageSide(getState()) + const marketInfo = selectV3MarketInfo(getState()) + const availableMargin = selectCrossMarginAvailableMargin(getState()) + + if (!marketInfo) throw new Error('No market selected') + + if (size === '' || indexPrice.eq(0)) { + dispatch(setCrossMarginTradeInputs(ZERO_STATE_TRADE_INPUTS)) + dispatch(setCrossMarginTradePreview({ preview: null, type: 'trade' })) + dispatch(setCrossMarginLeverageInput('')) + return + } + + const nativeSize = + currencyType === 'native' ? size : String(floorNumber(wei(size).div(indexPrice), 4)) + const usdSize = currencyType === 'native' ? String(floorNumber(indexPrice.mul(size), 4)) : size + const leverage = availableMargin?.gt(0) ? wei(usdSize).div(availableMargin.abs()) : '0' + const sizeDeltaWei = + tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() + dispatch( + setCrossMarginTradeInputs({ + susdSize: usdSize, + nativeSize: nativeSize, + }) + ) + dispatch(setCrossMarginLeverageInput(leverage.toString(2))) + dispatch( + stageCrossMarginTradePreview({ + market: { + key: marketInfo.marketKey, + address: marketInfo.market, + }, + orderPrice: indexPrice, + sizeDelta: sizeDeltaWei, + action: 'trade', + }) + ) + } + +const stageCrossMarginTradePreview = createAsyncThunk< + void, + CrossMarginTradePreviewParams, + ThunkConfig +>('futures/stageCrossMarginTradePreview', async (inputs, { dispatch, getState }) => { + dispatch(incrementPreviewCrossMarginCount()) + const debounceCount = getState().crossMargin.previewDebounceCount + debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) +}) + export const changeCrossMarginLeverageSide = (side: PositionSide): AppThunk => (dispatch, getState) => { diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index 9398287baf..44c52c8210 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -107,7 +107,7 @@ const crossMarginSlice = createSlice({ setCrossMarginLeverageSide: (state, action) => { state.leverageSide = action.payload }, - setTradeInputs: (state, action: PayloadAction>) => { + setCrossMarginTradeInputs: (state, action: PayloadAction>) => { state.tradeInputs = action.payload }, setEditPositionInputs: (state, action: PayloadAction>) => { @@ -122,7 +122,7 @@ const crossMarginSlice = createSlice({ setTradeFee: (state, action: PayloadAction) => { state.tradeFee = action.payload }, - setLeverageInput: (state, action: PayloadAction) => { + setCrossMarginLeverageInput: (state, action: PayloadAction) => { state.leverageInput = action.payload }, setPerpsV3MarketProxyAddress: (state, action: PayloadAction) => { @@ -162,7 +162,7 @@ const crossMarginSlice = createSlice({ } } }, - setTradePreview: ( + setCrossMarginTradePreview: ( state, { payload, @@ -181,7 +181,7 @@ const crossMarginSlice = createSlice({ } state.queryStatuses.tradePreview = DEFAULT_QUERY_STATUS }, - incrementPreviewCount: (state) => { + incrementPreviewCrossMarginCount: (state) => { state.previewDebounceCount = state.previewDebounceCount + 1 }, setSelectedPortfolioTimeframe: (state, action: PayloadAction) => { @@ -360,7 +360,7 @@ export const { setMarketAsset, setClosePositionSizeDelta, setCrossMarginLeverageSide, - setLeverageInput, + setCrossMarginLeverageInput, clearAllTradePreviews, setSelectedInputDenomination, setSelectedInputFundingRateHour, @@ -369,6 +369,9 @@ export const { setSelectedChart, setPerpsV3Account, setPerpsV3MarketProxyAddress, + setCrossMarginTradeInputs, + setCrossMarginTradePreview, + incrementPreviewCrossMarginCount, } = crossMarginSlice.actions const findWalletForAccount = ( diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 6ff1bd8b6e..c34e675f73 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -3,6 +3,7 @@ import { MarketKeyByAsset } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' +import { selectSynthV3Balances } from 'state/balances/selectors' import { selectPrices } from 'state/prices/selectors' import { RootState } from 'state/store' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -15,7 +16,6 @@ import { } from 'utils/futures' import { MarkPrices } from './types' -import { selectSynthV3Balances } from 'state/balances/selectors' export const selectV3MarketKey = createSelector( (state: RootState) => state.crossMargin.selectedMarketAsset, diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index 688d326750..19bc014b81 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -13,9 +13,9 @@ import { import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' +import { QueryStatus } from 'state/types' import { FuturesAccountData, FuturesQueryStatuses, TradeSizeInputs } from '../common/types' -import { QueryStatus } from 'state/types' export type EditPositionInputs = { nativeSizeDelta: T diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index 249877f297..302e311689 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -24,7 +24,8 @@ import { fetchSharedFuturesData, fetchMarginTransfers, } from './actions' -import { selectFuturesType, selectMarkets } from './selectors' +import { selectFuturesType } from './common/selectors' +import { selectMarkets } from './selectors' import { fetchAllV2TradesForAccount, fetchFuturesFees, diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index adc8676b9d..ee550b87b0 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -14,9 +14,11 @@ import { ETH_UNIT } from 'constants/network' import { selectAllCrossMarginTrades, selectCrossMarginAccountData, + selectCrossMarginAvailableMargin, selectCrossMarginMarginTransfers, selectCrossMarginPositionHistory, selectCrossMarginPositions, + selectCrossMarginTradeInputs, selectV3MarketInfo, selectV3MarketKey, selectV3Markets, @@ -38,6 +40,7 @@ import { unserializeConditionalOrders, } from 'utils/futures' +import { selectFuturesState, selectFuturesType, selectMarketAsset } from './common/selectors' import { CrossPerpsPortfolio } from './crossMargin/types' import { selectIdleMarginTransfers, @@ -51,6 +54,9 @@ import { selectTradePreview, selectV2MarketInfo, selectV2MarketKey, + selectSmartMarginTradeInputs, + selectSmartMarginOrderPrice, + selectMarketIndexPrice, } from './smartMargin/selectors' import { SmartPerpsPortfolio } from './smartMargin/types' import { @@ -61,14 +67,6 @@ import { PortfolioValues, } from './types' -export const selectFuturesType = (state: RootState) => state.futures.selectedType - -export const selectFuturesState = createSelector( - selectFuturesType, - (state: RootState) => state, - (type, state) => (type === FuturesMarginType.CROSS_MARGIN ? state.crossMargin : state.smartMargin) -) - export const selectQueryStatuses = createSelector( selectFuturesState, (state) => state.queryStatuses @@ -96,11 +94,6 @@ export const selectAccountData = createSelector( type === FuturesMarginType.SMART_MARGIN ? smartAccountData : crossAccountData ) -export const selectMarketAsset = createSelector( - selectFuturesState, - (state) => state.selectedMarketAsset -) - export const selectMarkets = createSelector( selectFuturesType, selectV2Markets, @@ -138,16 +131,6 @@ export const selectMarketInfo = createSelector( } ) -export const selectMarketIndexPrice = createSelector( - selectMarketAsset, - selectPrices, - (marketAsset, prices) => { - const price = prices[marketAsset] - // Note this assumes the order type is always delayed off chain - return price?.offChain ?? price?.onChain ?? wei(0) - } -) - export const selectMarketPriceInfo = createSelector( selectMarketInfo, selectOffchainPricesInfo, @@ -535,14 +518,32 @@ export const selectSelectedInputDenomination = (state: RootState) => export const selectSelectedInputHours = (state: RootState) => state.futures.selectedInputHours +export const selectTradeSizeInputs = createSelector( + selectFuturesType, + selectCrossMarginTradeInputs, + selectSmartMarginTradeInputs, + (type, crossInputs, smartInputs) => { + return type === FuturesMarginType.CROSS_MARGIN ? crossInputs : smartInputs + } +) + +export const selectTradePrice = createSelector( + selectFuturesType, + selectSmartMarginOrderPrice, + selectMarketIndexPrice, + (type, orderPrice, indexPrice) => { + return type === FuturesMarginType.CROSS_MARGIN ? indexPrice : wei(orderPrice || 0) + } +) + export const selectTradeSizeInputsDisabled = createSelector( selectMarginDeltaInputValue, selectFuturesType, - selectPosition, - (marginDeltaInput, selectedAccountType, position) => { + selectCrossMarginAvailableMargin, + (marginDeltaInput, selectedAccountType, availableMargin) => { const remaining = selectedAccountType === FuturesMarginType.CROSS_MARGIN - ? position?.remainingMargin || ZERO_WEI + ? availableMargin || ZERO_WEI : wei(marginDeltaInput || 0) return remaining.lte(0) } diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts index b349210a6b..2a213a00ce 100644 --- a/packages/app/src/state/futures/smartMargin/actions.ts +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -69,10 +69,10 @@ import { refetchWithComparator } from 'utils/queries' import { AccountContext, - DebouncedPreviewParams, + DebouncedSMPreviewParams, DelayedOrderWithDetails, PreviewAction, - TradePreviewParams, + SmartMarginTradePreviewParams, } from '../common/types' import { @@ -339,7 +339,7 @@ export const fetchSmartMarginOpenOrders = createAsyncThunk< export const fetchSmartMarginTradePreview = createAsyncThunk< { preview: FuturesPotentialTradeDetails | null; type: PreviewAction }, - DebouncedPreviewParams, + DebouncedSMPreviewParams, ThunkConfig >( 'futures/fetchSmartMarginTradePreview', @@ -458,7 +458,7 @@ export const editCrossMarginTradeMarginDelta = ) } -export const editCrossMarginTradeSize = +export const editSmartMarginTradeSize = (size: string, currencyType: 'usd' | 'native'): AppThunk => (dispatch, getState) => { const indexPrice = selectMarketIndexPrice(getState()) @@ -547,7 +547,7 @@ export const editClosePositionSizeDelta = const market = getMarketDetailsByKey(getState, marketKey) const smartMarginPrice = isNaN(Number(price)) || !price ? marketPrice : wei(price) const odrderPrice = smartMarginPrice - const previewParams: TradePreviewParams = { + const previewParams: SmartMarginTradePreviewParams = { market, sizeDelta: wei(nativeSizeDelta), orderPrice: odrderPrice, @@ -642,21 +642,16 @@ export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { ) } -const stageCrossMarginTradePreview = createAsyncThunk( - 'futures/stageCrossMarginTradePreview', - async (inputs, { dispatch, getState }) => { - dispatch(calculateSmartMarginFees(inputs)) - dispatch(incrementCrossPreviewCount()) - const debounceCount = selectSmartMarginPreviewCount(getState()) - debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) - } -) - -export const editSmartMarginTradeSize = - (size: string, currencyType: 'usd' | 'native'): AppThunk => - (dispatch) => { - dispatch(editCrossMarginTradeSize(size, currencyType)) - } +const stageCrossMarginTradePreview = createAsyncThunk< + void, + SmartMarginTradePreviewParams, + ThunkConfig +>('futures/stageCrossMarginTradePreview', async (inputs, { dispatch, getState }) => { + dispatch(calculateSmartMarginFees(inputs)) + dispatch(incrementCrossPreviewCount()) + const debounceCount = selectSmartMarginPreviewCount(getState()) + debouncedPrepareCrossMarginTradePreview(dispatch, { ...inputs, debounceCount }) +}) export const changeLeverageSide = (side: PositionSide): AppThunk => @@ -667,7 +662,7 @@ export const changeLeverageSide = } export const debouncedPrepareCrossMarginTradePreview = debounce( - (dispatch, inputs: DebouncedPreviewParams) => { + (dispatch, inputs: DebouncedSMPreviewParams) => { dispatch(fetchSmartMarginTradePreview(inputs)) }, 500 @@ -685,7 +680,7 @@ export const editTradeOrderPrice = dispatch(setSmartMarginOrderPriceInvalidLabel(invalidLabel)) if (!invalidLabel && price && inputs.susdSize) { // Recalc the trade - dispatch(editCrossMarginTradeSize(inputs.susdSizeString, 'usd')) + dispatch(editSmartMarginTradeSize(inputs.susdSizeString, 'usd')) } } @@ -770,7 +765,7 @@ export const fetchAllV2TradesForAccount = createAsyncThunk< }) export const calculateSmartMarginFees = - (params: TradePreviewParams): AppThunk => + (params: SmartMarginTradePreviewParams): AppThunk => (dispatch, getState) => { const markets = selectV2Markets(getState()) const market = markets.find((m) => m.marketKey === params.market.key) From c16a4ba835976dce792695b15a749eea35b0297c Mon Sep 17 00:00:00 2001 From: Oluwakorede Fashokun Date: Wed, 19 Jul 2023 15:59:30 -0400 Subject: [PATCH 14/43] Add TSDoc --- packages/sdk/package.json | 1 + pnpm-lock.yaml | 59 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 205562ee65..048b0b0d9c 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -70,6 +70,7 @@ "@types/bn.js": "^5.1.1", "@types/lodash": "^4.14.195", "typechain": "^8.2.0", + "typedoc": "^0.24.8", "typescript": "^5.1.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df7224591c..beb0af02ef 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -439,6 +439,9 @@ importers: typechain: specifier: ^8.2.0 version: 8.2.0(typescript@5.1.3) + typedoc: + specifier: ^0.24.8 + version: 0.24.8(typescript@5.1.3) typescript: specifier: ^5.1.3 version: 5.1.3 @@ -8375,6 +8378,10 @@ packages: engines: {node: '>=12'} dev: true + /ansi-sequence-parser@1.1.0: + resolution: {integrity: sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==} + dev: true + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -14177,6 +14184,10 @@ packages: engines: {node: '>=6'} hasBin: true + /jsonc-parser@3.2.0: + resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + dev: true + /jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} optionalDependencies: @@ -14549,6 +14560,10 @@ packages: dependencies: yallist: 4.0.0 + /lunr@2.3.9: + resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} + dev: true + /lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true @@ -14588,6 +14603,12 @@ packages: react: 18.2.0 dev: true + /marked@4.3.0: + resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==} + engines: {node: '>= 12'} + hasBin: true + dev: true + /match-sorter@6.3.1: resolution: {integrity: sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==} dependencies: @@ -14757,6 +14778,13 @@ packages: brace-expansion: 2.0.1 dev: true + /minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} + dependencies: + brace-expansion: 2.0.1 + dev: true + /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -17345,6 +17373,15 @@ packages: rechoir: 0.6.2 dev: true + /shiki@0.14.3: + resolution: {integrity: sha512-U3S/a+b0KS+UkTyMjoNojvTgrBHjgp7L6ovhFVZsXmBGnVdQ4K4U9oK0z63w538S91ATngv1vXigHCSWOwnr+g==} + dependencies: + ansi-sequence-parser: 1.1.0 + jsonc-parser: 3.2.0 + vscode-oniguruma: 1.7.0 + vscode-textmate: 8.0.0 + dev: true + /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: @@ -18393,6 +18430,20 @@ packages: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} dev: true + /typedoc@0.24.8(typescript@5.1.3): + resolution: {integrity: sha512-ahJ6Cpcvxwaxfu4KtjA8qZNqS43wYt6JL27wYiIgl1vd38WW/KWX11YuAeZhuz9v+ttrutSsgK+XO1CjL1kA3w==} + engines: {node: '>= 14.14'} + hasBin: true + peerDependencies: + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x + dependencies: + lunr: 2.3.9 + marked: 4.3.0 + minimatch: 9.0.3 + shiki: 0.14.3 + typescript: 5.1.3 + dev: true + /typescript@5.1.3: resolution: {integrity: sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==} engines: {node: '>=14.17'} @@ -18767,6 +18818,14 @@ packages: engines: {node: '>=0.10.0'} dev: false + /vscode-oniguruma@1.7.0: + resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} + dev: true + + /vscode-textmate@8.0.0: + resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} + dev: true + /w3c-hr-time@1.0.2: resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} deprecated: Use your platform's native performance.now() and performance.timeOrigin. From 5f0d112377d76e648c0cf561b1e17c8db79821da Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Thu, 20 Jul 2023 09:07:40 +0100 Subject: [PATCH 15/43] Submit v3 order --- packages/app/src/pages/market.tsx | 2 +- .../EditStopLossAndTakeProfitModal.tsx | 2 +- .../FeeInfoBox/ClosePositionFeeInfo.tsx | 2 +- .../FeeInfoBox/CrossMarginTradeFees.tsx | 29 +++ .../FeeInfoBox/EditPositionFeeInfo.tsx | 2 +- .../FeeInfoBox/{FeesRow.tsx => FeeRows.tsx} | 8 +- ...alFeesRow.tsx => SmartMarginTradeFees.tsx} | 8 +- .../Trade/CrossMarginTradePanelPreview.tsx | 27 +++ .../sections/futures/Trade/PreviewRows.tsx | 34 +++ .../SmartMarginTradePanelPreview.tsx} | 47 +--- .../futures/Trade/SubmitCrossMarginTrade.tsx | 218 ++++++++++++++++++ .../src/sections/futures/Trade/TradePanel.tsx | 5 +- .../futures/Trade/TradePanelCrossMargin.tsx | 8 +- ...l.tsx => CrossMarginOrderConfirmation.tsx} | 52 ++--- packages/app/src/state/futures/actions.ts | 8 +- .../src/state/futures/crossMargin/actions.ts | 103 +++++++-- .../src/state/futures/crossMargin/reducer.ts | 26 ++- .../state/futures/crossMargin/selectors.ts | 38 ++- .../src/state/futures/crossMargin/types.ts | 22 +- packages/app/src/state/futures/selectors.ts | 46 +--- .../state/futures/smartMargin/selectors.ts | 16 +- packages/app/src/utils/futures.ts | 30 +++ packages/sdk/src/constants/perpsv3.ts | 14 ++ packages/sdk/src/queries/perpsV3.ts | 31 ++- packages/sdk/src/services/perpsV3.ts | 79 ++++--- packages/sdk/src/utils/futures.ts | 4 + 26 files changed, 659 insertions(+), 202 deletions(-) create mode 100644 packages/app/src/sections/futures/FeeInfoBox/CrossMarginTradeFees.tsx rename packages/app/src/sections/futures/FeeInfoBox/{FeesRow.tsx => FeeRows.tsx} (94%) rename packages/app/src/sections/futures/FeeInfoBox/{TradeTotalFeesRow.tsx => SmartMarginTradeFees.tsx} (88%) create mode 100644 packages/app/src/sections/futures/Trade/CrossMarginTradePanelPreview.tsx create mode 100644 packages/app/src/sections/futures/Trade/PreviewRows.tsx rename packages/app/src/sections/futures/{FeeInfoBox/TradePanelFeeInfo.tsx => Trade/SmartMarginTradePanelPreview.tsx} (80%) create mode 100644 packages/app/src/sections/futures/Trade/SubmitCrossMarginTrade.tsx rename packages/app/src/sections/futures/TradeConfirmation/{DelayedOrderConfirmationModal.tsx => CrossMarginOrderConfirmation.tsx} (83%) diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index dc13b56325..6053b6f1e5 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -23,7 +23,7 @@ import DepositWithdrawCrossMarginModal from 'sections/futures/Trade/DepositWithd import FuturesUnsupportedNetwork from 'sections/futures/Trade/FuturesUnsupported' import TradePanel from 'sections/futures/Trade/TradePanel' import TradePanelCrossMargin from 'sections/futures/Trade/TradePanelCrossMargin' -import DelayedOrderConfirmationModal from 'sections/futures/TradeConfirmation/DelayedOrderConfirmationModal' +import DelayedOrderConfirmationModal from 'sections/futures/TradeConfirmation/CrossMarginOrderConfirmation' import TradeConfirmationModalCrossMargin from 'sections/futures/TradeConfirmation/TradeConfirmationModalCrossMargin' import WithdrawSmartMargin from 'sections/futures/TradeSmartMargin/WithdrawSmartMargin' import AppLayout from 'sections/shared/Layout/AppLayout' diff --git a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx index 7f2960a09e..906e18ced6 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx @@ -32,7 +32,7 @@ import { } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' -import { KeeperDepositRow } from '../FeeInfoBox/FeesRow' +import { KeeperDepositRow } from '../FeeInfoBox/FeeRows' import PositionType from '../PositionType' import OrderAcknowledgement from '../Trade/OrderAcknowledgement' import ShowPercentage from '../Trade/ShowPercentage' diff --git a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx index 2481533300..c93d14d6a9 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx @@ -9,7 +9,7 @@ import { } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' -import FeesRow from './FeesRow' +import FeesRow from './FeeRows' const ClosePositionFeeInfo = memo(() => { const tradePreview = useAppSelector(selectClosePositionPreview) diff --git a/packages/app/src/sections/futures/FeeInfoBox/CrossMarginTradeFees.tsx b/packages/app/src/sections/futures/FeeInfoBox/CrossMarginTradeFees.tsx new file mode 100644 index 0000000000..986c6e5a3a --- /dev/null +++ b/packages/app/src/sections/futures/FeeInfoBox/CrossMarginTradeFees.tsx @@ -0,0 +1,29 @@ +import { ZERO_WEI } from '@kwenta/sdk/constants' +import { memo } from 'react' + +import { + selectCrossMarginTradePreview, + selectV3MarketInfo, +} from 'state/futures/crossMargin/selectors' +import { useAppSelector } from 'state/hooks' + +import FeeRows from './FeeRows' + +const CrossMarginTradeFees = memo(() => { + const tradePreview = useAppSelector(selectCrossMarginTradePreview) + const marketInfo = useAppSelector(selectV3MarketInfo) + + return ( + + ) +}) + +export default CrossMarginTradeFees diff --git a/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx b/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx index 3fbde1746c..e924dbc08b 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/EditPositionFeeInfo.tsx @@ -9,7 +9,7 @@ import { } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' -import FeesRow from './FeesRow' +import FeesRow from './FeeRows' const EditPositionFeeInfo = memo(() => { const tradePreview = useAppSelector(selectEditPositionPreview) diff --git a/packages/app/src/sections/futures/FeeInfoBox/FeesRow.tsx b/packages/app/src/sections/futures/FeeInfoBox/FeeRows.tsx similarity index 94% rename from packages/app/src/sections/futures/FeeInfoBox/FeesRow.tsx rename to packages/app/src/sections/futures/FeeInfoBox/FeeRows.tsx index 34b009f5bd..e3bd1910cc 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/FeesRow.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/FeeRows.tsx @@ -95,12 +95,12 @@ type FeeRates = { type FeesRowProps = { tradeFee: Wei orderType: SmartMarginOrderType - smartMarginKeeperDeposit: Wei + smartMarginKeeperDeposit?: Wei executionFee: Wei rates: FeeRates } -const FeesRow = memo( +const FeeRows = memo( ({ tradeFee, smartMarginKeeperDeposit, orderType, executionFee, rates }: FeesRowProps) => { const [expanded, toggleExpanded] = useReducer((s) => !s, false) @@ -118,7 +118,7 @@ const FeesRow = memo( > - {(orderType === 'limit' || orderType === 'stop_market') && ( + {(orderType === 'limit' || orderType === 'stop_market') && smartMarginKeeperDeposit && ( )} @@ -126,7 +126,7 @@ const FeesRow = memo( } ) -export default FeesRow +export default FeeRows const StyledHelpIcon = styled(HelpIcon)` margin-left: 4px; diff --git a/packages/app/src/sections/futures/FeeInfoBox/TradeTotalFeesRow.tsx b/packages/app/src/sections/futures/FeeInfoBox/SmartMarginTradeFees.tsx similarity index 88% rename from packages/app/src/sections/futures/FeeInfoBox/TradeTotalFeesRow.tsx rename to packages/app/src/sections/futures/FeeInfoBox/SmartMarginTradeFees.tsx index a139625f1e..57753cdd15 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/TradeTotalFeesRow.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/SmartMarginTradeFees.tsx @@ -9,16 +9,16 @@ import { } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' -import FeesRow from './FeesRow' +import FeeRows from './FeeRows' -const TradeTotalFeesRow = memo(() => { +const SmartMarginTradeFees = memo(() => { const tradePreview = useAppSelector(selectTradePreview) const marketInfo = useAppSelector(selectMarketInfo) const keeperEthDeposit = useAppSelector(selectSmartMarginKeeperDeposit) const orderType = useAppSelector(selectOrderType) return ( - { ) }) -export default TradeTotalFeesRow +export default SmartMarginTradeFees diff --git a/packages/app/src/sections/futures/Trade/CrossMarginTradePanelPreview.tsx b/packages/app/src/sections/futures/Trade/CrossMarginTradePanelPreview.tsx new file mode 100644 index 0000000000..7b59390074 --- /dev/null +++ b/packages/app/src/sections/futures/Trade/CrossMarginTradePanelPreview.tsx @@ -0,0 +1,27 @@ +import React, { memo } from 'react' +import styled from 'styled-components' + +import { selectCrossMarginTradePreview } from 'state/futures/crossMargin/selectors' +import { useAppSelector } from 'state/hooks' + +import CrossMarginTradeFees from '../FeeInfoBox/CrossMarginTradeFees' + +import { PriceImpactRow, FillPriceRow } from './PreviewRows' + +export const CrossMarginTradePanelPreview = memo(() => { + const preview = useAppSelector(selectCrossMarginTradePreview) + + return ( + + + + + + ) +}) + +const FeeInfoBoxContainer = styled.div` + margin-bottom: 16px; +` + +export default CrossMarginTradePanelPreview diff --git a/packages/app/src/sections/futures/Trade/PreviewRows.tsx b/packages/app/src/sections/futures/Trade/PreviewRows.tsx new file mode 100644 index 0000000000..33bcb016fd --- /dev/null +++ b/packages/app/src/sections/futures/Trade/PreviewRows.tsx @@ -0,0 +1,34 @@ +import { formatDollars, formatPercent } from '@kwenta/sdk/utils' +import Wei from '@synthetixio/wei' +import { memo } from 'react' + +import { InfoBoxRow } from 'components/InfoBox' +import { NO_VALUE } from 'constants/placeholder' + +export const LiquidationRow = memo(({ liqPrice }: { liqPrice?: Wei | undefined }) => { + return ( + + ) +}) + +export const PriceImpactRow = memo(({ priceImpact }: { priceImpact: Wei | undefined }) => { + return ( + + ) +}) + +export const FillPriceRow = memo(({ fillPrice }: { fillPrice: Wei | undefined }) => { + return ( + + ) +}) diff --git a/packages/app/src/sections/futures/FeeInfoBox/TradePanelFeeInfo.tsx b/packages/app/src/sections/futures/Trade/SmartMarginTradePanelPreview.tsx similarity index 80% rename from packages/app/src/sections/futures/FeeInfoBox/TradePanelFeeInfo.tsx rename to packages/app/src/sections/futures/Trade/SmartMarginTradePanelPreview.tsx index 8a60c13eb9..0b555deca7 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/TradePanelFeeInfo.tsx +++ b/packages/app/src/sections/futures/Trade/SmartMarginTradePanelPreview.tsx @@ -20,14 +20,18 @@ import { } from 'state/staking/selectors' import { selectWallet } from 'state/wallet/selectors' -import TradeTotalFeesRow from './TradeTotalFeesRow' +import SmartMarginTradeFees from '../FeeInfoBox/SmartMarginTradeFees' + +import { LiquidationRow, PriceImpactRow } from './PreviewRows' + +export const SmartMarginTradePanelPreview = memo(() => { + const potentialTradeDetails = useAppSelector(selectTradePreview) -export const TradePanelFeeInfo = memo(() => { return ( - - - + + + ) @@ -82,37 +86,6 @@ const TradingRewardRow = memo(() => { ) }) -const LiquidationRow = memo(() => { - const potentialTradeDetails = useAppSelector(selectTradePreview) - - return ( - - ) -}) - -const PriceImpactRow = memo(() => { - const potentialTradeDetails = useAppSelector(selectTradePreview) - - return ( - - ) -}) - const FeeInfoBoxContainer = styled.div` margin-bottom: 16px; ` @@ -135,4 +108,4 @@ const CompactBox = styled.div<{ $isEligible: boolean }>` `} ` -export default TradePanelFeeInfo +export default SmartMarginTradePanelPreview diff --git a/packages/app/src/sections/futures/Trade/SubmitCrossMarginTrade.tsx b/packages/app/src/sections/futures/Trade/SubmitCrossMarginTrade.tsx new file mode 100644 index 0000000000..853326ba39 --- /dev/null +++ b/packages/app/src/sections/futures/Trade/SubmitCrossMarginTrade.tsx @@ -0,0 +1,218 @@ +import { ZERO_WEI } from '@kwenta/sdk/constants' +import { FuturesMarginType } from '@kwenta/sdk/types' +import { isZero } from '@kwenta/sdk/utils' +import { wei } from '@synthetixio/wei' +import React, { useCallback, useMemo } from 'react' +import { useTranslation } from 'react-i18next' +import styled from 'styled-components' + +import Button from 'components/Button' +import { ERROR_MESSAGES } from 'components/ErrorNotifier' +import Error from 'components/ErrorView' +import { previewErrorI18n } from 'queries/futures/constants' +import { setOpenModal } from 'state/app/reducer' +import { selectMarketIndexPrice } from 'state/futures/common/selectors' +import { + selectCrossMarginAccount, + selectCrossMarginTradeInputs, + selectV3MarketInfo, +} from 'state/futures/crossMargin/selectors' +import { setTradePanelDrawerOpen } from 'state/futures/reducer' +import { + selectIsMarketCapReached, + selectPlaceOrderTranslationKey, + selectMaxLeverage, + selectLeverageSide, + selectPendingDelayedOrder, + selectMaxUsdSizeInput, + selectMarketPriceInfo, + selectPosition, +} from 'state/futures/selectors' +import { + selectOrderType, + selectSmartMarginLeverage, + selectSmartMarginOrderPrice, + selectTradePreview, + selectTradePreviewError, + selectTradePreviewStatus, +} from 'state/futures/smartMargin/selectors' +import { useAppDispatch, useAppSelector } from 'state/hooks' +import { FetchStatus } from 'state/types' +import { orderPriceInvalidLabel } from 'utils/futures' + +const SubmitCrossMarginTradeButton: React.FC = () => { + const { t } = useTranslation() + const dispatch = useAppDispatch() + + const { susdSize } = useAppSelector(selectCrossMarginTradeInputs) + const maxLeverageValue = useAppSelector(selectMaxLeverage) + const previewTrade = useAppSelector(selectTradePreview) + const previewError = useAppSelector(selectTradePreviewError) + const leverage = useAppSelector(selectSmartMarginLeverage) + const orderType = useAppSelector(selectOrderType) + const openOrder = useAppSelector(selectPendingDelayedOrder) + const leverageSide = useAppSelector(selectLeverageSide) + const maxUsdInputAmount = useAppSelector(selectMaxUsdSizeInput) + const isMarketCapReached = useAppSelector(selectIsMarketCapReached) + const placeOrderTranslationKey = useAppSelector(selectPlaceOrderTranslationKey) + const orderPrice = useAppSelector(selectSmartMarginOrderPrice) + const marketAssetRate = useAppSelector(selectMarketIndexPrice) + const marketInfo = useAppSelector(selectV3MarketInfo) + const indexPrice = useAppSelector(selectMarketPriceInfo) + const previewStatus = useAppSelector(selectTradePreviewStatus) + const crossMarginAccount = useAppSelector(selectCrossMarginAccount) + const position = useAppSelector(selectPosition) + + const orderError = useMemo(() => { + if (previewError) return t(previewErrorI18n(previewError)) + if (previewTrade?.statusMessage && previewTrade.statusMessage !== 'Success') + return previewTrade?.statusMessage + return null + }, [previewTrade?.statusMessage, previewError, t]) + + const increasingPosition = !position?.position?.side || position?.position?.side === leverageSide + + const onSubmit = useCallback(() => { + dispatch(setTradePanelDrawerOpen(false)) + if (!crossMarginAccount) { + dispatch(setOpenModal('futures_cross_margin_onboard')) + return + } + dispatch(setOpenModal('futures_confirm_cross_margin_trade')) + }, [crossMarginAccount, dispatch]) + + // TODO: Clean up errors and warnings and share logic with smart margin + + const placeOrderDisabledReason = useMemo<{ + message: string + show?: 'warn' | 'error' + } | null>(() => { + if (orderError) { + return { message: orderError, show: 'error' } + } + const maxLeverage = marketInfo?.appMaxLeverage ?? wei(1) + + const indexPriceWei = indexPrice?.price ?? ZERO_WEI + const canLiquidate = + (previewTrade?.size.gt(0) && indexPriceWei.lt(previewTrade?.liqPrice)) || + (previewTrade?.size.lt(0) && indexPriceWei.gt(previewTrade?.liqPrice)) + if (canLiquidate) { + return { + show: 'warn', + message: `Position can be liquidated`, + } + } + + if (leverage.gt(maxLeverageValue)) + return { + show: 'warn', + message: `Max leverage ${maxLeverage.toString(0)}x exceeded`, + } + if (marketInfo?.isSuspended) + return { + show: 'warn', + message: `Market suspended`, + } + if (isMarketCapReached && increasingPosition) + return { + show: 'warn', + message: `Open interest limit exceeded`, + } + + const invalidReason = orderPriceInvalidLabel( + orderPrice, + leverageSide, + marketAssetRate, + orderType + ) + + if ((orderType === 'limit' || orderType === 'stop_market') && !!invalidReason) + return { + show: 'warn', + message: invalidReason, + } + if (susdSize.gt(maxUsdInputAmount)) + return { + show: 'warn', + message: 'Max trade size exceeded', + } + if (placeOrderTranslationKey === 'futures.market.trade.button.deposit-margin-minimum') + return { + show: 'warn', + message: 'Min $50 margin required', + } + + if (isZero(susdSize)) { + return { message: 'Trade size required' } + } + if (orderType === 'market' && !!openOrder && !openOrder.isStale) { + return { + show: 'warn', + message: ERROR_MESSAGES.ORDER_PENDING, + } + } + + return null + }, [ + susdSize, + orderType, + openOrder, + orderError, + orderPrice, + leverageSide, + marketAssetRate, + marketInfo?.isSuspended, + placeOrderTranslationKey, + maxUsdInputAmount, + isMarketCapReached, + increasingPosition, + previewStatus, + maxLeverageValue, + leverage, + indexPrice, + previewTrade, + marketInfo?.appMaxLeverage, + ]) + + return ( + <> +
+ + + {t(placeOrderTranslationKey)} + + +
+ + {placeOrderDisabledReason?.show ? ( + + ) : null} + + ) +} + +const ManagePositionContainer = styled.div` + display: flex; + grid-gap: 15px; + margin-bottom: 16px; +` + +const PlaceOrderButton = styled(Button)` + font-size: 16px; + height: 55px; + text-align: center; + white-space: normal; +` + +export default SubmitCrossMarginTradeButton diff --git a/packages/app/src/sections/futures/Trade/TradePanel.tsx b/packages/app/src/sections/futures/Trade/TradePanel.tsx index d2e396692a..4e29fd2500 100644 --- a/packages/app/src/sections/futures/Trade/TradePanel.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanel.tsx @@ -17,7 +17,6 @@ import { import { useAppDispatch, useAppSelector } from 'state/hooks' import { selectPricesConnectionError } from 'state/prices/selectors' -import TradePanelFeeInfo from '../FeeInfoBox/TradePanelFeeInfo' import LeverageInput from '../LeverageInput' import MarginInput from '../MarginInput' import OrderSizing from '../OrderSizing' @@ -29,6 +28,7 @@ import MarketsDropdown from './MarketsDropdown' import OrderAcknowledgement from './OrderAcknowledgement' import OrderTypeSelector from './OrderTypeSelector' import SLTPInputs from './SLTPInputs' +import SmartMarginTradePanelPreview from './SmartMarginTradePanelPreview' import TradeBalance from './TradeBalance' import OrderPriceInput from './TradePanelPriceInput' @@ -121,8 +121,7 @@ const TradePanel: FC = memo(({ mobile, closeDrawer }) => { {accountType === FuturesMarginType.SMART_MARGIN && } - - + )} diff --git a/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx index 1040a9202c..5dee2057ce 100644 --- a/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/TradePanelCrossMargin.tsx @@ -9,14 +9,14 @@ import { selectLeverageSide } from 'state/futures/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { selectPricesConnectionError } from 'state/prices/selectors' -import TradePanelFeeInfo from '../FeeInfoBox/TradePanelFeeInfo' import LeverageInput from '../LeverageInput' import OrderSizing from '../OrderSizing' import PositionButtons from '../PositionButtons' import CloseOnlyPrompt from './CloseOnlyPrompt' -import ManagePosition from './ManagePosition' +import CrossMarginTradePanelPreview from './CrossMarginTradePanelPreview' import MarketsDropdown from './MarketsDropdown' +import SubmitCrossMarginTradeButton from './SubmitCrossMarginTrade' import TradeBalanceCrossMargin from './TradeBalanceCrossMargin' type Props = { @@ -67,8 +67,8 @@ const TradePanelCrossMargin: FC = memo(({ mobile, closeDrawer }) => { - - + + )} diff --git a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx similarity index 83% rename from packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx rename to packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx index c9e9acd54b..67422ee98b 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/DelayedOrderConfirmationModal.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx @@ -23,16 +23,19 @@ import Tooltip from 'components/Tooltip/Tooltip' import { setOpenModal } from 'state/app/reducer' import { selectMarketAsset } from 'state/futures/common/selectors' import { submitCrossMarginOrder } from 'state/futures/crossMargin/actions' -import { selectCrossMarginTradeInputs } from 'state/futures/crossMargin/selectors' import { - selectIsModifyingIsolatedPosition, + selectCrossMarginTradeInputs, + selectCrossMarginTradePreview, + selectV3MarketInfo, +} from 'state/futures/crossMargin/selectors' +import { selectLeverageSide, selectMarketInfo, selectModifyPositionError, selectNextPriceDisclaimer, selectPosition, + selectSubmittingFuturesTx, } from 'state/futures/selectors' -import { selectOrderType, selectTradePreview } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { getKnownError } from 'utils/formatters/error' @@ -41,7 +44,7 @@ import BaseDrawer from '../MobileTrade/drawers/BaseDrawer' import TradeConfirmationRow from './TradeConfirmationRow' import TradeConfirmationSummary from './TradeConfirmationSummary' -const DelayedOrderConfirmationModal: FC = () => { +const CrossMarginOrderConfirmationModal: FC = () => { const { t } = useTranslation() const isDisclaimerDisplayed = useAppSelector(selectNextPriceDisclaimer) const dispatch = useAppDispatch() @@ -50,11 +53,10 @@ const DelayedOrderConfirmationModal: FC = () => { const txError = useAppSelector(selectModifyPositionError) const leverageSide = useAppSelector(selectLeverageSide) const position = useAppSelector(selectPosition) - const marketInfo = useAppSelector(selectMarketInfo) + const marketInfo = useAppSelector(selectV3MarketInfo) const marketAsset = useAppSelector(selectMarketAsset) - const submitting = useAppSelector(selectIsModifyingIsolatedPosition) - const potentialTradeDetails = useAppSelector(selectTradePreview) - const orderType = useAppSelector(selectOrderType) + const submitting = useAppSelector(selectSubmittingFuturesTx) + const preview = useAppSelector(selectCrossMarginTradePreview) const positionSize = useMemo(() => { const positionDetails = position?.position @@ -72,31 +74,25 @@ const DelayedOrderConfirmationModal: FC = () => { }, [orderDetails]) const totalDeposit = useMemo(() => { - return (potentialTradeDetails?.fee ?? ZERO_WEI).add(marketInfo?.keeperDeposit ?? ZERO_WEI) - }, [potentialTradeDetails?.fee, marketInfo?.keeperDeposit]) + return (preview?.fee ?? ZERO_WEI).add(preview?.settlementFee ?? ZERO_WEI) + }, [preview?.fee, preview?.settlementFee]) const dataRows = useMemo( () => [ { label: t('futures.market.user.position.modal.estimated-fill'), tooltipContent: t('futures.market.trade.delayed-order.description'), - value: formatDollars(potentialTradeDetails?.price ?? ZERO_WEI, { + value: formatDollars(preview?.fillPrice ?? ZERO_WEI, { suggestDecimals: true, }), }, { label: t('futures.market.user.position.modal.estimated-price-impact'), - value: `${formatPercent(potentialTradeDetails?.priceImpact ?? ZERO_WEI)}`, - color: potentialTradeDetails?.priceImpact.abs().gt(0.45) // TODO: Make this configurable + value: `${formatPercent(preview?.priceImpact ?? ZERO_WEI)}`, + color: preview?.priceImpact?.abs().gt(0.45) // TODO: Make this configurable ? 'red' : '', }, - { - label: t('futures.market.user.position.modal.liquidation-price'), - value: formatDollars(potentialTradeDetails?.liqPrice ?? ZERO_WEI, { - suggestDecimals: true, - }), - }, { label: t('futures.market.user.position.modal.time-delay'), value: `${formatNumber(marketInfo?.settings.offchainDelayedOrderMinAge ?? ZERO_WEI, { @@ -106,14 +102,14 @@ const DelayedOrderConfirmationModal: FC = () => { { label: t('futures.market.user.position.modal.fee-estimated'), tooltipContent: t('futures.market.trade.fees.tooltip'), - value: formatDollars(potentialTradeDetails?.fee ?? ZERO_WEI, { + value: formatDollars(preview?.fee ?? ZERO_WEI, { minDecimals: 2, }), }, { label: t('futures.market.user.position.modal.keeper-deposit'), tooltipContent: t('futures.market.trade.fees.keeper-tooltip'), - value: formatDollars(marketInfo?.keeperDeposit ?? ZERO_WEI, { + value: formatDollars(preview?.settlementFee ?? ZERO_WEI, { minDecimals: 2, }), }, @@ -125,9 +121,9 @@ const DelayedOrderConfirmationModal: FC = () => { ], [ t, - potentialTradeDetails, + preview, totalDeposit, - marketInfo?.keeperDeposit, + preview?.settlementFee, marketInfo?.settings.offchainDelayedOrderMinAge, ] ) @@ -150,11 +146,11 @@ const DelayedOrderConfirmationModal: FC = () => { }, { label: t('futures.market.user.position.modal.order-type'), - value: OrderNameByType[orderType], + value: OrderNameByType['market'], }, ...dataRows, ] - }, [dataRows, marketAsset, leverageSide, orderType, orderDetails.nativeSizeDelta, t]) + }, [dataRows, marketAsset, leverageSide, orderDetails.nativeSizeDelta, t]) const onDismiss = useCallback(() => { dispatch(setOpenModal(null)) @@ -181,8 +177,8 @@ const DelayedOrderConfirmationModal: FC = () => { marketAsset={marketAsset} nativeSizeDelta={orderDetails.nativeSizeDelta} leverageSide={leverageSide} - orderType={orderType} - leverage={potentialTradeDetails?.leverage ?? ZERO_WEI} + orderType={'market'} + leverage={preview?.leverage ?? ZERO_WEI} /> {dataRows.map((row, i) => ( @@ -313,4 +309,4 @@ const StyledHelpIcon = styled(HelpIcon)` margin-bottom: -1px; ` -export default DelayedOrderConfirmationModal +export default CrossMarginOrderConfirmationModal diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index 10e6f3c96d..ec0e0d6b36 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -13,7 +13,11 @@ import { notifyError } from 'components/ErrorNotifier' import { monitorAndAwaitTransaction } from 'state/app/helpers' import { handleTransactionError, setTransaction, updateTransactionHash } from 'state/app/reducer' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { fetchMarketsV3, fetchPositionHistoryV3 } from 'state/futures/crossMargin/actions' +import { + editCrossMarginTradeSize, + fetchMarketsV3, + fetchPositionHistoryV3, +} from 'state/futures/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' @@ -133,7 +137,7 @@ export const editTradeSizeInput = (dispatch, getState) => { const type = selectFuturesType(getState()) if (type === FuturesMarginType.CROSS_MARGIN) { - dispatch(editSmartMarginTradeSize(size, currencyType)) + dispatch(editCrossMarginTradeSize(size, currencyType)) } else { dispatch(editSmartMarginTradeSize(size, currencyType)) } diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 40691dc542..58c49a9171 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -5,6 +5,7 @@ import { FuturesPositionHistory, NetworkId, PositionSide, + PotentialTradeStatus, SynthV3Asset, TransactionStatus, } from '@kwenta/sdk/types' @@ -18,12 +19,7 @@ import { monitorAndAwaitTransaction } from 'state/app/helpers' import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' import { fetchV3BalancesAndAllowances } from 'state/balances/actions' import { ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { - selectLeverageSide, - selectMarketInfo, - selectMarkets, - selectTradePrice, -} from 'state/futures/selectors' +import { selectLeverageSide, selectMarketInfo, selectMarkets } from 'state/futures/selectors' import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' @@ -41,7 +37,6 @@ import { AppFuturesMarginType, CrossMarginTradePreviewParams, DebouncedCMPreviewParams, - DebouncedSMPreviewParams, DelayedOrderWithDetails, } from '../common/types' @@ -60,10 +55,13 @@ import { selectCrossMarginAvailableMargin, selectCrossMarginSupportedNetwork, selectCrossMarginTradeInputs, + selectCrossMarginTradePreview, selectOpenDelayedOrdersV3, + selectV3MarketId, selectV3MarketInfo, selectV3Markets, } from './selectors' +import { CrossMarginTradePreview } from './types' export const fetchMarketsV3 = createAsyncThunk< { markets: FuturesMarket[]; networkId: NetworkId } | undefined, @@ -205,34 +203,66 @@ export const fetchCrossMarginOpenOrders = createAsyncThunk< void, ThunkConfig >('futures/fetchCrossMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { - const { wallet, network } = selectAccountContext(getState()) + const { accountId, network, wallet } = selectAccountContext(getState()) const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const markets = selectV3Markets(getState()) const existingOrders = selectOpenDelayedOrdersV3(getState()) - if (!wallet || !supportedNetwork || !markets.length) return + if (!accountId || !supportedNetwork || !markets.length || !wallet) return - const marketAddresses = markets.map((market) => market.market) + try { + const marketIds = markets.map((market) => market.market) + const orders: DelayedOrder[] = await sdk.perpsV3.getDelayedOrders(accountId, marketIds) - const orders: DelayedOrder[] = await sdk.futures.getDelayedOrders(wallet, marketAddresses) - const nonzeroOrders = formatDelayedOrders(orders, markets) - const orderDropped = existingOrders.length > nonzeroOrders.length - if (orderDropped) { - dispatch(fetchCrossMarginPositions()) - } + const nonzeroOrders = formatDelayedOrders(orders, markets) + const orderDropped = existingOrders.length > nonzeroOrders.length + if (orderDropped) { + dispatch(fetchCrossMarginPositions()) + } - return { - networkId: network, - orders: serializeDelayedOrders(nonzeroOrders), - wallet: wallet, + return { + networkId: network, + orders: serializeDelayedOrders(nonzeroOrders), + wallet: wallet, + } + } catch (err) { + notifyError('Failed to fetch open orders', err) + throw err } }) export const fetchCrossMarginTradePreview = createAsyncThunk< - void, + { preview: CrossMarginTradePreview; type: 'trade' }, DebouncedCMPreviewParams, ThunkConfig ->('futures/fetchCrossMarginTradePreview', async () => { +>('futures/fetchCrossMarginTradePreview', async (params, { getState, extra: { sdk } }) => { // TODO: Fetch cross margin trade preview + const marketPrice = params.orderPrice + const marketId = selectV3MarketId(getState()) + const availableMargin = selectCrossMarginAvailableMargin(getState()) + try { + if (!marketId) throw new Error('No market selected') + const preview = await sdk.perpsV3.getTradePreview(Number(marketId), params.sizeDelta) + const priceImpact = preview.fillPrice.sub(marketPrice).div(marketPrice).abs() + + const notional = preview.fillPrice.mul(params.sizeDelta).abs() + + const populatedPreview = { + settlementFee: preview.settlementFee.toString(), + marketId: Number(marketId), + fee: preview.fee.toString(), + fillPrice: preview.fillPrice.toString(), + priceImpact: priceImpact.toString(), + sizeDelta: params.sizeDelta.toString(), + leverage: notional.gt(0) ? availableMargin.div(notional).toString() : '0', + notionalValue: notional.toString(), + side: params.sizeDelta.gt(0) ? PositionSide.LONG : PositionSide.SHORT, + status: PotentialTradeStatus.OK, + } + return { preview: populatedPreview, type: 'trade' } + } catch (err) { + notifyError(err.message, err) + throw err + } }) export const debouncedPrepareCrossMarginTradePreview = debounce( @@ -307,6 +337,7 @@ export const editCrossMarginTradeSize = const leverage = availableMargin?.gt(0) ? wei(usdSize).div(availableMargin.abs()) : '0' const sizeDeltaWei = tradeSide === PositionSide.LONG ? wei(nativeSize || 0) : wei(nativeSize || 0).neg() + dispatch( setCrossMarginTradeInputs({ susdSize: usdSize, @@ -476,7 +507,33 @@ export const withdrawCrossMargin = createAsyncThunk( export const submitCrossMarginOrder = createAsyncThunk( 'futures/submitCrossMarginOrder', - async () => { + async (_, { dispatch, getState, extra: { sdk } }) => { + const { nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) + const marketId = selectV3MarketId(getState()) + const accountId = selectCrossMarginAccount(getState()) + const preview = selectCrossMarginTradePreview(getState()) + + if (!marketId || !accountId || !preview) throw new Error('Invalid order submission') + + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'submit_cross_order', + hash: null, + }) + ) + const tx = await sdk.perpsV3.submitOrder( + marketId, + accountId, + wei(nativeSizeDelta || 0), + preview.desiredFillPrice + ) + await monitorAndAwaitTransaction(dispatch, tx) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } // TODO: Handle perps v3 order submission } ) diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index 44c52c8210..ce7681f68b 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -29,11 +29,13 @@ import { fetchPerpsV3Account, fetchAvailableMargin, } from './actions' +import { fetchCrossMarginTradePreview } from './actions' import { EditPositionInputs, InputCurrencyDenomination, CrossMarginAccountData, CrossMarginState, + CrossMarginTradePreview, } from './types' export const COSS_MARGIN_INITIAL_STATE: CrossMarginState = { @@ -167,7 +169,7 @@ const crossMarginSlice = createSlice({ { payload, }: PayloadAction<{ - preview: FuturesPotentialTradeDetails | null + preview: CrossMarginTradePreview | null type: PreviewAction }> ) => { @@ -268,14 +270,20 @@ const crossMarginSlice = createSlice({ } }) - // TODO: Fetch Cross Margin Trade Preview - // builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { - // futuresState.queryStatuses.crossMarginTradePreview = LOADING_STATUS - // }) - // builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { - // futuresState.previews[payload.type] = payload.preview - // futuresState.queryStatuses.crossMarginTradePreview = SUCCESS_STATUS - // }) + // Fetch cross margin trade preview + builder.addCase(fetchCrossMarginTradePreview.pending, (futuresState) => { + futuresState.queryStatuses.tradePreview = LOADING_STATUS + }) + builder.addCase(fetchCrossMarginTradePreview.fulfilled, (futuresState, { payload }) => { + futuresState.previews[payload.type] = payload.preview + futuresState.queryStatuses.tradePreview = SUCCESS_STATUS + }) + builder.addCase(fetchCrossMarginTradePreview.rejected, (futuresState) => { + futuresState.queryStatuses.openOrders = { + status: FetchStatus.Error, + error: 'Failed to generate trade preview', + } + }) // Fetch cross margin account builder.addCase(fetchPerpsV3Account.pending, (futuresState) => { diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index c34e675f73..9fc70b4844 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -1,5 +1,9 @@ import { PositionSide, SynthV3Asset } from '@kwenta/sdk/types' -import { MarketKeyByAsset } from '@kwenta/sdk/utils' +import { + MarketKeyByAsset, + calculateDesiredFillPrice, + getDefaultPriceImpact, +} from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' @@ -15,6 +19,8 @@ import { updatePositionUpnl, } from 'utils/futures' +import { unserializeCrossMarginTradePreview } from '../../../utils/futures' + import { MarkPrices } from './types' export const selectV3MarketKey = createSelector( @@ -37,6 +43,11 @@ export const selectV3MarketInfo = createSelector( } ) +export const selectV3MarketId = createSelector( + selectV3MarketInfo, + (marketInfo) => marketInfo?.market +) + export const selectCrossMarginSupportedNetwork = (state: RootState) => // TODO: Add support for mainnet state.wallet.networkId === 420 @@ -187,3 +198,28 @@ export const selectWithdrawableCrossMargin = createSelector( return wei(0) } ) + +export const selectCrossMarginTradePreview = createSelector( + selectCrossMarginTradeInputs, + (state: RootState) => state.crossMargin.previews.trade, + ({ nativeSizeDelta }, preview) => { + const priceImpact = getDefaultPriceImpact('market') + const desiredFillPrice = calculateDesiredFillPrice( + nativeSizeDelta, + wei(preview?.fillPrice || 0), + priceImpact + ) + + const unserialized = preview ? unserializeCrossMarginTradePreview(preview) : undefined + return { + ...unserialized, + desiredFillPrice, + } + } +) + +// TODO: Correct max leverage calc for V3 +export const selectCrossMarginMaxLeverage = createSelector(selectV3MarketInfo, (market) => { + let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) + return adjustedMaxLeverage +}) diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index 19bc014b81..ca6ee96d5a 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -9,6 +9,7 @@ import { FuturesMarketAsset, FuturesFilledPosition, FuturesMarket, + PotentialTradeStatus, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' @@ -84,15 +85,30 @@ export type CrossMarginAccountData = FuturesAccountData & { availableMargin: string } +export type CrossMarginTradePreview = { + marketId: number + sizeDelta: T + fillPrice: T + fee: T + leverage: T + notionalValue: T + settlementFee: T + side: PositionSide + status: PotentialTradeStatus + showStatus?: boolean + statusMessage?: string + priceImpact: T +} + export type CrossMarginState = { markets: Record[]> tradeInputs: TradeSizeInputs editPositionInputs: EditPositionInputs orderType: 'market' previews: { - trade: FuturesPotentialTradeDetails | null - close: FuturesPotentialTradeDetails | null - edit: FuturesPotentialTradeDetails | null + trade: CrossMarginTradePreview | null + close: CrossMarginTradePreview | null + edit: CrossMarginTradePreview | null } confirmationModalOpen: boolean closePositionOrderInputs: ClosePositionInputs diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index ee550b87b0..5ef35f2be0 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -16,6 +16,7 @@ import { selectCrossMarginAccountData, selectCrossMarginAvailableMargin, selectCrossMarginMarginTransfers, + selectCrossMarginMaxLeverage, selectCrossMarginPositionHistory, selectCrossMarginPositions, selectCrossMarginTradeInputs, @@ -57,6 +58,7 @@ import { selectSmartMarginTradeInputs, selectSmartMarginOrderPrice, selectMarketIndexPrice, + selectSmartMarginMaxLeverage, } from './smartMargin/selectors' import { SmartPerpsPortfolio } from './smartMargin/types' import { @@ -398,14 +400,6 @@ export const selectIsolatedTransferError = createSelector( } ) -export const selectIsModifyingIsolatedPosition = createSelector( - selectSubmittingFuturesTx, - (state: RootState) => state.app, - (submitting, app) => { - return app.transaction?.type === 'modify_isolated' && submitting - } -) - export const selectIsCancellingOrder = createSelector( selectSubmittingFuturesTx, (state: RootState) => state.app, @@ -451,26 +445,11 @@ export const selectPosition = createSelector( ) export const selectMaxLeverage = createSelector( - selectPosition, - selectMarketInfo, - selectLeverageSide, + selectCrossMarginMaxLeverage, + selectSmartMarginMaxLeverage, selectFuturesType, - (position, market, leverageSide, futuresType) => { - const positionLeverage = position?.position?.leverage ?? wei(0) - const positionSide = position?.position?.side - let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) - - if (!positionLeverage || positionLeverage.eq(wei(0))) return adjustedMaxLeverage - if (futuresType === FuturesMarginType.SMART_MARGIN) return adjustedMaxLeverage - if (positionSide === leverageSide) { - return adjustedMaxLeverage?.sub(positionLeverage).gte(0) - ? adjustedMaxLeverage.sub(positionLeverage) - : wei(0) - } else { - return positionLeverage.add(adjustedMaxLeverage).gte(0) - ? positionLeverage.add(adjustedMaxLeverage) - : wei(0) - } + (cmMax, smMax, type) => { + return type === FuturesMarginType.CROSS_MARGIN ? cmMax : smMax } ) @@ -909,26 +888,25 @@ export const selectPortfolioChartData = createSelector( export const selectHasRemainingMargin = createSelector( selectPosition, + selectCrossMarginAvailableMargin, selectFuturesType, selectSmartMarginBalanceInfo, - (position, futuresType, balanceInfo) => { + (position, availableMargin, futuresType, balanceInfo) => { const posMargin = position?.remainingMargin ?? ZERO_WEI return futuresType === FuturesMarginType.SMART_MARGIN ? balanceInfo.freeMargin.add(posMargin).gt(0) - : posMargin.gt(0) + : availableMargin.gt(0) } ) export const selectMaxUsdSizeInput = createSelector( selectFuturesType, - selectPosition, + selectCrossMarginAvailableMargin, selectMaxLeverage, selectMarginDeltaInputValue, - (futuresType, position, maxLeverage, marginDelta) => { + (futuresType, availableMargin, maxLeverage, marginDelta) => { const margin = - futuresType === FuturesMarginType.SMART_MARGIN - ? marginDelta || 0 - : position?.remainingMargin ?? wei(0) + futuresType === FuturesMarginType.SMART_MARGIN ? marginDelta || 0 : availableMargin return maxLeverage.mul(margin) } ) diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts index 53c5e02a44..5491aeb9b8 100644 --- a/packages/app/src/state/futures/smartMargin/selectors.ts +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -387,14 +387,6 @@ export const selectIsolatedTransferError = createSelector( } ) -export const selectIsModifyingIsolatedPosition = createSelector( - selectSubmittingFuturesTx, - (state: RootState) => state.app, - (submitting, app) => { - return app.transaction?.type === 'modify_isolated' && submitting - } -) - export const selectIsCancellingOrder = createSelector( selectSubmittingFuturesTx, (state: RootState) => state.app, @@ -444,13 +436,13 @@ export const selectSmartMarginLeverageSide = createSelector( (smartMargin) => smartMargin.leverageSide ) -export const selectMaxLeverage = createSelector(selectV2MarketInfo, (market) => { +export const selectSmartMarginMaxLeverage = createSelector(selectV2MarketInfo, (market) => { let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) return adjustedMaxLeverage }) export const selectAboveMaxLeverage = createSelector( - selectMaxLeverage, + selectSmartMarginMaxLeverage, selectPosition, (maxLeverage, position) => { return position?.position?.leverage && maxLeverage.lt(position.position.leverage) @@ -944,7 +936,7 @@ export const selectOrderFee = createSelector( ) export const selectMaxUsdSizeInput = createSelector( - selectMaxLeverage, + selectSmartMarginMaxLeverage, selectMarginDeltaInputValue, (maxLeverage, marginDelta) => { return maxLeverage.mul(marginDelta || 0) @@ -1096,7 +1088,7 @@ export const selectSmartMarginPreviewCount = (state: RootState) => export const selectBuyingPower = createSelector( selectPosition, - selectMaxLeverage, + selectSmartMarginMaxLeverage, (position, maxLeverage) => { const totalMargin = position?.remainingMargin ?? ZERO_WEI return totalMargin.gt(ZERO_WEI) ? totalMargin.mul(maxLeverage ?? ZERO_WEI) : ZERO_WEI diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index a64e3ae1e9..7551a8c12f 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -25,6 +25,8 @@ import { SmartMarginBalanceInfo } from 'state/futures/smartMargin/types' import { futuresPositionKeys, FundingRate, MarkPrices } from 'state/futures/types' import { deserializeWeiObject } from 'state/helpers' +import { CrossMarginTradePreview } from '../state/futures/crossMargin/types' + export const getMarketName = (asset: FuturesMarketAsset) => { return `${getDisplayAsset(asset)}/sUSD` } @@ -400,3 +402,31 @@ export const perpsAccountIdFromAddress = (eoa: string): string => { const numberedId = eoa.replace(/\D/g, '') return numberedId.substring(0, 16) } + +// TODO: Move to app +export const serializeCrossMarginTradePreview = ( + preview: CrossMarginTradePreview +): CrossMarginTradePreview => ({ + ...preview, + settlementFee: preview.settlementFee.toString(), + sizeDelta: preview.sizeDelta.toString(), + fillPrice: preview.fillPrice.toString(), + fee: preview.fee.toString(), + leverage: preview.leverage.toString(), + notionalValue: preview.notionalValue.toString(), + priceImpact: preview.priceImpact.toString(), +}) + +// TODO: Move to app +export const unserializeCrossMarginTradePreview = ( + preview: CrossMarginTradePreview +): CrossMarginTradePreview => ({ + ...preview, + settlementFee: wei(preview.settlementFee), + sizeDelta: wei(preview.sizeDelta), + fillPrice: wei(preview.fillPrice), + fee: wei(preview.fee), + leverage: wei(preview.leverage), + notionalValue: wei(preview.notionalValue), + priceImpact: wei(preview.priceImpact), +}) diff --git a/packages/sdk/src/constants/perpsv3.ts b/packages/sdk/src/constants/perpsv3.ts index 1105ad33b5..55e7723da1 100644 --- a/packages/sdk/src/constants/perpsv3.ts +++ b/packages/sdk/src/constants/perpsv3.ts @@ -1,7 +1,21 @@ // TODO: Make this dynamic +import { FuturesMarketKey } from '../types' + +type valueof = T[keyof T] + export const V3_SYNTH_MARKET_IDS = { SNXUSD: 0, SNXETH: 2, SNXBTC: 3, } + +export const V3_PERPS_MARKET_IDS = { + SNXETH: 5, +} + +export type V3MarketId = valueof + +export const V3_PERPS_ID_TO_MARKET_KEY: Record = { + [V3_PERPS_MARKET_IDS.SNXETH]: FuturesMarketKey.sETHPERP, +} diff --git a/packages/sdk/src/queries/perpsV3.ts b/packages/sdk/src/queries/perpsV3.ts index df04259a5a..3e175059d5 100644 --- a/packages/sdk/src/queries/perpsV3.ts +++ b/packages/sdk/src/queries/perpsV3.ts @@ -3,7 +3,7 @@ import request, { gql } from 'graphql-request' import KwentaSDK from '..' import { PerpsV3Market } from '../types' -export const getPerpsV3Markets = async (sdk: KwentaSDK): Promise => { +export const queryPerpsV3Markets = async (sdk: KwentaSDK): Promise => { const response: any = await request( sdk.perpsV3.subgraphUrl, gql` @@ -18,11 +18,11 @@ export const getPerpsV3Markets = async (sdk: KwentaSDK): Promise => { + const response: any = await request( + sdk.perpsV3.subgraphUrl, + gql` + query GetSettlementStrategies { + settlementStrategies(orderBy: "marketId", orderDirection: "desc") { + id + marketId + strategyId + strategyType + settlementDelay + settlementWindowDuration + url + settlementReward + priceDeviationTolerance + } + } + ` + ) + + return response.settlementStrategies +} diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 84366d8494..363d9a870b 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -13,6 +13,7 @@ import PerpsMarketABI from '../contracts/abis/PerpsV2Market.json' import PerpsV2MarketInternal from '../contracts/PerpsV2MarketInternalV2' import { PerpsV2Market__factory } from '../contracts/types' import { IPerpsV2MarketConsolidated } from '../contracts/types/PerpsV2Market' +import { SettlementStrategy } from '../contracts/types/PerpsV3MarketProxy' import { queryFuturesTrades, queryIsolatedMarginTransfers, @@ -27,9 +28,6 @@ import { FuturesMarketKey, FuturesVolumes, MarketClosureReason, - ContractOrderType, - PositionDetail, - PositionSide, MarginTransfer, FuturesMarginType, } from '../types/futures' @@ -37,7 +35,6 @@ import { PricesMap } from '../types/prices' import { appAdjustedLeverage, formatDelayedOrder, - mapFuturesPosition, mapFuturesPositions, mapTrades, getPerpsV3SubgraphUrl, @@ -45,13 +42,18 @@ import { PerpsV3SymbolToMarketKey, MarketAssetByKey, mapPerpsV3Position, + sameSide, } from '../utils/futures' import { getReasonFromCode } from '../utils/synths' -import { getPerpsV3Markets, queryPerpsV3Accounts } from '../queries/perpsV3' +import { + queryPerpsV3Markets, + queryPerpsV3Accounts, + querySettlementStrategies, +} from '../queries/perpsV3' import { weiFromWei } from '../utils' import { ZERO_ADDRESS } from '../constants' import { SynthV3Asset } from '../types' -import { V3_SYNTH_MARKET_IDS } from '../constants/perpsv3' +import { V3_PERPS_ID_TO_MARKET_KEY, V3_SYNTH_MARKET_IDS, V3MarketId } from '../constants/perpsv3' export default class PerpsV3Service { private sdk: KwentaSDK @@ -69,7 +71,9 @@ export default class PerpsV3Service { } public async getMarkets() { - const perpsV3Markets = await getPerpsV3Markets(this.sdk) + const perpsV3Markets = await queryPerpsV3Markets(this.sdk) + const _settlementStrategies = await this.getSettlementStrategies() + // TODO: Combine settlement strategies with market data const futuresMarkets = perpsV3Markets.reduce( ( @@ -181,6 +185,10 @@ export default class PerpsV3Service { return queryFundingRateHistory(this.sdk, marketAsset, minTimestamp) } + public async getSettlementStrategies() { + return querySettlementStrategies(this.sdk) + } + public async getAverageFundingRates( _markets: FuturesMarket[], _prices: PricesMap, @@ -353,35 +361,46 @@ export default class PerpsV3Service { return formatDelayedOrder(account, marketAddress, order) } - public async getDelayedOrders(account: string, marketAddresses: string[]) { - const marketContracts = marketAddresses.map(getPerpsV2MarketMulticall) + public async getDelayedOrders(account: string, marketIds: BigNumberish[]) { + const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy + if (!proxy) throw new Error(UNSUPPORTED_NETWORK) const orders = (await this.sdk.context.multicallProvider.all( - marketContracts.map((market) => market.delayedOrders(account)) + marketIds.map((market) => proxy.getOrder(market, account)) )) as IPerpsV2MarketConsolidated.DelayedOrderStructOutput[] - return orders.map((order, ind) => { - return formatDelayedOrder(account, marketAddresses[ind], order) - }) + return [] + // return orders.map((order, ind) => { + // return formatDelayedOrder(account, marketAddresses[ind], order) + // }) } - public async getIsolatedTradePreview( - _marketAddress: string, - _marketKey: FuturesMarketKey, - _orderType: ContractOrderType, - _inputs: { - sizeDelta: Wei - price: Wei - leverageSide: PositionSide - } - ) { - const fillPrice = wei(0) - const liqPrice = wei(0) - const leverage = wei(0) + public async getTradePreview(marketId: V3MarketId, size: Wei) { + const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy + const price = this.sdk.prices.getOffchainPrice(V3_PERPS_ID_TO_MARKET_KEY[marketId]) + if (!proxy) throw new Error(UNSUPPORTED_NETWORK) + if (!price) throw new Error('No price for market') + const [fees, skew, fill, settlementStrategy] = (await this.sdk.context.multicallProvider.all([ + proxy.getOrderFees(marketId), + proxy.skew(marketId), + proxy.fillPrice(marketId, size.toBN(), price.toBN()), + proxy.getSettlementStrategy(marketId, 0), + ])) as [ + { makerFee: BigNumber; takerFee: BigNumber }, + BigNumber, + BigNumber, + SettlementStrategy.DataStructOutput + ] + + const notional = size.mul(price) + const feeSide = sameSide(notional, wei(skew)) ? wei(fees.takerFee) : wei(fees.makerFee) + const fee = notional.mul(feeSide) + const fillPrice = wei(fill) + const settlementFee = wei(settlementStrategy.settlementReward) return { fillPrice, - liqPrice, - leverage, + fee, + settlementFee, } } @@ -492,10 +511,10 @@ export default class PerpsV3Service { const commitment = { marketId: marketId, accountId, - sizeDelta: sizeDelta.toBN, + sizeDelta: sizeDelta.toBN(), settlementStrategyId: 0, acceptablePrice: acceptablePrice.toBN(), - trackingCode: ethers.constants.HashZero, + trackingCode: KWENTA_TRACKING_CODE, } return this.sdk.transactions.createContractTxn(marketProxy, 'commitOrder', [commitment]) diff --git a/packages/sdk/src/utils/futures.ts b/packages/sdk/src/utils/futures.ts index 2062189009..542cd40f30 100644 --- a/packages/sdk/src/utils/futures.ts +++ b/packages/sdk/src/utils/futures.ts @@ -922,3 +922,7 @@ export const formatPerpsV2Market = ( maxDelayTimeDelta: wei(marketParameters.maxDelayTimeDelta, 0).toNumber(), }, }) + +export const sameSide = (a: Wei, b: Wei) => { + return a.gt(wei(0)) === b.gt(wei(0)) +} From 73da04d45d6abbbb855abda10cead68decfb12b3 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Wed, 26 Jul 2023 21:17:55 +0100 Subject: [PATCH 16/43] Core v3 flows --- .../app/src/__tests__/pages/market.test.tsx | 8 +- packages/app/src/constants/defaults.ts | 2 +- packages/app/src/hooks/usePerpsContracts.ts | 10 +- packages/app/src/pages/market.tsx | 6 +- .../dashboard/FuturesMarketsTable.tsx | 6 +- .../FuturesPositionsTable.tsx | 31 +-- .../MobilePositionRow.tsx | 5 +- .../MobileDashboard/OpenPositions.tsx | 3 +- .../app/src/sections/dashboard/Overview.tsx | 3 +- .../CloseCrossMarginPositionModal.tsx | 221 ++++++++++++++++++ .../ClosePositionModal/ClosePositionModal.tsx | 26 +-- .../ClosePositionPriceInput.tsx | 6 +- .../ClosePositionSizeInput.tsx | 8 +- .../futures/CreatePerpsV3AccountModal.tsx | 37 +-- .../EditPositionMarginModal.tsx | 18 +- .../EditPositionSizeInput.tsx | 4 +- .../EditPositionSizeModal.tsx | 30 +-- .../EditStopLossAndTakeProfitModal.tsx | 27 ++- .../FeeInfoBox/ClosePositionFeeInfo.tsx | 4 +- .../src/sections/futures/MarketInfoBox.tsx | 2 +- .../MobileTrade/UserTabs/OrdersTab.tsx | 140 +++++++---- .../MobileTrade/UserTabs/PositionsTab.tsx | 48 +--- .../futures/MobileTrade/UserTabs/UserTabs.tsx | 13 +- .../drawers/ConditionalOrderDrawer.tsx | 109 --------- .../MobileTrade/drawers/OrderDrawer.tsx | 139 ----------- .../futures/ShareModal/AmountContainer.tsx | 10 +- .../futures/ShareModal/PositionMetadata.tsx | 10 +- .../futures/ShareModal/ShareModal.tsx | 11 +- .../futures/ShareModal/ShareModalButton.tsx | 21 +- .../futures/Trade/MarketsDropdown.tsx | 4 +- .../CrossMarginOrderConfirmation.tsx | 10 +- .../UserInfo/OpenDelayedOrdersTable.tsx | 109 +++++---- .../futures/UserInfo/PositionsTable.tsx | 121 ++++------ .../sections/futures/UserInfo/UserInfo.tsx | 12 +- .../sections/leaderboard/TraderHistory.tsx | 4 +- packages/app/src/state/app/types.ts | 5 +- packages/app/src/state/balances/actions.ts | 2 +- packages/app/src/state/constants.ts | 1 + packages/app/src/state/futures/actions.ts | 80 +------ .../app/src/state/futures/common/types.ts | 25 +- .../src/state/futures/crossMargin/actions.ts | 181 ++++++++++---- .../src/state/futures/crossMargin/reducer.ts | 48 ++-- .../state/futures/crossMargin/selectors.ts | 208 ++++++++++++++--- .../src/state/futures/crossMargin/types.ts | 35 ++- packages/app/src/state/futures/selectors.ts | 150 ++++-------- .../src/state/futures/smartMargin/actions.ts | 123 ++++++---- .../state/futures/smartMargin/selectors.ts | 146 +++++++----- .../src/state/futures/smartMargin/types.ts | 18 +- packages/app/src/state/futures/types.ts | 15 +- packages/app/src/state/home/actions.ts | 8 +- packages/app/src/state/home/reducer.ts | 4 +- packages/app/src/state/home/selectors.ts | 4 +- packages/app/src/types/futures.ts | 29 +++ packages/app/src/utils/futures.ts | 123 ++++++++-- .../app/testing/unit/mocks/data/futures.ts | 9 +- packages/sdk/src/queries/perpsV3.ts | 8 +- packages/sdk/src/services/futures.ts | 20 +- packages/sdk/src/services/perpsV3.ts | 132 ++++++----- packages/sdk/src/types/futures.ts | 53 ++++- packages/sdk/src/utils/futures.ts | 46 +++- 60 files changed, 1502 insertions(+), 1189 deletions(-) create mode 100644 packages/app/src/sections/futures/ClosePositionModal/CloseCrossMarginPositionModal.tsx delete mode 100644 packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx delete mode 100644 packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx create mode 100644 packages/app/src/types/futures.ts diff --git a/packages/app/src/__tests__/pages/market.test.tsx b/packages/app/src/__tests__/pages/market.test.tsx index a6aeb35aa3..1e58de0938 100644 --- a/packages/app/src/__tests__/pages/market.test.tsx +++ b/packages/app/src/__tests__/pages/market.test.tsx @@ -1,4 +1,4 @@ -import { FuturesMarket, PositionSide } from '@kwenta/sdk/types' +import { FuturesMarket, PerpsMarketV2, PositionSide } from '@kwenta/sdk/types' import { wei } from '@synthetixio/wei' import { fireEvent, render, waitFor } from '@testing-library/react' import { ReactNode } from 'react' @@ -148,7 +148,7 @@ describe('Futures market page - smart margin', () => { test('Displays error when trade exceeds max OI', async () => { // Update the mock to return some different data sdk.futures.getMarkets = () => - Promise.resolve([{ ...SDK_MARKETS[1], marketLimitUsd: wei(100000) } as FuturesMarket]) + Promise.resolve([{ ...SDK_MARKETS[1], marketLimitUsd: wei(100000) } as PerpsMarketV2]) const store = setupStore( preloadedStateWithSmartMarginAccount(mockSmartMarginAccount('1000000')) @@ -171,7 +171,7 @@ describe('Futures market page - smart margin', () => { }) test('Trade panel is disabled when market is closed', async () => { - sdk.futures.getMarkets = () => Promise.resolve([...SDK_MARKETS] as FuturesMarket[]) + sdk.futures.getMarkets = () => Promise.resolve([...SDK_MARKETS] as PerpsMarketV2[]) const store = setupStore(preloadedStateWithSmartMarginAccount()) const { findByTestId, findByText } = render( @@ -192,7 +192,7 @@ describe('Futures market page - smart margin', () => { expect(submitButton).toBeEnabled() sdk.futures.getMarkets = () => - Promise.resolve([{ ...SDK_MARKETS[1], isSuspended: true } as FuturesMarket]) + Promise.resolve([{ ...SDK_MARKETS[1], isSuspended: true } as PerpsMarketV2]) waitFor(() => store.dispatch(fetchMarkets())) diff --git a/packages/app/src/constants/defaults.ts b/packages/app/src/constants/defaults.ts index ea613a01c7..7ee0603674 100644 --- a/packages/app/src/constants/defaults.ts +++ b/packages/app/src/constants/defaults.ts @@ -33,7 +33,7 @@ export const DEFAULT_LEADERBOARD_ROWS = 20 // for perps v2 export const DEFAULT_DELAYED_EXECUTION_BUFFER = 15 -export const DEFAULT_DELAYED_CANCEL_BUFFER = 15 +export const DEFAULT_DELAYED_CANCEL_BUFFER = 10 export const CROSS_MARGIN_ENABLED = true diff --git a/packages/app/src/hooks/usePerpsContracts.ts b/packages/app/src/hooks/usePerpsContracts.ts index 46229ae23d..6ef437ae49 100644 --- a/packages/app/src/hooks/usePerpsContracts.ts +++ b/packages/app/src/hooks/usePerpsContracts.ts @@ -2,20 +2,20 @@ import { PerpsV2Market, PerpsV2Market__factory } from '@kwenta/sdk/types' import { useMemo } from 'react' import Connector from 'containers/Connector' -import { selectMarketInfo } from 'state/futures/selectors' +import { selectV2MarketInfo } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' export default function usePerpsContracts(): { perpsMarketContract: PerpsV2Market | null } { const { signer } = Connector.useContainer() - const marketInfo = useAppSelector(selectMarketInfo) + const marketInfo = useAppSelector(selectV2MarketInfo) const perpsMarketContract = useMemo(() => { - if (!signer || !marketInfo?.market) return null + if (!signer || !marketInfo?.marketAddress) return null - return PerpsV2Market__factory.connect(marketInfo.market, signer) - }, [signer, marketInfo?.market]) + return PerpsV2Market__factory.connect(marketInfo.marketAddress, signer) + }, [signer, marketInfo?.marketAddress]) return { perpsMarketContract } } diff --git a/packages/app/src/pages/market.tsx b/packages/app/src/pages/market.tsx index b855b906b2..bd66a08da6 100644 --- a/packages/app/src/pages/market.tsx +++ b/packages/app/src/pages/market.tsx @@ -9,6 +9,7 @@ import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' import Connector from 'containers/Connector' import useIsL2 from 'hooks/useIsL2' import useWindowSize from 'hooks/useWindowSize' +import CloseCrossMarginPositionModal from 'sections/futures/ClosePositionModal/CloseCrossMarginPositionModal' import ClosePositionModal from 'sections/futures/ClosePositionModal/ClosePositionModal' import CreatePerpsV3AccountModal from 'sections/futures/CreatePerpsV3AccountModal' import EditPositionMarginModal from 'sections/futures/EditPositionModal/EditPositionMarginModal' @@ -125,7 +126,10 @@ const Market: MarketComponent = () => { - {showPositionModal?.type === 'futures_close_position' && } + {showPositionModal?.type === 'smart_margin_close_position' && } + {showPositionModal?.type === 'cross_margin_close_position' && ( + + )} {showPositionModal?.type === 'futures_edit_stop_loss_take_profit' && ( )} diff --git a/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx b/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx index 40c46ab5c7..649fa62c63 100644 --- a/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesMarketsTable.tsx @@ -1,4 +1,4 @@ -import { FuturesMarketAsset } from '@kwenta/sdk/types' +import { FuturesMarket, FuturesMarketAsset } from '@kwenta/sdk/types' import { AssetDisplayByAsset, MarketKeyByAsset, @@ -45,8 +45,8 @@ const FuturesMarketsTable: React.FC = ({ search }) => let data = useMemo(() => { const lowerSearch = search?.toLowerCase() - const markets = lowerSearch - ? futuresMarkets.filter( + const markets: FuturesMarket[] = lowerSearch + ? (futuresMarkets as FuturesMarket[]).filter( (m) => m.asset.toLowerCase().includes(lowerSearch) || AssetDisplayByAsset[m.asset]?.toLocaleLowerCase().includes(lowerSearch) diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx index 09f04a0fce..b94ff3971c 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/FuturesPositionsTable.tsx @@ -18,9 +18,8 @@ import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' import PositionType from 'sections/futures/PositionType' import { AppFuturesMarginType } from 'state/futures/common/types' -import { selectCrossMarginPositions, selectV3Markets } from 'state/futures/crossMargin/selectors' -import { selectSmartMarginPositions, selectPositionHistory } from 'state/futures/selectors' -import { selectV2Markets } from 'state/futures/smartMargin/selectors' +import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' +import { selectSmartMarginPositions } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import { getSynthDescription } from 'utils/futures' @@ -45,41 +44,25 @@ const FuturesPositionsTable: FC = ({ const crossMarginPositions = useAppSelector(selectCrossMarginPositions) const smartMarginPositions = useAppSelector(selectSmartMarginPositions) - const positionHistory = useAppSelector(selectPositionHistory) - const v2Markets = useAppSelector(selectV2Markets) - const v3Markets = useAppSelector(selectV3Markets) let data = useMemo(() => { const positions = accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions - const markets = accountType === FuturesMarginType.SMART_MARGIN ? v2Markets : v3Markets return positions .map((position) => { - const market = markets.find((market) => market.asset === position.asset) - const description = getSynthDescription(position.asset, t) - const thisPositionHistory = positionHistory.find((ph) => { - return ph.isOpen && ph.asset === position.asset - }) + const description = getSynthDescription(position.market.asset, t) return { - market: market!, - position: position.position!, + market: position.market, + position: position, description, - avgEntryPrice: thisPositionHistory?.avgEntryPrice, + avgEntryPrice: position?.avgEntryPrice, stopLoss: position.stopLoss?.targetPrice, takeProfit: position.takeProfit?.targetPrice, } }) .filter(({ position, market }) => !!position && !!market) - }, [ - accountType, - crossMarginPositions, - smartMarginPositions, - v2Markets, - v3Markets, - t, - positionHistory, - ]) + }, [accountType, crossMarginPositions, smartMarginPositions, t]) return ( <> diff --git a/packages/app/src/sections/dashboard/FuturesPositionsTable/MobilePositionRow.tsx b/packages/app/src/sections/dashboard/FuturesPositionsTable/MobilePositionRow.tsx index 164a320ca2..ec2a31d151 100644 --- a/packages/app/src/sections/dashboard/FuturesPositionsTable/MobilePositionRow.tsx +++ b/packages/app/src/sections/dashboard/FuturesPositionsTable/MobilePositionRow.tsx @@ -1,8 +1,9 @@ -import { FuturesFilledPosition, FuturesMarket, PositionSide } from '@kwenta/sdk/types' +import { FuturesMarket, PositionSide } from '@kwenta/sdk/types' import { getMarketName, MarketKeyByAsset, formatNumber } from '@kwenta/sdk/utils' import Wei, { wei } from '@synthetixio/wei' import { memo, FC } from 'react' import styled, { css } from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import { border } from 'components/Button' import ChangePercent from 'components/ChangePercent' @@ -15,7 +16,7 @@ import { isDecimalFour } from 'utils/futures' type MobilePositionRowProps = { row: { market?: FuturesMarket - position: FuturesFilledPosition | null + position: FuturesPositionTablePosition | null avgEntryPrice?: Wei } onClick(): void diff --git a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx index efcc15cecd..ea3dc107e4 100644 --- a/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx +++ b/packages/app/src/sections/dashboard/MobileDashboard/OpenPositions.tsx @@ -10,7 +10,8 @@ import TabButton from 'components/Button/TabButton' import { TabPanel } from 'components/Tab' import { SectionHeader, SectionTitle } from 'sections/futures/mobile' import { selectBalances } from 'state/balances/selectors' -import { selectFuturesPortfolio, selectActiveSmartPositionsCount } from 'state/futures/selectors' +import { selectFuturesPortfolio } from 'state/futures/selectors' +import { selectActiveSmartPositionsCount } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import FuturesPositionsTable from '../FuturesPositionsTable' diff --git a/packages/app/src/sections/dashboard/Overview.tsx b/packages/app/src/sections/dashboard/Overview.tsx index c1fbd5712e..30cc72c3b5 100644 --- a/packages/app/src/sections/dashboard/Overview.tsx +++ b/packages/app/src/sections/dashboard/Overview.tsx @@ -18,7 +18,8 @@ import Connector from 'containers/Connector' import { selectBalances } from 'state/balances/selectors' import { fetchTokenList } from 'state/exchange/actions' import { setFuturesAccountType } from 'state/futures/reducer' -import { selectActiveSmartPositionsCount, selectFuturesPortfolio } from 'state/futures/selectors' +import { selectFuturesPortfolio } from 'state/futures/selectors' +import { selectActiveSmartPositionsCount } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector, useFetchAction } from 'state/hooks' import sdk from 'state/sdk' import { selectSynthsMap } from 'state/wallet/selectors' diff --git a/packages/app/src/sections/futures/ClosePositionModal/CloseCrossMarginPositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/CloseCrossMarginPositionModal.tsx new file mode 100644 index 0000000000..d428aa2395 --- /dev/null +++ b/packages/app/src/sections/futures/ClosePositionModal/CloseCrossMarginPositionModal.tsx @@ -0,0 +1,221 @@ +import { ZERO_WEI } from '@kwenta/sdk/constants' +import { PositionSide, PotentialTradeStatus } from '@kwenta/sdk/types' +import { + floorNumber, + formatDollars, + formatNumber, + formatPercent, + stripZeros, +} from '@kwenta/sdk/utils' +import { wei } from '@synthetixio/wei' +import React, { useCallback, useMemo } from 'react' +import { useTranslation } from 'react-i18next' +import styled from 'styled-components' + +import BaseModal from 'components/BaseModal' +import Button from 'components/Button' +import ErrorView from 'components/ErrorView' +import { InfoBoxContainer, InfoBoxRow } from 'components/InfoBox' +import { FlexDivRowCentered } from 'components/layout/flex' +import PreviewArrow from 'components/PreviewArrow' +import SelectorButtons from 'components/SelectorButtons' +import Spacer from 'components/Spacer' +import { Body } from 'components/Text' +import { previewErrorI18n } from 'queries/futures/constants' +import { setShowPositionModal } from 'state/app/reducer' +import { selectTransaction } from 'state/app/selectors' +import { submitCrossMarginReducePositionOrder } from 'state/futures/crossMargin/actions' +import { + selectCloseCMPositionOrderInputs, + selectCloseCMPositionPreview, +} from 'state/futures/crossMargin/selectors' +import { selectSubmittingFuturesTx } from 'state/futures/selectors' +import { + editClosePositionPrice, + editClosePositionSizeDelta, +} from 'state/futures/smartMargin/actions' +import { + selectEditPositionModalInfo, + selectIsFetchingTradePreview, + selectTradePreviewError, +} from 'state/futures/smartMargin/selectors' +import { useAppDispatch, useAppSelector } from 'state/hooks' + +import ClosePositionFeeInfo from '../FeeInfoBox/ClosePositionFeeInfo' + +import ClosePositionSizeInput from './ClosePositionSizeInput' + +const CLOSE_PERCENT_OPTIONS = ['25%', '50%', '75%', '100%'] + +// TODO: Share some logic between close modals + +export default function CloseCrossMarginPositionModal() { + const { t } = useTranslation() + const dispatch = useAppDispatch() + + const transactionState = useAppSelector(selectTransaction) + const isSubmitting = useAppSelector(selectSubmittingFuturesTx) + const isFetchingPreview = useAppSelector(selectIsFetchingTradePreview) + const previewTrade = useAppSelector(selectCloseCMPositionPreview) + const previewError = useAppSelector(selectTradePreviewError) + const { nativeSizeDelta } = useAppSelector(selectCloseCMPositionOrderInputs) + const { market, position } = useAppSelector(selectEditPositionModalInfo) + + const submitCloseOrder = useCallback(() => { + dispatch(submitCrossMarginReducePositionOrder()) + }, [dispatch]) + + const isLoading = useMemo( + () => isSubmitting || isFetchingPreview, + [isSubmitting, isFetchingPreview] + ) + + const maxNativeValue = useMemo(() => { + return position?.size ?? ZERO_WEI + }, [position?.size]) + + const sizeWei = useMemo( + () => (!nativeSizeDelta || isNaN(Number(nativeSizeDelta)) ? wei(0) : wei(nativeSizeDelta)), + [nativeSizeDelta] + ) + + const invalidSize = useMemo(() => { + return sizeWei.abs().gt(maxNativeValue.abs()) + }, [sizeWei, maxNativeValue]) + + const orderError = useMemo(() => { + if (previewError) return t(previewErrorI18n(previewError)) + if (previewTrade?.showStatus) return previewTrade?.statusMessage + return null + }, [previewTrade?.showStatus, previewTrade?.statusMessage, previewError, t]) + + const submitDisabled = useMemo(() => { + return false + return ( + sizeWei.eq(0) || + invalidSize || + isLoading || + orderError || + previewTrade?.status !== PotentialTradeStatus.OK + ) + }, [sizeWei, invalidSize, isLoading, orderError, previewTrade?.status]) + + const onClose = () => { + if (market) { + dispatch(editClosePositionSizeDelta(market.marketKey, '')) + dispatch(editClosePositionPrice(market.marketKey, '')) + } + dispatch(setShowPositionModal(null)) + } + + const onSelectPercent = useCallback( + (index: number) => { + if (!position?.size || !market?.marketKey) return + const option = CLOSE_PERCENT_OPTIONS[index] + const percent = Math.abs(Number(option.replace('%', ''))) / 100 + const size = + percent === 1 ? position.size.abs() : floorNumber(position.size.abs().mul(percent)) + + const sizeDelta = position?.side === PositionSide.LONG ? wei(size).neg() : wei(size) + const decimals = sizeDelta.abs().eq(position.size.abs()) ? undefined : 4 + + dispatch( + editClosePositionSizeDelta(market.marketKey, stripZeros(sizeDelta.toString(decimals))) + ) + }, + [dispatch, position?.size, position?.side, market?.marketKey] + ) + + return ( + + + + + + + + + + + {previewTrade.leverage.toString(2)}x + ) + } + title={t('futures.market.trade.edit-position.leverage-change')} + textValue={position?.leverage ? position.leverage?.toString(2) + 'x' : '-'} + /> + + {previewTrade?.sizeDelta + ? formatNumber(previewTrade.sizeDelta.abs(), { suggestDecimals: true }) + : '-'} + + ) + } + title={t('futures.market.trade.edit-position.position-size')} + textValue={formatNumber(position?.size || 0, { suggestDecimals: true })} + /> + + + + + + + + + {(orderError || transactionState?.error) && ( + + )} + + + + ) +} + +export const StyledBaseModal = styled(BaseModal)` + [data-reach-dialog-content] { + width: 400px; + } +` + +export const InfoContainer = styled(FlexDivRowCentered)` + margin: 16px 0; +` + +export const BalanceText = styled(Body)` + color: ${(props) => props.theme.colors.selectedTheme.gray}; + span { + color: ${(props) => props.theme.colors.selectedTheme.button.text.primary}; + } +` diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx index 723bb068ac..0157d17740 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionModal.tsx @@ -34,7 +34,7 @@ import { } from 'state/futures/smartMargin/actions' import { setClosePositionOrderType } from 'state/futures/smartMargin/reducer' import { - selectClosePositionOrderInputs, + selectCloseSMPositionOrderInputs, selectClosePositionPreview, selectEditPositionModalInfo, selectIsFetchingTradePreview, @@ -63,7 +63,7 @@ export default function ClosePositionModal() { const previewError = useAppSelector(selectTradePreviewError) const accountType = useAppSelector(selectFuturesType) const ethBalanceExceeded = useAppSelector(selectKeeperDepositExceedsBal) - const { nativeSizeDelta, orderType, price } = useAppSelector(selectClosePositionOrderInputs) + const { nativeSizeDelta, orderType, price } = useAppSelector(selectCloseSMPositionOrderInputs) const { market, position } = useAppSelector(selectEditPositionModalInfo) const [overridePriceProtection, setOverridePriceProtection] = useState(false) @@ -82,8 +82,8 @@ export default function ClosePositionModal() { ) const maxNativeValue = useMemo(() => { - return position?.position?.size ?? ZERO_WEI - }, [position?.position?.size]) + return position?.size ?? ZERO_WEI + }, [position?.size]) const sizeWei = useMemo( () => (!nativeSizeDelta || isNaN(Number(nativeSizeDelta)) ? wei(0) : wei(nativeSizeDelta)), @@ -149,22 +149,20 @@ export default function ClosePositionModal() { const onSelectPercent = useCallback( (index: number) => { - if (!position?.position?.size || !market?.marketKey) return + if (!position?.size || !market?.marketKey) return const option = CLOSE_PERCENT_OPTIONS[index] const percent = Math.abs(Number(option.replace('%', ''))) / 100 const size = - percent === 1 - ? position.position.size.abs() - : floorNumber(position.position.size.abs().mul(percent)) + percent === 1 ? position.size.abs() : floorNumber(position.size.abs().mul(percent)) - const sizeDelta = position?.position.side === PositionSide.LONG ? wei(size).neg() : wei(size) - const decimals = sizeDelta.abs().eq(position.position.size.abs()) ? undefined : 4 + const sizeDelta = position.side === PositionSide.LONG ? wei(size).neg() : wei(size) + const decimals = sizeDelta.abs().eq(position.size.abs()) ? undefined : 4 dispatch( editClosePositionSizeDelta(market.marketKey, stripZeros(sizeDelta.toString(decimals))) ) }, - [dispatch, position?.position?.size, position?.position?.side, market?.marketKey] + [dispatch, position?.size, position?.side, market?.marketKey] ) return ( @@ -201,7 +199,7 @@ export default function ClosePositionModal() { ) } title={t('futures.market.trade.edit-position.leverage-change')} - textValue={position?.position ? position?.position?.leverage.toString(2) + 'x' : '-'} + textValue={position?.leverage ? position.leverage.toString(2) + 'x' : '-'} /> , v: string) => { diff --git a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx index 9c4cc760f0..127bfa5289 100644 --- a/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx +++ b/packages/app/src/sections/futures/ClosePositionModal/ClosePositionSizeInput.tsx @@ -11,7 +11,7 @@ import Spacer from 'components/Spacer' import { selectShowPositionModal } from 'state/app/selectors' import { editClosePositionSizeDelta } from 'state/futures/smartMargin/actions' import { - selectClosePositionOrderInputs, + selectCloseSMPositionOrderInputs, selectEditPositionModalInfo, } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' @@ -24,7 +24,7 @@ type OrderSizingProps = { const ClosePositionSizeInput: React.FC = memo(({ isMobile, maxNativeValue }) => { const dispatch = useAppDispatch() - const { nativeSizeDelta } = useAppSelector(selectClosePositionOrderInputs) + const { nativeSizeDelta } = useAppSelector(selectCloseSMPositionOrderInputs) const { position } = useAppSelector(selectEditPositionModalInfo) const modal = useAppSelector(selectShowPositionModal) @@ -34,12 +34,12 @@ const ClosePositionSizeInput: React.FC = memo(({ isMobile, max dispatch( editClosePositionSizeDelta( modal.marketKey, - position?.position?.side === PositionSide.LONG ? '-' + value : value + position?.side === PositionSide.LONG ? '-' + value : value ) ) } }, - [dispatch, modal, position?.position?.side] + [dispatch, modal, position?.side] ) const onChangeValue = useCallback( diff --git a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx index 3d389874d7..48ea2edf2a 100644 --- a/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx +++ b/packages/app/src/sections/futures/CreatePerpsV3AccountModal.tsx @@ -2,29 +2,15 @@ import { useCallback } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' -import CompleteCheck from 'assets/svg/futures/onboard-complete-check.svg' import BaseModal from 'components/BaseModal' import Button from 'components/Button' import ErrorView from 'components/ErrorView' import Loader from 'components/Loader' -import ProgressSteps from 'components/ProgressSteps' import { setOpenModal } from 'state/app/reducer' import { createPerpsV3Account } from 'state/futures/crossMargin/actions' -import { - selectCrossMarginAccount, - selectCrossMarginSupportedNetwork, -} from 'state/futures/crossMargin/selectors' +import { selectCrossMarginSupportedNetwork } from 'state/futures/crossMargin/selectors' import { selectSubmittingFuturesTx } from 'state/futures/selectors' -import { approveSmartMargin, createSmartMarginAccount } from 'state/futures/smartMargin/actions' -import { - selectSmartMarginAccountQueryStatus, - selectSmartMarginDepositApproved, - selectTradePreview, -} from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' -import { FetchStatus } from 'state/types' - -import CrossMarginFAQ from './SmartMarginOnboard/SmartMarginFAQ' type Props = { isOpen: boolean @@ -34,9 +20,7 @@ export default function CreatePerpsV3AccountModal({ isOpen }: Props) { const { t } = useTranslation() const dispatch = useAppDispatch() const crossMarginAvailable = useAppSelector(selectCrossMarginSupportedNetwork) - const perpsV3Account = useAppSelector(selectCrossMarginAccount) const txProcessing = useAppSelector(selectSubmittingFuturesTx) - const preview = useAppSelector(selectTradePreview) const onClose = () => dispatch(setOpenModal(null)) @@ -83,25 +67,6 @@ const StyledButton = styled(Button)` width: 100%; ` -const FAQHeader = styled.div` - padding-bottom: 4px; - border-bottom: ${(props) => props.theme.colors.selectedTheme.border}; - margin-bottom: 5px; -` - -const ProgressContainer = styled.div` - margin-top: 30px; -` - const Intro = styled.div` margin-bottom: 30px; ` - -const Complete = styled.div` - padding: 40px; - text-align: center; -` - -const LoaderContainer = styled.div` - height: 120px; -` diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx index f13b00f8f4..5480d59aeb 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionMarginModal.tsx @@ -62,18 +62,18 @@ export default function EditPositionMarginModal() { ) const maxWithdraw = useMemo(() => { - const maxSize = position?.remainingMargin.mul(market?.appMaxLeverage ?? 1) - const currentSize = position?.position?.notionalValue + const maxSize = position?.remainingMargin?.mul(market?.appMaxLeverage ?? 1) + const currentSize = position?.notionalValue const max = maxSize?.sub(currentSize).div(market?.appMaxLeverage ?? 1) ?? wei(0) - const resultingMarginMax = position?.remainingMargin.sub(max) ?? wei(0) - const remainingMarginMax = position?.remainingMargin.sub(MIN_MARGIN_AMOUNT) ?? wei(0) + const resultingMarginMax = position?.remainingMargin?.sub(max) ?? wei(0) + const remainingMarginMax = position?.remainingMargin?.sub(MIN_MARGIN_AMOUNT) ?? wei(0) return max.lt(0) || remainingMarginMax.lt(0) ? ZERO_WEI : resultingMarginMax.gte(MIN_MARGIN_AMOUNT) ? max : remainingMarginMax - }, [position?.remainingMargin, position?.position?.notionalValue, market?.appMaxLeverage]) + }, [position?.remainingMargin, position?.notionalValue, market?.appMaxLeverage]) const maxUsdInputAmount = useMemo( () => (transferType === 0 ? idleMargin : maxWithdraw), @@ -88,8 +88,8 @@ export default function EditPositionMarginModal() { const invalid = useMemo(() => marginWei.gt(maxUsdInputAmount), [marginWei, maxUsdInputAmount]) const maxLeverageExceeded = useMemo( - () => transferType === 1 && position?.position?.leverage.gt(market?.appMaxLeverage ?? 1), - [transferType, position?.position?.leverage, market?.appMaxLeverage] + () => transferType === 1 && position?.leverage?.gt(market?.appMaxLeverage ?? 1), + [transferType, position?.leverage, market?.appMaxLeverage] ) const previewError = useMemo(() => { @@ -164,7 +164,7 @@ export default function EditPositionMarginModal() { ) } title={t('futures.market.trade.edit-position.leverage-change')} - textValue={position?.position?.leverage.toString(2) + 'x'} + textValue={position?.leverage?.toString(2) + 'x'} /> diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx index e4f8acea6e..294c75982c 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeInput.tsx @@ -39,7 +39,7 @@ const EditPositionSizeInput: React.FC = memo( const onSizeChange = useCallback( (value: string) => { if (modal) { - const side = position?.position?.side + const side = position?.side const sizeDelta = (side === PositionSide.LONG && type === 'decrease') || (side === PositionSide.SHORT && type === 'increase') @@ -48,7 +48,7 @@ const EditPositionSizeInput: React.FC = memo( dispatch(editCrossMarginPositionSize(modal.marketKey, sizeDelta)) } }, - [dispatch, type, modal, position?.position?.side] + [dispatch, type, modal, position?.side] ) const handleSetMax = useCallback(() => { diff --git a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx index 25efb673d2..c9784e073d 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditPositionSizeModal.tsx @@ -77,33 +77,33 @@ export default function EditPositionSizeModal() { const resultingLeverage = useMemo(() => { if (!preview || !position) return - return position.remainingMargin.gt(0) + return position.remainingMargin?.gt(0) ? preview.size.mul(marketPrice).div(position.remainingMargin).abs() : wei(0) }, [preview, position, marketPrice]) const maxNativeIncreaseValue = useMemo(() => { if (!marketPrice || marketPrice.eq(0)) return ZERO_WEI - const totalMax = position?.remainingMargin.mul(maxLeverage) ?? ZERO_WEI - let max = totalMax.sub(position?.position?.notionalValue ?? 0) + const totalMax = position?.remainingMargin?.mul(maxLeverage) ?? ZERO_WEI + let max = totalMax.sub(position?.notionalValue ?? 0) max = max.gt(0) ? max : ZERO_WEI return max.div(marketPrice) - }, [marketPrice, position?.remainingMargin, position?.position?.notionalValue, maxLeverage]) + }, [marketPrice, position?.remainingMargin, position?.notionalValue, maxLeverage]) const maxNativeValue = useMemo(() => { - return editType === 0 ? maxNativeIncreaseValue : position?.position?.size ?? ZERO_WEI - }, [editType, maxNativeIncreaseValue, position?.position?.size]) + return editType === 0 ? maxNativeIncreaseValue : position?.size ?? ZERO_WEI + }, [editType, maxNativeIncreaseValue, position?.size]) const minNativeValue = useMemo(() => { if (editType === 0) return ZERO_WEI // If a user is over max leverage they can only // decrease to a value below max leverage - if (position?.position && position?.position?.leverage.gt(maxLeverage)) { - const safeSize = position.remainingMargin.mul(maxLeverage).div(marketPrice) - return position.position.size.sub(safeSize) + if (position && position?.leverage?.gt(maxLeverage)) { + const safeSize = position.remainingMargin?.mul(maxLeverage).div(marketPrice) + return position.size.sub(safeSize) } return ZERO_WEI - }, [maxLeverage, position?.position, editType, marketPrice, position?.remainingMargin]) + }, [maxLeverage, position, editType, marketPrice, position?.remainingMargin]) const maxNativeValueWithBuffer = useMemo(() => { if (editType === 1) return maxNativeValue @@ -117,10 +117,10 @@ export default function EditPositionSizeModal() { const maxLeverageExceeded = useMemo(() => { return ( - (editType === 0 && position?.position?.leverage.gt(maxLeverage)) || + (editType === 0 && position?.leverage?.gt(maxLeverage)) || (editType === 1 && resultingLeverage?.gt(maxLeverage)) ) - }, [editType, position?.position?.leverage, maxLeverage, resultingLeverage]) + }, [editType, position?.leverage, maxLeverage, resultingLeverage]) const invalid = useMemo( () => sizeWei.abs().gt(maxNativeValueWithBuffer), @@ -191,7 +191,7 @@ export default function EditPositionSizeModal() { ) } title={t('futures.market.trade.edit-position.leverage-change')} - textValue={position?.position ? position?.position?.leverage.toString(2) + 'x' : '-'} + textValue={position?.leverage ? position.leverage.toString(2) + 'x' : '-'} /> diff --git a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx index ffecdf1425..f888f64165 100644 --- a/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx +++ b/packages/app/src/sections/futures/EditPositionModal/EditStopLossAndTakeProfitModal.tsx @@ -74,8 +74,8 @@ export default function EditStopLossAndTakeProfitModal() { const hasOrders = useMemo(() => stopLoss || takeProfit, [stopLoss, takeProfit]) const leverageWei = useMemo(() => { - return position?.position?.leverage.gt(0) ? wei(position.position.leverage) : wei(1) - }, [position?.position?.leverage]) + return position?.leverage?.gt(0) ? wei(position.leverage) : wei(1) + }, [position?.leverage]) const hasChangeOrders = useMemo(() => { const tpOrderPrice = takeProfit?.targetPrice @@ -86,12 +86,12 @@ export default function EditStopLossAndTakeProfitModal() { }, [hasOrders, stopLoss?.targetPrice, stopLossPrice, takeProfit?.targetPrice, takeProfitPrice]) const tpInvalid = useMemo(() => { - if (position?.position?.side === 'long') { + if (position?.side === 'long') { return !!takeProfitPrice && wei(takeProfitPrice || 0).lt(marketPrice) } else { return !!takeProfitPrice && wei(takeProfitPrice || 0).gt(marketPrice) } - }, [takeProfitPrice, marketPrice, position?.position?.side]) + }, [takeProfitPrice, marketPrice, position?.side]) const ethBalWarningMessage = ethBalanceExceeded ? t('futures.market.trade.confirmation.modal.eth-bal-warning') @@ -155,14 +155,14 @@ export default function EditStopLossAndTakeProfitModal() { const percent = Math.abs(Number(option.replace('%', ''))) / 100 const relativePercent = wei(percent).div(leverageWei) const stopLoss = - position?.position?.side === 'short' + position?.side === 'short' ? marketPrice.add(marketPrice.mul(relativePercent)) : marketPrice.sub(marketPrice.mul(relativePercent)) const dp = suggestedDecimals(stopLoss) dispatch(setSLTPModalStopLoss(stopLoss.toString(dp))) } }, - [marketPrice, dispatch, position?.position?.side, leverageWei, slValidity.disabled] + [marketPrice, dispatch, position?.side, leverageWei, slValidity.disabled] ) const onSelectTakeProfit = useCallback( @@ -174,14 +174,14 @@ export default function EditStopLossAndTakeProfitModal() { const percent = Math.abs(Number(option.replace('%', ''))) / 100 const relativePercent = wei(percent).div(leverageWei) const takeProfit = - position?.position?.side === 'short' + position?.side === 'short' ? marketPrice.sub(marketPrice.mul(relativePercent)) : marketPrice.add(marketPrice.mul(relativePercent)) const dp = suggestedDecimals(takeProfit) dispatch(setSLTPModalTakeProfit(takeProfit.toString(dp))) } }, - [marketPrice, dispatch, position?.position?.side, leverageWei] + [marketPrice, dispatch, position?.side, leverageWei] ) const onChangeStopLoss = useCallback( @@ -215,8 +215,7 @@ export default function EditStopLossAndTakeProfitModal() { nodeValue={ {market?.marketName} - {' '} - + } /> @@ -231,8 +230,8 @@ export default function EditStopLossAndTakeProfitModal() { invalid={tpInvalid} currentPrice={marketPrice} value={takeProfitPrice} - positionSide={position?.position?.side || PositionSide.LONG} - leverage={position?.position?.leverage || wei(1)} + positionSide={position?.side || PositionSide.LONG} + leverage={position?.leverage || wei(1)} onChange={onChangeTakeProfit} /> @@ -248,8 +247,8 @@ export default function EditStopLossAndTakeProfitModal() { type={'stop-loss'} disabled={!!slValidity.disabled} disabledReason={slValidity.disabled ? 'Leverage Too High' : undefined} - positionSide={position?.position?.side || PositionSide.LONG} - leverage={position?.position?.leverage || wei(1)} + positionSide={position?.side || PositionSide.LONG} + leverage={position?.leverage || wei(1)} invalid={slValidity.invalid} currentPrice={marketPrice} minMaxPrice={slValidity.minMaxStopPrice} diff --git a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx index c93d14d6a9..5303020987 100644 --- a/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx +++ b/packages/app/src/sections/futures/FeeInfoBox/ClosePositionFeeInfo.tsx @@ -2,7 +2,7 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' import { memo } from 'react' import { - selectClosePositionOrderInputs, + selectCloseSMPositionOrderInputs, selectClosePositionPreview, selectEditPositionModalInfo, selectSmartMarginKeeperDeposit, @@ -15,7 +15,7 @@ const ClosePositionFeeInfo = memo(() => { const tradePreview = useAppSelector(selectClosePositionPreview) const { market } = useAppSelector(selectEditPositionModalInfo) const keeperEthDeposit = useAppSelector(selectSmartMarginKeeperDeposit) - const { orderType } = useAppSelector(selectClosePositionOrderInputs) + const { orderType } = useAppSelector(selectCloseSMPositionOrderInputs) return ( { const marketAsset = useAppSelector(selectMarketAsset) const openDelayedOrders = useAppSelector(selectOpenDelayedOrders) + const crossMarginOrders = useAppSelector(selectAsyncCrossMarginOrders) const futuresMarkets = useAppSelector(selectMarkets) const isExecuting = useAppSelector(selectIsExecutingOrder) + const futuresType = useAppSelector(selectFuturesType) + const isCancelling = useAppSelector(selectIsCancellingOrder) - const [countdownTimers, setCountdownTimers] = useState() - - const handleCancel = useCallback( - (marketAddress: string, isOffchain: boolean) => () => { - dispatch(cancelDelayedOrder({ marketAddress, isOffchain })) - }, - [dispatch] + const orders = useMemo( + () => (futuresType === FuturesMarginType.CROSS_MARGIN ? crossMarginOrders : openDelayedOrders), + [futuresType, crossMarginOrders, openDelayedOrders] ) + const [countdownTimers, setCountdownTimers] = useState() + const handleExecute = useCallback( - (marketKey: FuturesMarketKey, marketAddress: string, isOffchain: boolean) => () => { - dispatch(executeDelayedOrder({ marketKey, marketAddress, isOffchain })) + (marketKey: FuturesMarketKey, marketAddress: string) => () => { + dispatch(executeDelayedOrder({ marketKey, marketAddress })) }, [dispatch] ) const rowsData = useMemo(() => { - const ordersWithCancel = openDelayedOrders + const ordersWithCancel = orders .map((o) => { - const market = futuresMarkets.find((m) => m.market === o.marketAddress) - const timer = countdownTimers ? countdownTimers[o.marketKey] : null + const timer = countdownTimers ? countdownTimers[o.market.marketKey] : null const order = { ...o, - sizeTxt: formatCurrency(o.asset, o.size.abs(), { - currencyKey: getDisplayAsset(o.asset) ?? '', + sizeTxt: formatCurrency(o.market.asset, o.size.abs(), { + currencyKey: getDisplayAsset(o.market.asset) ?? '', minDecimals: suggestedDecimals(o.size), }), timeToExecution: timer?.timeToExecution, @@ -68,52 +75,66 @@ const OrdersTab: React.FC = () => { show: !!timer, isStale: timer && - market?.settings && + o.market.settings && timer.timeToExecution === 0 && - timer.timePastExecution > - DEFAULT_DELAYED_CANCEL_BUFFER + - (o.isOffchain - ? market.settings.offchainDelayedOrderMaxAge - : market.settings.maxDelayTimeDelta), + timer.timePastExecution > DEFAULT_DELAYED_CANCEL_BUFFER + o.settlementWindowDuration, isFailed: timer && - market?.settings && + o.market.settings && timer.timeToExecution === 0 && - timer.timePastExecution > - DEFAULT_DELAYED_EXECUTION_BUFFER + - (o.isOffchain - ? market.settings.offchainDelayedOrderMinAge - : market.settings.minDelayTimeDelta), + timer.timePastExecution > DEFAULT_DELAYED_EXECUTION_BUFFER, isExecutable: timer && - market?.settings && timer.timeToExecution === 0 && - timer.timePastExecution <= - (o.isOffchain - ? market.settings.offchainDelayedOrderMaxAge - : market.settings.maxDelayTimeDelta), - totalDeposit: o.commitDeposit.add(o.keeperDeposit), + timer.timePastExecution <= o.settlementWindowDuration, + totalDeposit: o.settlementFee, + onCancel: () => { + if (o.market.version === 2) { + dispatch(cancelDelayedOrder(o.market.marketAddress)) + } else { + dispatch(cancelAsyncOrder(o.market.marketId)) + } + }, + onExecute: () => { + if (o.market.version === 2) { + dispatch( + executeDelayedOrder({ + marketKey: o.market.marketKey, + marketAddress: o.market.marketAddress, + }) + ) + } else { + dispatch( + executeAsyncOrder({ + marketKey: o.market.marketKey, + marketId: o.market.marketId, + }) + ) + } + }, } return order }) .sort((a, b) => { - return b.asset === marketAsset && a.asset !== marketAsset + return b.market.asset === marketAsset && a.market.asset !== marketAsset ? 1 - : b.asset === marketAsset && a.asset === marketAsset + : b.market.asset === marketAsset && a.market.asset === marketAsset ? 0 : -1 }) return ordersWithCancel - }, [openDelayedOrders, futuresMarkets, marketAsset, countdownTimers]) + }, [openDelayedOrders, futuresMarkets, marketAsset, countdownTimers, crossMarginOrders, dispatch]) + + // TODO: Combine this with the one in OpenDelayedOrdersTable useInterval( () => { const newCountdownTimers = rowsData.reduce((acc, order) => { - const timeToExecution = Math.floor((order.executableAtTimestamp - Date.now()) / 1000) - const timePastExecution = Math.floor((Date.now() - order.executableAtTimestamp) / 1000) + const timeToExecution = Math.floor(order.executableStartTime - Date.now() / 1000) + const timePastExecution = Math.floor(Date.now() / 1000 - order.executableStartTime) // Only updated delayed orders - acc[order.marketKey] = { + acc[order.market.marketKey] = { timeToExecution: Math.max(timeToExecution, 0), timePastExecution: Math.max(timePastExecution, 0), } @@ -124,7 +145,6 @@ const OrdersTab: React.FC = () => { 1000, [rowsData] ) - return ( {!isL2 ? ( @@ -143,7 +163,7 @@ const OrdersTab: React.FC = () => {
{order.market} - {order.orderType} + Market
@@ -151,8 +171,14 @@ const OrdersTab: React.FC = () => { {order.show && order.isStale && ( { + if (order.market.version === 2) { + dispatch(cancelDelayedOrder(order.market.marketAddress)) + } else { + dispatch(cancelAsyncOrder(order.market.marketId)) + } + }} + disabled={isCancelling} color="red" > Cancel @@ -163,11 +189,23 @@ const OrdersTab: React.FC = () => { { + if (order.market.version === 2) { + dispatch( + executeDelayedOrder({ + marketKey: order.market.marketKey, + marketAddress: order.market.marketAddress, + }) + ) + } else { + dispatch( + executeAsyncOrder({ + marketKey: order.market.marketKey, + marketId: order.market.marketId, + }) + ) + } + }} disabled={isExecuting} > Execute diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx index 5c30dd82b0..a540c406a7 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/PositionsTab.tsx @@ -1,9 +1,9 @@ -import { ZERO_WEI } from '@kwenta/sdk/constants' import { FuturesMarginType, FuturesMarketKey, PositionSide } from '@kwenta/sdk/types' import Router from 'next/router' import { useCallback, useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import Currency from 'components/Currency' import { FlexDiv, FlexDivRow, FlexDivRowCentered } from 'components/layout/flex' @@ -21,13 +21,7 @@ import EditPositionButton from 'sections/futures/UserInfo/EditPositionButton' import { setShowPositionModal } from 'state/app/reducer' import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' -import { - selectSmartMarginPositions, - selectMarkets, - selectMarkPrices, - selectPositionHistory, -} from 'state/futures/selectors' -import { SharePositionParams } from 'state/futures/types' +import { selectSmartMarginPositions } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import media from 'styles/media' @@ -40,56 +34,34 @@ const PositionsTab = () => { const crossMarginPositions = useAppSelector(selectCrossMarginPositions) const smartMarginPositions = useAppSelector(selectSmartMarginPositions) - const positionHistory = useAppSelector(selectPositionHistory) const currentMarket = useAppSelector(selectMarketAsset) - const futuresMarkets = useAppSelector(selectMarkets) - const markPrices = useAppSelector(selectMarkPrices) const accountType = useAppSelector(selectFuturesType) const [showShareModal, setShowShareModal] = useState(false) - const [sharePosition, setSharePosition] = useState(null) + const [sharePosition, setSharePosition] = useState(null) let data = useMemo(() => { const positions = accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions return positions .map((position) => { - const market = futuresMarkets.find((market) => market.asset === position.asset) - const thisPositionHistory = positionHistory.find((ph) => { - return ph.isOpen && ph.asset === position.asset - }) - const markPrice = markPrices[market?.marketKey!] ?? ZERO_WEI return { - market: market!, + market: position.market, remainingMargin: position.remainingMargin, - position: position.position!, - avgEntryPrice: thisPositionHistory?.avgEntryPrice, + position: position, + avgEntryPrice: position.history?.avgEntryPrice, stopLoss: position.stopLoss?.targetPrice, takeProfit: position.takeProfit?.targetPrice, - share: { - asset: position.asset, - position: position.position!, - positionHistory: thisPositionHistory!, - marketPrice: markPrice, - }, } }) .filter(({ position, market }) => !!position && !!market) .sort((a) => (a.market.asset === currentMarket ? -1 : 1)) - }, [ - accountType, - smartMarginPositions, - crossMarginPositions, - futuresMarkets, - positionHistory, - markPrices, - currentMarket, - ]) + }, [accountType, smartMarginPositions, crossMarginPositions, currentMarket]) const handleOpenPositionCloseModal = useCallback( (marketKey: FuturesMarketKey) => () => { dispatch( setShowPositionModal({ - type: 'futures_close_position', + type: 'smart_margin_close_position', marketKey, }) ) @@ -97,7 +69,7 @@ const PositionsTab = () => { [dispatch] ) - const handleOpenShareModal = useCallback((share: SharePositionParams) => { + const handleOpenShareModal = useCallback((share: FuturesPositionTablePosition) => { setSharePosition(share) setShowShareModal((s) => !s) }, []) @@ -137,7 +109,7 @@ const PositionsTab = () => { Close - handleOpenShareModal(row.share)}> + handleOpenShareModal(row.position)}> Share diff --git a/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx b/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx index a7f30fd238..fd957c34f8 100644 --- a/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx +++ b/packages/app/src/sections/futures/MobileTrade/UserTabs/UserTabs.tsx @@ -2,11 +2,8 @@ import React, { useMemo } from 'react' import styled from 'styled-components' import TabButton from 'components/Button/TabButton' -import { - selectActiveSmartPositionsCount, - selectAllConditionalOrders, -} from 'state/futures/selectors' -import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' +import { selectAllConditionalOrders, selectPendingOrdersCount } from 'state/futures/selectors' +import { selectActiveSmartPositionsCount } from 'state/futures/smartMargin/selectors' import { useAppSelector } from 'state/hooks' import ConditionalOrdersTab from './ConditionalOrdersTab' @@ -16,7 +13,7 @@ import TradesTab from './TradesTab' const UserTabs: React.FC = () => { const [activeTab, setActiveTab] = React.useState(0) - const openOrders = useAppSelector(selectOpenDelayedOrders) + const pendingOrdersCount = useAppSelector(selectPendingOrdersCount) const conditionalOrders = useAppSelector(selectAllConditionalOrders) const smartPositionsCount = useAppSelector(selectActiveSmartPositionsCount) @@ -30,7 +27,7 @@ const UserTabs: React.FC = () => { { title: 'Pending', component: , - badge: openOrders.length, + badge: pendingOrdersCount, }, { title: 'Orders', @@ -42,7 +39,7 @@ const UserTabs: React.FC = () => { component: , }, ] - }, [conditionalOrders.length, openOrders.length, smartPositionsCount]) + }, [conditionalOrders.length, pendingOrdersCount, smartPositionsCount]) return ( diff --git a/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx b/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx deleted file mode 100644 index fd23801b6c..0000000000 --- a/packages/app/src/sections/futures/MobileTrade/drawers/ConditionalOrderDrawer.tsx +++ /dev/null @@ -1,109 +0,0 @@ -import { ConditionalOrder, PositionSide } from '@kwenta/sdk/types' -import { getDisplayAsset, formatCurrency } from '@kwenta/sdk/utils' -import React, { useCallback } from 'react' -import { useTranslation } from 'react-i18next' -import styled, { css } from 'styled-components' - -import Button from 'components/Button' -import { cancelConditionalOrder } from 'state/futures/smartMargin/actions' -import { useAppDispatch } from 'state/hooks' - -import BaseDrawer from './BaseDrawer' - -type OrderDrawerProps = { - open: boolean - order: ConditionalOrder - closeDrawer(): void -} - -export default function ConditionalOrderDrawer({ open, order, closeDrawer }: OrderDrawerProps) { - const { t } = useTranslation() - const dispatch = useAppDispatch() - - const onCancel = useCallback( - (order: ConditionalOrder) => { - dispatch(cancelConditionalOrder(order.id)) - }, - [dispatch] - ) - - const items = React.useMemo(() => { - if (!order || !order.side || !order.asset) return [] - - return [ - { - label: t('futures.market.user.open-orders.table.market'), - value: getDisplayAsset(order.asset), - }, - { - label: t('futures.market.user.open-orders.table.side'), - value: {order.side}, - }, - { - label: t('futures.market.user.open-orders.table.size'), - value: formatCurrency(order.asset, order.size.abs(), { - currencyKey: getDisplayAsset(order.asset) ?? '', - minDecimals: order.size.abs().lt(0.01) ? 4 : 2, - }), - }, - { - label: t('futures.market.user.open-orders.table.price'), - value: order.targetPriceTxt, - }, - { - label: t('futures.market.user.open-orders.table.type'), - value: order.orderTypeDisplay, - }, - ] - }, [t, order]) - - return ( - onCancel(order)}>Cancel} - /> - ) -} - -const StyledPositionSide = styled.div<{ side: PositionSide }>` - text-transform: uppercase; - font-weight: bold; - ${(props) => - props.side === PositionSide.LONG && - css` - color: ${props.theme.colors.common.primaryGreen}; - `} - - ${(props) => - props.side === PositionSide.SHORT && - css` - color: ${props.theme.colors.common.primaryRed}; - `} -` - -const CancelOrderButton = styled(Button)` - font-size: 16px; - height: 41px; - text-align: center; - white-space: normal; - background: rgba(239, 104, 104, 0.04); - border: 1px solid #ef6868; - box-shadow: none; - transition: all 0s ease-in-out; - flex: 1; - - &:hover { - background: ${(props) => props.theme.colors.common.primaryRed}; - color: ${(props) => props.theme.colors.white}; - transform: scale(0.98); - } - - &:disabled { - border: ${(props) => props.theme.colors.selectedTheme.border}; - background: transparent; - color: ${(props) => props.theme.colors.selectedTheme.button.disabled.text}; - transform: none; - } -` diff --git a/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx b/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx deleted file mode 100644 index 3590a685b3..0000000000 --- a/packages/app/src/sections/futures/MobileTrade/drawers/OrderDrawer.tsx +++ /dev/null @@ -1,139 +0,0 @@ -import { PositionSide } from '@kwenta/sdk/types' -import { getDisplayAsset, formatCurrency } from '@kwenta/sdk/utils' -import React, { useCallback } from 'react' -import { useTranslation } from 'react-i18next' -import styled, { css } from 'styled-components' - -import Button from 'components/Button' -import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' -import { DelayedOrderWithDetails } from 'state/futures/common/types' -import { useAppDispatch } from 'state/hooks' - -import BaseDrawer from './BaseDrawer' - -type OrderDrawerProps = { - open: boolean - order: DelayedOrderWithDetails - closeDrawer(): void -} - -const OrderDrawer: React.FC = ({ open, order, closeDrawer }) => { - const { t } = useTranslation() - const dispatch = useAppDispatch() - - const onCancel = useCallback( - (order: DelayedOrderWithDetails) => { - dispatch( - cancelDelayedOrder({ - marketAddress: order.marketAddress, - isOffchain: order.isOffchain, - }) - ) - }, - [dispatch] - ) - - const onExecute = useCallback( - (order: DelayedOrderWithDetails) => { - dispatch( - executeDelayedOrder({ - marketKey: order.marketKey, - marketAddress: order.marketAddress, - isOffchain: order.isOffchain, - }) - ) - }, - [dispatch] - ) - - const items = React.useMemo(() => { - if (!order || !order.side || !order.asset) return [] - - return [ - { - label: t('futures.market.user.open-orders.table.market'), - value: getDisplayAsset(order.asset), - }, - { - label: t('futures.market.user.open-orders.table.side'), - value: {order.side}, - }, - { - label: t('futures.market.user.open-orders.table.size'), - value: formatCurrency(order.asset, order.size.abs(), { - currencyKey: getDisplayAsset(order.asset) ?? '', - minDecimals: order.size.abs().lt(0.01) ? 4 : 2, - }), - }, - { - label: t('futures.market.user.open-orders.table.type'), - value: order.orderType, - }, - ] - }, [t, order]) - - return ( - - {order?.isExecutable && ( - onExecute(order)}>Execute - )} - onCancel(order)}>Cancel - - } - /> - ) -} - -const StyledPositionSide = styled.div<{ side: PositionSide }>` - text-transform: uppercase; - font-weight: bold; - ${(props) => - props.side === PositionSide.LONG && - css` - color: ${props.theme.colors.common.primaryGreen}; - `} - - ${(props) => - props.side === PositionSide.SHORT && - css` - color: ${props.theme.colors.common.primaryRed}; - `} -` - -const ExecuteButton = styled(Button)` - margin-right: 10px; - height: 41px; - flex: 1; -` - -const CancelOrderButton = styled(Button)` - font-size: 16px; - height: 41px; - text-align: center; - white-space: normal; - background: rgba(239, 104, 104, 0.04); - border: 1px solid #ef6868; - box-shadow: none; - transition: all 0s ease-in-out; - flex: 1; - - &:hover { - background: ${(props) => props.theme.colors.common.primaryRed}; - color: ${(props) => props.theme.colors.white}; - transform: scale(0.98); - } - - &:disabled { - border: ${(props) => props.theme.colors.selectedTheme.border}; - background: transparent; - color: ${(props) => props.theme.colors.selectedTheme.button.disabled.text}; - transform: none; - } -` - -export default OrderDrawer diff --git a/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx b/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx index c14287b580..d20c4acfa0 100644 --- a/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx +++ b/packages/app/src/sections/futures/ShareModal/AmountContainer.tsx @@ -3,17 +3,21 @@ import { PositionSide } from '@kwenta/sdk/types' import { MarketKeyByAsset, formatNumber } from '@kwenta/sdk/utils' import { FC, useMemo } from 'react' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import CurrencyIcon from 'components/Currency/CurrencyIcon' import { selectMarketAsset } from 'state/futures/common/selectors' -import { SharePositionParams } from 'state/futures/types' import { useAppSelector } from 'state/hooks' import media from 'styles/media' import { getMarketName } from 'utils/futures' -const AmountContainer: FC = ({ asset, position }) => { +type Props = { + position?: FuturesPositionTablePosition +} + +const AmountContainer: FC = ({ position }) => { const defaultAsset = useAppSelector(selectMarketAsset) - const marketAsset = asset ?? defaultAsset + const marketAsset = position?.market.asset ?? defaultAsset const marketName = getMarketName(marketAsset) const positionDetails = position ?? null const leverage = formatNumber(positionDetails?.leverage ?? ZERO_WEI) + 'x' diff --git a/packages/app/src/sections/futures/ShareModal/PositionMetadata.tsx b/packages/app/src/sections/futures/ShareModal/PositionMetadata.tsx index 04cde8bb46..41af4bc324 100644 --- a/packages/app/src/sections/futures/ShareModal/PositionMetadata.tsx +++ b/packages/app/src/sections/futures/ShareModal/PositionMetadata.tsx @@ -4,8 +4,8 @@ import { format } from 'date-fns' import { useLayoutEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' -import { SharePositionParams } from 'state/futures/types' import media from 'styles/media' import getLocale from 'utils/formatters/getLocale' @@ -80,12 +80,12 @@ function getFontFamily(props: any) { } } -const PositionMetadata: React.FC = ({ positionHistory, marketPrice }) => { +const PositionMetadata: React.FC<{ position: FuturesPositionTablePosition }> = ({ position }) => { const { t } = useTranslation() const [currentTimestamp, setCurrentTimestamp] = useState(0) - const avgEntryPrice = positionHistory?.avgEntryPrice.toNumber().toString() ?? '' - const openTimestamp = positionHistory?.openTimestamp ?? 0 + const avgEntryPrice = position?.history?.avgEntryPrice.toNumber().toString() ?? '' + const openTimestamp = position?.history?.openTimestamp ?? 0 useLayoutEffect(() => { const now = new Date().getTime() @@ -128,7 +128,7 @@ const PositionMetadata: React.FC = ({ positionHistory, mark {t('futures.modals.share.position-metadata.current-price')} - {formatNumber(marketPrice ?? ZERO_WEI)} + {formatNumber(position?.lastPrice ?? ZERO_WEI)} diff --git a/packages/app/src/sections/futures/ShareModal/ShareModal.tsx b/packages/app/src/sections/futures/ShareModal/ShareModal.tsx index bd46050c70..f9908f1686 100644 --- a/packages/app/src/sections/futures/ShareModal/ShareModal.tsx +++ b/packages/app/src/sections/futures/ShareModal/ShareModal.tsx @@ -1,12 +1,12 @@ import { FC } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import MobilePNLGraphicPNG from 'assets/png/mobile-pnl-graphic.png' import PNLGraphicPNG from 'assets/png/pnl-graphic.png' import BaseModal from 'components/BaseModal' import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' -import { SharePositionParams } from 'state/futures/types' import media from 'styles/media' import AmountContainer from './AmountContainer' @@ -14,7 +14,7 @@ import PositionMetadata from './PositionMetadata' import ShareModalButton from './ShareModalButton' type ShareModalProps = { - sharePosition: SharePositionParams + sharePosition: FuturesPositionTablePosition setShowShareModal: React.Dispatch> } @@ -38,11 +38,8 @@ const ShareModal: FC = ({ sharePosition, setShowShareModal }) = - - + + diff --git a/packages/app/src/sections/futures/ShareModal/ShareModalButton.tsx b/packages/app/src/sections/futures/ShareModal/ShareModalButton.tsx index 76ab0eedf8..a6c25494b7 100644 --- a/packages/app/src/sections/futures/ShareModal/ShareModalButton.tsx +++ b/packages/app/src/sections/futures/ShareModal/ShareModalButton.tsx @@ -5,11 +5,11 @@ import { toPng } from 'html-to-image' import { FC } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import TwitterIcon from 'assets/svg/social/twitter.svg' import Button from 'components/Button' import { DesktopOnlyView, MobileOrTabletView } from 'components/Media' -import { SharePositionParams } from 'state/futures/types' import { getMarketName } from 'utils/futures' function getTwitterText( @@ -38,7 +38,7 @@ function downloadPng(dataUrl: string) { } type ShareModalButtonProps = { - position: SharePositionParams + position: FuturesPositionTablePosition } const ShareModalButton: FC = ({ position }) => { @@ -54,17 +54,16 @@ const ShareModalButton: FC = ({ position }) => { } const handleTweet = () => { - const positionDetails = position.position ?? null - const side = positionDetails?.side === 'long' ? PositionSide.LONG : PositionSide.SHORT - const marketName = getMarketName(position.asset!) - const leverage = formatNumber(positionDetails?.leverage ?? ZERO_WEI) + 'x' - const pnlPct = `+${positionDetails?.pnlPct.mul(100).toNumber().toFixed(2)}%` - - const avgEntryPrice = position.positionHistory?.avgEntryPrice - ? formatNumber(position.positionHistory?.avgEntryPrice) + const side = position?.side === 'long' ? PositionSide.LONG : PositionSide.SHORT + const marketName = getMarketName(position.market.asset!) + const leverage = formatNumber(position?.leverage ?? ZERO_WEI) + 'x' + const pnlPct = `+${position?.pnlPct.mul(100).toNumber().toFixed(2)}%` + + const avgEntryPrice = position.history?.avgEntryPrice + ? formatNumber(position.history?.avgEntryPrice) : '' const dollarEntry = formatDollars(avgEntryPrice ?? ZERO_WEI, { suggestDecimals: true }) - const dollarCurrent = formatNumber(position.marketPrice ?? ZERO_WEI) + const dollarCurrent = formatNumber(position.lastPrice ?? ZERO_WEI) const text = getTwitterText(side, marketName, leverage, pnlPct, dollarEntry, dollarCurrent) window.open(`https://twitter.com/intent/tweet?text=${text}`, '_blank') } diff --git a/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx b/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx index 623d73acd8..c391ac431f 100644 --- a/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx +++ b/packages/app/src/sections/futures/Trade/MarketsDropdown.tsx @@ -1,5 +1,5 @@ import { ZERO_WEI } from '@kwenta/sdk/constants' -import { FuturesMarketAsset } from '@kwenta/sdk/types' +import { FuturesMarket, FuturesMarketAsset } from '@kwenta/sdk/types' import { getDisplayAsset, AssetDisplayByAsset, @@ -115,7 +115,7 @@ const MarketsDropdown: React.FC = ({ mobile }) => { const options = useMemo(() => { const lowerSearch = search?.toLowerCase() const markets = lowerSearch - ? futuresMarkets.filter( + ? (futuresMarkets as FuturesMarket[]).filter( (m) => m.asset.toLowerCase().includes(lowerSearch) || AssetDisplayByAsset[m.asset]?.toLocaleLowerCase().includes(lowerSearch) diff --git a/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx index 67422ee98b..5579ef0f8f 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx @@ -57,6 +57,7 @@ const CrossMarginOrderConfirmationModal: FC = () => { const marketAsset = useAppSelector(selectMarketAsset) const submitting = useAppSelector(selectSubmittingFuturesTx) const preview = useAppSelector(selectCrossMarginTradePreview) + const settlementStrategy = marketInfo?.settlementStrategies[0] const positionSize = useMemo(() => { const positionDetails = position?.position @@ -95,9 +96,12 @@ const CrossMarginOrderConfirmationModal: FC = () => { }, { label: t('futures.market.user.position.modal.time-delay'), - value: `${formatNumber(marketInfo?.settings.offchainDelayedOrderMinAge ?? ZERO_WEI, { - maxDecimals: 0, - })} sec`, + value: `${formatNumber( + settlementStrategy?.settlementDelay ? settlementStrategy.settlementDelay : ZERO_WEI, + { + maxDecimals: 0, + } + )} sec`, }, { label: t('futures.market.user.position.modal.fee-estimated'), diff --git a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx index 34716f9a9e..93c2100019 100644 --- a/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/OpenDelayedOrdersTable.tsx @@ -1,6 +1,6 @@ -import { FuturesMarketKey } from '@kwenta/sdk/types' +import { FuturesMarginType, FuturesMarketKey } from '@kwenta/sdk/types' import { getDisplayAsset, formatCurrency, suggestedDecimals } from '@kwenta/sdk/utils' -import { useState, useMemo } from 'react' +import { useState, useMemo, memo } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' @@ -13,13 +13,16 @@ import { DEFAULT_DELAYED_CANCEL_BUFFER, DEFAULT_DELAYED_EXECUTION_BUFFER } from import useInterval from 'hooks/useInterval' import useIsL2 from 'hooks/useIsL2' import useNetworkSwitcher from 'hooks/useNetworkSwitcher' -import { cancelDelayedOrder, executeDelayedOrder } from 'state/futures/actions' -import { selectMarketAsset } from 'state/futures/common/selectors' +import { cancelDelayedOrder } from 'state/futures/actions' +import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' +import { cancelAsyncOrder, executeAsyncOrder } from 'state/futures/crossMargin/actions' +import { selectAsyncCrossMarginOrders } from 'state/futures/crossMargin/selectors' import { selectIsCancellingOrder, selectIsExecutingOrder, selectMarkets, } from 'state/futures/selectors' +import { executeDelayedOrder } from 'state/futures/smartMargin/actions' import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' @@ -35,7 +38,7 @@ type CountdownTimers = Record< } > -const OpenDelayedOrdersTable: React.FC = () => { +const OpenDelayedOrdersTable: React.FC = memo(() => { const { t } = useTranslation() const dispatch = useAppDispatch() const { switchToL2 } = useNetworkSwitcher() @@ -46,18 +49,24 @@ const OpenDelayedOrdersTable: React.FC = () => { const futuresMarkets = useAppSelector(selectMarkets) const isCancelling = useAppSelector(selectIsCancellingOrder) const isExecuting = useAppSelector(selectIsExecutingOrder) + const crossMarginOrders = useAppSelector(selectAsyncCrossMarginOrders) + const futuresType = useAppSelector(selectFuturesType) + + const orders = useMemo( + () => (futuresType === FuturesMarginType.CROSS_MARGIN ? crossMarginOrders : openDelayedOrders), + [futuresType, crossMarginOrders, openDelayedOrders] + ) const [countdownTimers, setCountdownTimers] = useState() const rowsData = useMemo(() => { - const ordersWithCancel = openDelayedOrders + const ordersWithCancel = orders .map((o) => { - const market = futuresMarkets.find((m) => m.market === o.marketAddress) - const timer = countdownTimers ? countdownTimers[o.marketKey] : null + const timer = countdownTimers ? countdownTimers[o.market.marketKey] : null const order = { ...o, - sizeTxt: formatCurrency(o.asset, o.size.abs(), { - currencyKey: getDisplayAsset(o.asset) ?? '', + sizeTxt: formatCurrency(o.market.asset, o.size.abs(), { + currencyKey: getDisplayAsset(o.market.asset) ?? '', minDecimals: suggestedDecimals(o.size), }), timeToExecution: timer?.timeToExecution, @@ -65,69 +74,67 @@ const OpenDelayedOrdersTable: React.FC = () => { show: !!timer, isStale: timer && - market?.settings && + o.market.settings && timer.timeToExecution === 0 && - timer.timePastExecution > - DEFAULT_DELAYED_CANCEL_BUFFER + - (o.isOffchain - ? market.settings.offchainDelayedOrderMaxAge - : market.settings.maxDelayTimeDelta), + timer.timePastExecution > DEFAULT_DELAYED_CANCEL_BUFFER + o.settlementWindowDuration, isFailed: timer && - market?.settings && + o.market.settings && timer.timeToExecution === 0 && - timer.timePastExecution > - DEFAULT_DELAYED_EXECUTION_BUFFER + - (o.isOffchain - ? market.settings.offchainDelayedOrderMinAge - : market.settings.minDelayTimeDelta), + timer.timePastExecution > DEFAULT_DELAYED_EXECUTION_BUFFER, isExecutable: timer && - market?.settings && timer.timeToExecution === 0 && - timer.timePastExecution <= - (o.isOffchain - ? market.settings.offchainDelayedOrderMaxAge - : market.settings.maxDelayTimeDelta), - totalDeposit: o.commitDeposit.add(o.keeperDeposit), + timer.timePastExecution <= o.settlementWindowDuration, + totalDeposit: o.settlementFee, onCancel: () => { - dispatch( - cancelDelayedOrder({ - marketAddress: o.marketAddress, - isOffchain: o.isOffchain, - }) - ) + if (o.market.version === 2) { + dispatch(cancelDelayedOrder(o.market.marketAddress)) + } else { + dispatch(cancelAsyncOrder(o.market.marketId)) + } }, onExecute: () => { - dispatch( - executeDelayedOrder({ - marketKey: o.marketKey, - marketAddress: o.marketAddress, - isOffchain: o.isOffchain, - }) - ) + if (o.market.version === 2) { + dispatch( + executeDelayedOrder({ + marketKey: o.market.marketKey, + marketAddress: o.market.marketAddress, + }) + ) + } else { + dispatch( + executeAsyncOrder({ + marketKey: o.market.marketKey, + marketId: o.market.marketId, + }) + ) + } }, } return order }) .sort((a, b) => { - return b.asset === marketAsset && a.asset !== marketAsset + return b.market.asset === marketAsset && a.market.asset !== marketAsset ? 1 - : b.asset === marketAsset && a.asset === marketAsset + : b.market.asset === marketAsset && a.market.asset === marketAsset ? 0 : -1 }) return ordersWithCancel - }, [openDelayedOrders, futuresMarkets, marketAsset, countdownTimers, dispatch]) + }, [openDelayedOrders, futuresMarkets, marketAsset, countdownTimers, crossMarginOrders, dispatch]) useInterval( () => { const newCountdownTimers = rowsData.reduce((acc, order) => { - const timeToExecution = Math.floor((order.executableAtTimestamp - Date.now()) / 1000) - const timePastExecution = Math.floor((Date.now() - order.executableAtTimestamp) / 1000) + const timeToExecution = Math.floor(order.executableStartTime - Date.now() / 1000) + const timePastExecution = Math.floor(Date.now() / 1000 - order.executableStartTime) + // console.log('Date.now()', Date.now()) + // console.log('order.executableStartTime', order.executableStartTime) + // console.log('timePastExecution', timePastExecution) // Only updated delayed orders - acc[order.marketKey] = { + acc[order.market.marketKey] = { timeToExecution: Math.max(timeToExecution, 0), timePastExecution: Math.max(timePastExecution, 0), } @@ -166,9 +173,9 @@ const OpenDelayedOrdersTable: React.FC = () => { cell: (cellProps) => { return ( @@ -275,7 +282,7 @@ const OpenDelayedOrdersTable: React.FC = () => { ]} /> ) -} +}) const ExpiredBadge = styled(Badge)` background: ${(props) => props.theme.colors.selectedTheme.red}; diff --git a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx index 4696b25c48..5c48412003 100644 --- a/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx +++ b/packages/app/src/sections/futures/UserInfo/PositionsTable.tsx @@ -1,10 +1,10 @@ -import { ZERO_WEI } from '@kwenta/sdk/constants' import { FuturesMarginType } from '@kwenta/sdk/types' import { getDisplayAsset, formatPercent } from '@kwenta/sdk/utils' import { useRouter } from 'next/router' -import { FC, useCallback, useMemo, useState } from 'react' +import { FC, memo, useCallback, useMemo, useState } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import { FuturesPositionTablePosition } from 'types/futures' import UploadIcon from 'assets/svg/futures/upload-icon.svg' import Currency from 'components/Currency' @@ -22,13 +22,7 @@ import PositionType from 'sections/futures/PositionType' import { setShowPositionModal } from 'state/app/reducer' import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' import { selectCrossMarginPositions } from 'state/futures/crossMargin/selectors' -import { - selectSmartMarginPositions, - selectMarkets, - selectMarkPrices, - selectPositionHistory, -} from 'state/futures/selectors' -import { SharePositionParams } from 'state/futures/types' +import { selectSmartMarginPositions } from 'state/futures/smartMargin/selectors' import { useAppDispatch, useAppSelector } from 'state/hooks' import { FOOTER_HEIGHT } from 'styles/common' import media from 'styles/media' @@ -39,12 +33,11 @@ import ShareModal from '../ShareModal' import EditPositionButton from './EditPositionButton' import TableMarketDetails from './TableMarketDetails' -type FuturesPositionTableProps = { - showCurrentMarket?: boolean - showEmptyTable?: boolean +type Props = { + positions: FuturesPositionTablePosition[] } -const PositionsTable: FC = () => { +const PositionsTable: FC = memo(({ positions }: Props) => { const { t } = useTranslation() const router = useRouter() const dispatch = useAppDispatch() @@ -53,54 +46,16 @@ const PositionsTable: FC = () => { const isL2 = useIsL2() - const crossMarginPositions = useAppSelector(selectCrossMarginPositions) - const smartMarginPositions = useAppSelector(selectSmartMarginPositions) - const positionHistory = useAppSelector(selectPositionHistory) const currentMarket = useAppSelector(selectMarketAsset) - const futuresMarkets = useAppSelector(selectMarkets) - const markPrices = useAppSelector(selectMarkPrices) const accountType = useAppSelector(selectFuturesType) const [showShareModal, setShowShareModal] = useState(false) - const [sharePosition, setSharePosition] = useState(null) + const [sharePosition, setSharePosition] = useState(null) let data = useMemo(() => { - const positions = - accountType === FuturesMarginType.SMART_MARGIN ? smartMarginPositions : crossMarginPositions - return positions - .map((position) => { - const market = futuresMarkets.find((market) => market.asset === position.asset) - const thisPositionHistory = positionHistory.find((ph) => { - return ph.isOpen && ph.asset === position.asset - }) - const markPrice = markPrices[market?.marketKey!] ?? ZERO_WEI - return { - market: market!, - remainingMargin: position.remainingMargin, - position: position.position!, - avgEntryPrice: thisPositionHistory?.avgEntryPrice, - stopLoss: position.stopLoss?.targetPrice, - takeProfit: position.takeProfit?.targetPrice, - share: { - asset: position.asset, - position: position.position!, - positionHistory: thisPositionHistory!, - marketPrice: markPrice, - }, - } - }) - .filter(({ position, market }) => !!position && !!market) - .sort((a) => (a.market.asset === currentMarket ? -1 : 1)) - }, [ - accountType, - smartMarginPositions, - crossMarginPositions, - futuresMarkets, - positionHistory, - markPrices, - currentMarket, - ]) + return positions.sort((a) => (a.market.asset === currentMarket ? -1 : 1)) + }, [positions, currentMarket]) - const handleOpenShareModal = useCallback((share: SharePositionParams) => { + const handleOpenShareModal = useCallback((share: FuturesPositionTablePosition) => { setSharePosition(share) setShowShareModal((s) => !s) }, []) @@ -161,7 +116,7 @@ const PositionsTable: FC = () => { - + @@ -169,7 +124,7 @@ const PositionsTable: FC = () => {
- + {accountType === FuturesMarginType.SMART_MARGIN && ( = () => { )} @@ -199,7 +154,7 @@ const PositionsTable: FC = () => { @@ -215,27 +170,27 @@ const PositionsTable: FC = () => { /> )} - + - - - {formatPercent(row.position.pnlPct)} + + + {formatPercent(row.pnlPct)} - + {accountType === FuturesMarginType.SMART_MARGIN && ( - {row.takeProfit === undefined ? ( + {!row.takeProfit ? ( {NO_VALUE} ) : (
@@ -247,7 +202,7 @@ const PositionsTable: FC = () => { marketKey={row.market.marketKey} /> - {row.stopLoss === undefined ? ( + {!row.stopLoss ? ( {NO_VALUE} ) : (
@@ -264,7 +219,10 @@ const PositionsTable: FC = () => { onClick={() => dispatch( setShowPositionModal({ - type: 'futures_close_position', + type: + row.market.version === 3 + ? 'cross_margin_close_position' + : 'smart_margin_close_position', marketKey: row.market.marketKey, }) ) @@ -275,7 +233,7 @@ const PositionsTable: FC = () => { Close - handleOpenShareModal(row.share)} size="small"> + handleOpenShareModal(row)} size="small"> @@ -290,7 +248,30 @@ const PositionsTable: FC = () => { )} ) -} +}) + +export const CrossMarginPostitionsTable = memo(() => { + const crossMarginPositions = useAppSelector(selectCrossMarginPositions) + + return +}) + +export const SmartMarginPostitionsTable = memo(() => { + const smartMarginPositions = useAppSelector(selectSmartMarginPositions) + + return +}) + +const SelectedPositionsTable = memo(() => { + const type = useAppSelector(selectFuturesType) + return type === FuturesMarginType.CROSS_MARGIN ? ( + + ) : ( + + ) +}) + +export default SelectedPositionsTable const TableContainer = styled.div` overflow: scroll; @@ -350,5 +331,3 @@ const ColWithButton = styled.div` display: block; `} ` - -export default PositionsTable diff --git a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx index 42c2d052a3..3d16320d4c 100644 --- a/packages/app/src/sections/futures/UserInfo/UserInfo.tsx +++ b/packages/app/src/sections/futures/UserInfo/UserInfo.tsx @@ -14,14 +14,14 @@ import { TabPanel } from 'components/Tab' import ROUTES from 'constants/routes' import useWindowSize from 'hooks/useWindowSize' import { selectFuturesType, selectMarketAsset } from 'state/futures/common/selectors' +import { selectActiveCrossMarginPositionsCount } from 'state/futures/crossMargin/selectors' import { - selectActiveSmartPositionsCount, - selectActiveCrossMarginPositionsCount, selectPosition, selectAllConditionalOrders, + selectPendingOrdersCount, } from 'state/futures/selectors' import { fetchAllV2TradesForAccount } from 'state/futures/smartMargin/actions' -import { selectOpenDelayedOrders } from 'state/futures/smartMargin/selectors' +import { selectActiveSmartPositionsCount } from 'state/futures/smartMargin/selectors' import { useAppSelector, useFetchAction, useAppDispatch } from 'state/hooks' import { selectWallet } from 'state/wallet/selectors' @@ -56,7 +56,7 @@ const UserInfo: React.FC = memo(() => { const crossPositionsCount = useAppSelector(selectActiveCrossMarginPositionsCount) const walletAddress = useAppSelector(selectWallet) - const openOrders = useAppSelector(selectOpenDelayedOrders) + const pendingOrdersCount = useAppSelector(selectPendingOrdersCount) const conditionalOrders = useAppSelector(selectAllConditionalOrders) const accountType = useAppSelector(selectFuturesType) @@ -111,7 +111,7 @@ const UserInfo: React.FC = memo(() => { { name: FuturesTab.ORDERS, label: 'Pending', - badge: openOrders?.length, + badge: pendingOrdersCount, active: activeTab === FuturesTab.ORDERS, icon: , onClick: () => @@ -159,7 +159,7 @@ const UserInfo: React.FC = memo(() => { activeTab, router, marketAsset, - openOrders?.length, + pendingOrdersCount, accountType, crossPositionsCount, smartPositionsCount, diff --git a/packages/app/src/sections/leaderboard/TraderHistory.tsx b/packages/app/src/sections/leaderboard/TraderHistory.tsx index c107a32822..be2f1e708e 100644 --- a/packages/app/src/sections/leaderboard/TraderHistory.tsx +++ b/packages/app/src/sections/leaderboard/TraderHistory.tsx @@ -55,13 +55,13 @@ const TraderHistory: FC = memo( .map((stat, i) => { const totalDeposit = stat.initialMargin.add(stat.totalDeposits) const thisPosition = stat.isOpen - ? positions.find((p) => p.marketKey === stat.marketKey) + ? positions.find((p) => p.market.marketKey === stat.marketKey) : null const pnlWithFeesPaid = stat.pnl .sub(stat.feesPaid) .add(stat.netFunding) - .add(thisPosition?.position?.accruedFunding ?? ZERO_WEI) + .add(thisPosition?.accruedFunding ?? ZERO_WEI) return { ...stat, diff --git a/packages/app/src/state/app/types.ts b/packages/app/src/state/app/types.ts index 4aeecb25a1..82dc1db68f 100644 --- a/packages/app/src/state/app/types.ts +++ b/packages/app/src/state/app/types.ts @@ -3,7 +3,7 @@ import { TransactionStatus, FuturesMarketKey, KwentaStatus, GasPrice } from '@kw import { FuturesTransactionType } from 'state/futures/common/types' export type ModalType = - | 'futures_close_position_confirm' + | 'smart_margin_close_position_confirm' | 'futures_withdraw_smart_margin' | 'futures_deposit_withdraw_cross_margin' | 'futures_confirm_smart_margin_trade' @@ -15,7 +15,8 @@ export type ModalType = | null export type FuturesPositionModalType = - | 'futures_close_position' + | 'smart_margin_close_position' + | 'cross_margin_close_position' | 'futures_edit_position_margin' | 'futures_edit_position_size' | 'futures_edit_stop_loss_take_profit' diff --git a/packages/app/src/state/balances/actions.ts b/packages/app/src/state/balances/actions.ts index fd127cd57c..bbde04cbf7 100644 --- a/packages/app/src/state/balances/actions.ts +++ b/packages/app/src/state/balances/actions.ts @@ -1,4 +1,4 @@ -import { SynthV3Asset, SynthV3BalancesAndAllowances } from '@kwenta/sdk/types' +import { SynthV3BalancesAndAllowances } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' import { notifyError } from 'components/ErrorNotifier' diff --git a/packages/app/src/state/constants.ts b/packages/app/src/state/constants.ts index fa3680b357..afaff21130 100644 --- a/packages/app/src/state/constants.ts +++ b/packages/app/src/state/constants.ts @@ -39,6 +39,7 @@ export const ZERO_STATE_CM_ACCOUNT = { ...ZERO_STATE_ACCOUNT, balances: {}, availableMargin: '0', + asyncOrders: [], } export const DEFAULT_QUERY_STATUS = { diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index ec0e0d6b36..3ffc7e8c69 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -1,6 +1,5 @@ import { PERIOD_IN_SECONDS, Period } from '@kwenta/sdk/constants' import { - FuturesPosition, FuturesPositionHistory, FuturesMarketAsset, NetworkId, @@ -15,19 +14,16 @@ import { handleTransactionError, setTransaction, updateTransactionHash } from 's import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' import { editCrossMarginTradeSize, - fetchMarketsV3, + fetchV3Markets, fetchPositionHistoryV3, } from 'state/futures/crossMargin/actions' -import { serializeWeiObject } from 'state/helpers' import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork } from 'state/wallet/selectors' import { serializePositionHistory } from 'utils/futures' -import { refetchWithComparator } from 'utils/queries' import { selectFuturesType } from './common/selectors' -import { AppFuturesMarginType } from './common/types' -import { selectFuturesAccount, selectMarketInfo, selectPosition } from './selectors' +import { selectFuturesAccount } from './selectors' import { editSmartMarginTradeSize, fetchDailyVolumesV2, @@ -45,7 +41,6 @@ import { setSmartMarginEditPositionInputs, } from './smartMargin/reducer' import { selectSmartMarginSupportedNetwork } from './smartMargin/selectors' -import { CancelDelayedOrderInputs, ExecuteDelayedOrderInputs } from './types' export const fetchMarkets = createAsyncThunk( 'futures/fetchMarkets', @@ -53,48 +48,11 @@ export const fetchMarkets = createAsyncThunk( if (getState().futures.selectedType === FuturesMarginType.SMART_MARGIN) { dispatch(fetchMarketsV2()) } else { - dispatch(fetchMarketsV3()) + dispatch(fetchV3Markets()) } } ) -export const refetchPosition = createAsyncThunk< - { - position: FuturesPosition - wallet: string - futuresType: AppFuturesMarginType - networkId: NetworkId - } | null, - AppFuturesMarginType, - ThunkConfig ->('futures/refetchPosition', async (type, { getState, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) - if (!account) throw new Error('No wallet connected') - const marketInfo = selectMarketInfo(getState()) - const networkId = selectNetwork(getState()) - const position = selectPosition(getState()) - if (!marketInfo || !position) throw new Error('Market or position not found') - - const result = await refetchWithComparator( - () => - sdk.futures.getFuturesPositions(account!, [ - { asset: marketInfo.asset, marketKey: marketInfo.marketKey, address: marketInfo.market }, - ]), - position?.remainingMargin?.toString(), - (existing, next) => { - return existing === next[0]?.remainingMargin.toString() - } - ) - - if (result.data[0]) { - const serialized = serializeWeiObject( - result.data[0] as FuturesPosition - ) as FuturesPosition - return { position: serialized, wallet: account, futuresType: type, networkId } - } - return null -}) - export const fetchDailyVolumes = createAsyncThunk( 'futures/fetchDailyVolumes', async (_, { dispatch }) => { @@ -172,9 +130,9 @@ export const fetchPositionHistoryForTrader = createAsyncThunk< // Contract Mutations -export const cancelDelayedOrder = createAsyncThunk( +export const cancelDelayedOrder = createAsyncThunk( 'futures/cancelDelayedOrder', - async ({ marketAddress, isOffchain }, { getState, dispatch, extra: { sdk } }) => { + async (marketAddress, { getState, dispatch, extra: { sdk } }) => { const account = selectFuturesAccount(getState()) if (!account) throw new Error('No wallet connected') try { @@ -185,33 +143,7 @@ export const cancelDelayedOrder = createAsyncThunk( - 'futures/executeDelayedOrder', - async ({ marketKey, marketAddress, isOffchain }, { getState, dispatch, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) - if (!account) throw new Error('No wallet connected') - try { - dispatch( - setTransaction({ - status: TransactionStatus.AwaitingExecution, - type: 'execute_delayed_isolated', - hash: null, - }) - ) - const tx = isOffchain - ? await sdk.futures.executeDelayedOffchainOrder(marketKey, marketAddress, account) - : await sdk.futures.executeDelayedOrder(marketAddress, account) - dispatch(updateTransactionHash(tx.hash)) + const tx = await sdk.futures.cancelDelayedOrder(marketAddress, account, true) await monitorAndAwaitTransaction(dispatch, tx) dispatch(fetchSmartMarginOpenOrders()) } catch (err) { diff --git a/packages/app/src/state/futures/common/types.ts b/packages/app/src/state/futures/common/types.ts index 9e7c441f2a..8fde5a00ed 100644 --- a/packages/app/src/state/futures/common/types.ts +++ b/packages/app/src/state/futures/common/types.ts @@ -3,8 +3,6 @@ import { FuturesMarketAsset, FuturesMarketKey, FuturesOrderTypeDisplay, - FuturesPosition, - FuturesPositionHistory, FuturesTrade, MarginTransfer, NetworkId, @@ -19,12 +17,8 @@ export type AppFuturesMarginType = Exclude export type FuturesAccountData = { account: string - position?: FuturesPosition - positions?: FuturesPosition[] - positionHistory?: FuturesPositionHistory[] trades?: FuturesTrade[] marginTransfers?: MarginTransfer[] - delayedOrders: DelayedOrderWithDetails[] } export type DelayedOrderWithDetails = { @@ -84,17 +78,24 @@ export type EditPositionInputs = { export type PreviewAction = 'edit' | 'trade' | 'close' -export type CrossMarginTradePreviewParams = { - market: { - key: FuturesMarketKey - address: string - } +export type TradePreviewParams = { orderPrice: Wei sizeDelta: Wei action: PreviewAction } -export type SmartMarginTradePreviewParams = CrossMarginTradePreviewParams & { +export type CrossMarginTradePreviewParams = TradePreviewParams & { + market: { + key: FuturesMarketKey + id: number + } +} + +export type SmartMarginTradePreviewParams = TradePreviewParams & { + market: { + key: FuturesMarketKey + address: string + } marginDelta: Wei } diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 58c49a9171..46cc3435e7 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -1,22 +1,29 @@ import { DelayedOrder, - FuturesMarket, - FuturesPosition, + PerpsV2Position, FuturesPositionHistory, NetworkId, + PerpsMarketV3, + PerpsV3AsyncOrder, + PerpsV3Position, PositionSide, PotentialTradeStatus, SynthV3Asset, TransactionStatus, } from '@kwenta/sdk/types' -import { floorNumber } from '@kwenta/sdk/utils' +import { calculateDesiredFillPrice, floorNumber, getDefaultPriceImpact } from '@kwenta/sdk/utils' import { createAsyncThunk } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' import { debounce } from 'lodash' import { notifyError } from 'components/ErrorNotifier' import { monitorAndAwaitTransaction } from 'state/app/helpers' -import { handleTransactionError, setOpenModal, setTransaction } from 'state/app/reducer' +import { + handleTransactionError, + setOpenModal, + setTransaction, + updateTransactionHash, +} from 'state/app/reducer' import { fetchV3BalancesAndAllowances } from 'state/balances/actions' import { ZERO_STATE_TRADE_INPUTS } from 'state/constants' import { selectLeverageSide, selectMarketInfo, selectMarkets } from 'state/futures/selectors' @@ -24,11 +31,11 @@ import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { - formatDelayedOrders, perpsAccountIdFromAddress, - serializeDelayedOrders, - serializeMarkets, serializePositionHistory, + serializeV3AsyncOrder, + serializeV3Market, + serializeV3Positions, } from 'utils/futures' import logError from 'utils/logError' @@ -37,8 +44,9 @@ import { AppFuturesMarginType, CrossMarginTradePreviewParams, DebouncedCMPreviewParams, - DelayedOrderWithDetails, } from '../common/types' +import { selectV2MarketInfo } from '../smartMargin/selectors' +import { ExecuteAsyncOrderInputs } from '../types' import { incrementPreviewCrossMarginCount, @@ -56,25 +64,26 @@ import { selectCrossMarginSupportedNetwork, selectCrossMarginTradeInputs, selectCrossMarginTradePreview, - selectOpenDelayedOrdersV3, - selectV3MarketId, + selectAsyncCrossMarginOrders, selectV3MarketInfo, selectV3Markets, + selectCloseCMPositionModalInfo, + selectCloseCMPositionOrderInputs, } from './selectors' import { CrossMarginTradePreview } from './types' -export const fetchMarketsV3 = createAsyncThunk< - { markets: FuturesMarket[]; networkId: NetworkId } | undefined, +export const fetchV3Markets = createAsyncThunk< + { markets: PerpsMarketV3[]; networkId: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchMarketsV3', async (_, { getState, extra: { sdk } }) => { +>('futures/fetchV3Markets', async (_, { getState, extra: { sdk } }) => { const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const networkId = selectNetwork(getState()) if (!supportedNetwork) return try { const v3Markets = await sdk.perpsV3.getMarkets() - return { markets: serializeMarkets(v3Markets), networkId } + return { markets: v3Markets.map(serializeV3Market), networkId } } catch (err) { logError(err) notifyError('Failed to fetch markets', err) @@ -131,23 +140,22 @@ export const fetchPerpsV3Balances = createAsyncThunk( ) export const fetchCrossMarginPositions = createAsyncThunk< - { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, + { positions: PerpsV3Position[]; account: string; network: NetworkId } | undefined, void, ThunkConfig >('futures/fetchCrossMarginPositions', async (_, { extra: { sdk }, getState }) => { const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const { network, accountId } = selectAccountContext(getState()) - - const markets = selectMarkets(getState()) + const markets = selectV3Markets(getState()) if (!supportedNetwork || !accountId) return try { const positions = await sdk.perpsV3.getPositions( accountId, - markets.map((m) => Number(m.market)) + markets.map((m) => m.marketId) ) - return { positions: [], account: accountId, network } + return { positions: serializeV3Positions(positions), account: accountId, network } } catch (err) { logError(err) notifyError('Failed to fetch isolated margin positions', err) @@ -186,7 +194,7 @@ export const fetchPositionHistoryV3 = createAsyncThunk< export const refetchPosition = createAsyncThunk< { - position: FuturesPosition + position: PerpsV2Position wallet: string futuresType: AppFuturesMarginType networkId: NetworkId @@ -199,29 +207,26 @@ export const refetchPosition = createAsyncThunk< }) export const fetchCrossMarginOpenOrders = createAsyncThunk< - { orders: DelayedOrderWithDetails[]; wallet: string; networkId: NetworkId } | undefined, + { orders: PerpsV3AsyncOrder[]; wallet: string; networkId: NetworkId } | undefined, void, ThunkConfig >('futures/fetchCrossMarginOpenOrders', async (_, { dispatch, getState, extra: { sdk } }) => { const { accountId, network, wallet } = selectAccountContext(getState()) const supportedNetwork = selectCrossMarginSupportedNetwork(getState()) const markets = selectV3Markets(getState()) - const existingOrders = selectOpenDelayedOrdersV3(getState()) + const existingOrders = selectAsyncCrossMarginOrders(getState()) if (!accountId || !supportedNetwork || !markets.length || !wallet) return - try { - const marketIds = markets.map((market) => market.market) - const orders: DelayedOrder[] = await sdk.perpsV3.getDelayedOrders(accountId, marketIds) - - const nonzeroOrders = formatDelayedOrders(orders, markets) - const orderDropped = existingOrders.length > nonzeroOrders.length + const marketIds = markets.map((market) => market.marketId) + const orders = await sdk.perpsV3.getPendingAsyncOrders(accountId, marketIds) + const orderDropped = existingOrders.length > orders.length if (orderDropped) { dispatch(fetchCrossMarginPositions()) } return { networkId: network, - orders: serializeDelayedOrders(nonzeroOrders), + orders: orders.map(serializeV3AsyncOrder), wallet: wallet, } } catch (err) { @@ -237,18 +242,23 @@ export const fetchCrossMarginTradePreview = createAsyncThunk< >('futures/fetchCrossMarginTradePreview', async (params, { getState, extra: { sdk } }) => { // TODO: Fetch cross margin trade preview const marketPrice = params.orderPrice - const marketId = selectV3MarketId(getState()) + const marketInfo = selectV3MarketInfo(getState()) const availableMargin = selectCrossMarginAvailableMargin(getState()) try { - if (!marketId) throw new Error('No market selected') - const preview = await sdk.perpsV3.getTradePreview(Number(marketId), params.sizeDelta) + if (!marketInfo) throw new Error('No market selected') + if (!marketInfo.settlementStrategies[0]) throw new Error('No settlement strategy found') + const preview = await sdk.perpsV3.getTradePreview( + marketInfo.marketId, + params.sizeDelta, + marketInfo.settlementStrategies[0] + ) const priceImpact = preview.fillPrice.sub(marketPrice).div(marketPrice).abs() const notional = preview.fillPrice.mul(params.sizeDelta).abs() const populatedPreview = { settlementFee: preview.settlementFee.toString(), - marketId: Number(marketId), + marketId: marketInfo.marketId, fee: preview.fee.toString(), fillPrice: preview.fillPrice.toString(), priceImpact: priceImpact.toString(), @@ -349,7 +359,7 @@ export const editCrossMarginTradeSize = stageCrossMarginTradePreview({ market: { key: marketInfo.marketKey, - address: marketInfo.market, + id: marketInfo.marketId, }, orderPrice: indexPrice, sizeDelta: sizeDeltaWei, @@ -376,6 +386,8 @@ export const changeCrossMarginLeverageSide = dispatch(editCrossMarginTradeSize(nativeSizeString, 'native')) } +// Contract Mutations + export const createPerpsV3Account = createAsyncThunk< { account: string; wallet: string; network: NetworkId } | undefined, void, @@ -482,7 +494,7 @@ export const depositCrossMarginMargin = createAsyncThunk export const withdrawCrossMargin = createAsyncThunk( 'futures/withdrawCrossMargin', async (amount, { getState, dispatch, extra: { sdk } }) => { - const marketInfo = selectMarketInfo(getState()) + const marketInfo = selectV2MarketInfo(getState()) if (!marketInfo) throw new Error('Market info not found') try { dispatch( @@ -492,7 +504,7 @@ export const withdrawCrossMargin = createAsyncThunk( hash: null, }) ) - const tx = await sdk.futures.withdrawIsolatedMargin(marketInfo.market, amount) + const tx = await sdk.futures.withdrawIsolatedMargin(marketInfo.marketAddress, amount) await monitorAndAwaitTransaction(dispatch, tx) dispatch(refetchPosition()) dispatch(setOpenModal(null)) @@ -509,11 +521,11 @@ export const submitCrossMarginOrder = createAsyncThunk( 'futures/submitCrossMarginOrder', async (_, { dispatch, getState, extra: { sdk } }) => { const { nativeSizeDelta } = selectCrossMarginTradeInputs(getState()) - const marketId = selectV3MarketId(getState()) + const market = selectV3MarketInfo(getState()) const accountId = selectCrossMarginAccount(getState()) const preview = selectCrossMarginTradePreview(getState()) - if (!marketId || !accountId || !preview) throw new Error('Invalid order submission') + if (!market || !accountId || !preview) throw new Error('Invalid order submission') try { dispatch( @@ -524,10 +536,11 @@ export const submitCrossMarginOrder = createAsyncThunk( }) ) const tx = await sdk.perpsV3.submitOrder( - marketId, + market.marketId, accountId, wei(nativeSizeDelta || 0), - preview.desiredFillPrice + preview.desiredFillPrice, + market.settlementStrategies[0].strategyId ) await monitorAndAwaitTransaction(dispatch, tx) } catch (err) { @@ -540,7 +553,93 @@ export const submitCrossMarginOrder = createAsyncThunk( export const submitCrossMarginReducePositionOrder = createAsyncThunk( 'futures/submitCrossMarginReducePositionOrder', - async () => { + async (_, { getState, dispatch, extra: { sdk } }) => { + const { market, position, marketPrice } = selectCloseCMPositionModalInfo(getState()) + const accountId = selectCrossMarginAccount(getState()) + // TODO: Support partial close + const { nativeSizeDelta } = selectCloseCMPositionOrderInputs(getState()) + + try { + if (!position) throw new Error('Missing position data') + if (!accountId) throw new Error('Account not found') + + const sizeDelta = position.side === PositionSide.LONG ? position.size.neg() : position.size + const priceImpact = getDefaultPriceImpact('market') + const desiredFillPrice = calculateDesiredFillPrice( + sizeDelta, + // TODO: Use fill price from preview + marketPrice, + priceImpact + ) + + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'cancel_delayed_isolated', + hash: null, + }) + ) + + const tx = await sdk.perpsV3.submitOrder( + market.marketId, + accountId, + sizeDelta, + desiredFillPrice, + market.settlementStrategies[0].strategyId + ) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchCrossMarginOpenOrders()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } // TODO: hookup submit v3 order } ) + +export const cancelAsyncOrder = createAsyncThunk( + 'futures/cancelAsyncOrder', + async (marketId, { getState, dispatch, extra: { sdk } }) => { + const account = selectCrossMarginAccount(getState()) + if (!account) throw new Error('No wallet connected') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'cancel_delayed_isolated', + hash: null, + }) + ) + const tx = await sdk.perpsV3.cancelAsyncOrder(marketId, account) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchCrossMarginOpenOrders()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + +export const executeAsyncOrder = createAsyncThunk( + 'futures/executeAsyncOrder', + async ({ marketKey, marketId }, { getState, dispatch, extra: { sdk } }) => { + const account = selectCrossMarginAccount(getState()) + if (!account) throw new Error('No wallet connected') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'execute_delayed_isolated', + hash: null, + }) + ) + const tx = await sdk.perpsV3.executeAsyncOrder(marketKey, marketId, Number(account)) + dispatch(updateTransactionHash(tx.hash)) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchCrossMarginOpenOrders()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index ce7681f68b..68df4b02df 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -1,10 +1,5 @@ import { Period } from '@kwenta/sdk/constants' -import { - NetworkId, - FuturesMarketAsset, - FuturesPotentialTradeDetails, - PositionSide, -} from '@kwenta/sdk/types' +import { NetworkId, FuturesMarketAsset, PositionSide } from '@kwenta/sdk/types' import { createSlice, PayloadAction } from '@reduxjs/toolkit' import { ORDER_PREVIEW_ERRORS } from 'queries/futures/constants' @@ -18,14 +13,14 @@ import { } from 'state/constants' import { FetchStatus } from 'state/types' -import { refetchPosition, fetchFundingRatesHistory } from '../actions' +import { fetchFundingRatesHistory } from '../actions' import { PreviewAction, TradeSizeInputs } from '../common/types' import { fetchCrossMarginOpenOrders, fetchCrossMarginPositions, fetchPositionHistoryV3, - fetchMarketsV3, + fetchV3Markets, fetchPerpsV3Account, fetchAvailableMargin, } from './actions' @@ -198,16 +193,16 @@ const crossMarginSlice = createSlice({ }, extraReducers: (builder) => { // Markets - builder.addCase(fetchMarketsV3.pending, (futuresState) => { + builder.addCase(fetchV3Markets.pending, (futuresState) => { futuresState.queryStatuses.markets = LOADING_STATUS }) - builder.addCase(fetchMarketsV3.fulfilled, (futuresState, { payload }) => { + builder.addCase(fetchV3Markets.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.markets = SUCCESS_STATUS if (payload) { futuresState.markets[payload.networkId] = payload.markets } }) - builder.addCase(fetchMarketsV3.rejected, (futuresState) => { + builder.addCase(fetchV3Markets.rejected, (futuresState) => { futuresState.queryStatuses.markets = { status: FetchStatus.Error, error: 'Failed to fetch markets', @@ -234,21 +229,22 @@ const crossMarginSlice = createSlice({ } }) + // TODO: Refetch cross margin position // Refetch selected position - builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { - if (payload) { - const { position, wallet, networkId } = payload - const account = futuresState.accounts[networkId]?.[wallet] + // builder.addCase(refetchPosition.fulfilled, (futuresState, { payload }) => { + // if (payload) { + // const { position, wallet, networkId } = payload + // const account = futuresState.accounts[networkId]?.[wallet] - const existingPositions = account?.positions ?? [] - const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) - existingPositions[index] = position - futuresState.accounts[networkId][wallet] = { - ...account, - positions: existingPositions, - } - } - }) + // const existingPositions = account?.positions ?? [] + // const index = existingPositions.findIndex((p) => p.marketKey === position.marketKey) + // existingPositions[index] = position + // futuresState.accounts[networkId][wallet] = { + // ...account, + // positions: existingPositions, + // } + // } + // }) // Fetch Isolated Open Orders builder.addCase(fetchCrossMarginOpenOrders.pending, (futuresState) => { @@ -257,9 +253,9 @@ const crossMarginSlice = createSlice({ builder.addCase(fetchCrossMarginOpenOrders.fulfilled, (futuresState, { payload }) => { futuresState.queryStatuses.openOrders = SUCCESS_STATUS if (payload) { - const { orders: delayedOrders, wallet, networkId } = payload + const { orders: asyncOrders, wallet, networkId } = payload updateCrossMarginAccount(futuresState, networkId, wallet, { - delayedOrders, + asyncOrders, }) } }) diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 9fc70b4844..8d0f45743e 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -6,22 +6,26 @@ import { } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' +import { FuturesPositionTablePosition } from 'types/futures' +import { DEFAULT_DELAYED_CANCEL_BUFFER } from 'constants/defaults' import { selectSynthV3Balances } from 'state/balances/selectors' -import { selectPrices } from 'state/prices/selectors' +import { selectOffchainPricesInfo, selectPrices } from 'state/prices/selectors' import { RootState } from 'state/store' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { - unserializeMarkets, unserializePositionHistory, unserializeTradeInputs, unserializeTrades, - updatePositionUpnl, + unserializeV3AsyncOrder, + unserializeV3Market, + unserializeV3Positions, } from 'utils/futures' import { unserializeCrossMarginTradePreview } from '../../../utils/futures' +import { MarkPriceInfos } from '../types' -import { MarkPrices } from './types' +import { AsyncOrderWithDetails, MarkPrices } from './types' export const selectV3MarketKey = createSelector( (state: RootState) => state.crossMargin.selectedMarketAsset, @@ -31,8 +35,10 @@ export const selectV3MarketKey = createSelector( export const selectV3Markets = createSelector( selectNetwork, (state: RootState) => state.crossMargin, - (network, crossMargin) => - crossMargin.markets[network] ? unserializeMarkets(crossMargin.markets[network]) : [] + (network, crossMargin) => { + const markets = crossMargin.markets[network] ? crossMargin.markets[network] : [] + return markets.map(unserializeV3Market) + } ) export const selectV3MarketInfo = createSelector( @@ -45,7 +51,7 @@ export const selectV3MarketInfo = createSelector( export const selectV3MarketId = createSelector( selectV3MarketInfo, - (marketInfo) => marketInfo?.market + (marketInfo) => marketInfo?.marketId ) export const selectCrossMarginSupportedNetwork = (state: RootState) => @@ -161,32 +167,114 @@ export const selectCrossMarginMarginTransfers = createSelector( } ) -export const selectMarkPrices = createSelector(selectV3Markets, selectPrices, (markets, prices) => { - const markPrices: MarkPrices = {} - return markets.reduce((acc, market) => { - const price = prices[market.asset]?.offChain ?? wei(0) - return { - ...acc, - [market.marketKey]: wei(price).mul( - wei(market.marketSkew).div(market.settings.skewScale).add(1) - ), - } - }, markPrices) -}) +export const selectMarkPricesV3 = createSelector( + selectV3Markets, + selectPrices, + (markets, prices) => { + const markPrices: MarkPrices = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.offChain ?? wei(0) + return { + ...acc, + [market.marketKey]: wei(price).mul( + wei(market.marketSkew).div(market.settings.skewScale).add(1) + ), + } + }, markPrices) + } +) + +export const selectMarkPriceInfosV3 = createSelector( + selectV3Markets, + selectOffchainPricesInfo, + (markets, prices) => { + const markPrices: MarkPriceInfos = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.price ?? wei(0) + return { + ...acc, + [market.marketKey]: { + price: wei(price).mul(wei(market.marketSkew).div(market.settings.skewScale).add(1)), + change: prices[market.asset]?.change ?? null, + }, + } + }, markPrices) + } +) export const selectCrossMarginPositions = createSelector( - selectMarkPrices, selectCrossMarginAccountData, - selectCrossMarginPositionHistory, - (prices, account, positionHistory) => { - return account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] + selectV3Markets, + selectMarkPricesV3, + (account, markets, markPrices) => { + const positions = unserializeV3Positions(account?.positions ?? []) + return positions.reduce((acc, position) => { + const market = markets.find((market) => market.marketId === position.marketId) + + if (market) { + const markPrice = markPrices[market?.marketKey!] ?? wei(0) + + acc.push({ + ...position, + market: market, + notionalValue: position.size.mul(markPrice), + lastPrice: markPrice, + initialMargin: wei(0), + leverage: wei(0), + marginRatio: wei(0), + avgEntryPrice: wei(0), + + // TODO: Liquidation state + canLiquidatePosition: false, + liquidationPrice: wei(0), + }) + } + return acc + }, []) } ) -export const selectOpenDelayedOrdersV3 = createSelector(selectCrossMarginAccount, (_) => { - // TODO: Hook up pending v3 orders - return [] -}) +export const selectAsyncCrossMarginOrders = createSelector( + selectV3Markets, + selectCrossMarginAccountData, + (markets, account) => { + return (account?.asyncOrders.map(unserializeV3AsyncOrder) ?? []).reduce< + AsyncOrderWithDetails[] + >((acc, o) => { + const market = markets.find((m) => m.marketId === o.marketId) + + const strategy = market?.settlementStrategies.find( + (s) => s.strategyId === o.settlementStrategyId + ) + if (account && market && strategy) { + const startTime = Number(o.settlementTime) + const expirationTime = startTime + Number(strategy.settlementWindowDuration) + const timePastExecution = Math.floor((Date.now() - startTime) / 1000) + const executable = timePastExecution <= expirationTime + const isStale = + timePastExecution > + DEFAULT_DELAYED_CANCEL_BUFFER + strategy.settlementWindowDuration.toNumber() + + const order = { + market, + account: Number(account.account), + size: o.sizeDelta, + executableStartTime: startTime, + expirationTime: expirationTime, + marginDelta: wei(0), + desiredFillPrice: wei(o.acceptablePrice), + settlementWindowDuration: strategy.settlementWindowDuration.toNumber(), + side: o.side, + isStale: isStale, + isExecutable: executable, + settlementFee: strategy.settlementReward, + } + acc.push(order) + } + return acc + }, []) + } +) export const selectShowCrossMarginOnboard = (state: RootState) => state.app.showModal === 'futures_cross_margin_onboard' @@ -223,3 +311,69 @@ export const selectCrossMarginMaxLeverage = createSelector(selectV3MarketInfo, ( let adjustedMaxLeverage = market?.appMaxLeverage ?? wei(1) return adjustedMaxLeverage }) + +export const selectEditCMPositionModalMarketId = (state: RootState) => + state.app.showPositionModal?.marketKey + +export const selectCloseCMPositionModalInfo = createSelector( + selectEditCMPositionModalMarketId, + selectCrossMarginPositions, + selectV3Markets, + selectPrices, + (marketKey, crossPositions, markets, prices) => { + const position = crossPositions.find( + (p) => p.market.version === 3 && p.market.marketKey === marketKey + ) + const market = markets.find((m) => m.marketKey === marketKey) + if (!market) return { position: null, market: null, marketPrice: wei(0) } + const price = prices[market.asset] + // Note this assumes the order type is always delayed off chain + return { position, market, marketPrice: price.offChain || wei(0) } + } +) + +export const selectCloseCMPositionOrderInputs = createSelector( + (state: RootState) => state.crossMargin, + (crossMargin) => { + return crossMargin.closePositionOrderInputs + } +) + +export const selectCloseCMPositionPreview = createSelector( + selectCloseCMPositionModalInfo, + (state: RootState) => state.crossMargin, + ({ position, marketPrice }, crossMargin) => { + const preview = crossMargin.previews.close + const unserialized = preview ? unserializeCrossMarginTradePreview(preview) : null + if (unserialized) { + const priceImpact = getDefaultPriceImpact('market') + const desiredFillPrice = calculateDesiredFillPrice( + position?.side === PositionSide.LONG ? wei(-1) : wei(1), + marketPrice, + priceImpact + ) + + return { + ...unserialized, + price: marketPrice, + desiredFillPrice, + leverage: wei(0), + } + } + return null + } +) + +export const selectPendingAsyncOrdersCount = createSelector( + selectAsyncCrossMarginOrders, + (orders) => { + return orders.length + } +) + +export const selectActiveCrossMarginPositionsCount = createSelector( + selectCrossMarginPositions, + (positions) => { + return positions.filter((p) => !!p).length + } +) diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index ca6ee96d5a..c02561b49c 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -2,14 +2,15 @@ import { Period } from '@kwenta/sdk/constants' import { TransactionStatus, FuturesPositionHistory, - FuturesPotentialTradeDetails, FuturesVolumes, PositionSide, FuturesMarketKey, FuturesMarketAsset, - FuturesFilledPosition, - FuturesMarket, PotentialTradeStatus, + PerpsV3AsyncOrder, + PerpsMarketV3, + PerpsMarketV2, + PerpsV3Position, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' @@ -81,8 +82,12 @@ export type CrossMarginQueryStatuses = FuturesQueryStatuses & { } export type CrossMarginAccountData = FuturesAccountData & { + asyncOrders: PerpsV3AsyncOrder[] balances: { [asset: string]: { balance: string; allowance: string } } availableMargin: string + position?: PerpsV3Position + positions?: PerpsV3Position[] + positionHistory: FuturesPositionHistory[] } export type CrossMarginTradePreview = { @@ -101,7 +106,7 @@ export type CrossMarginTradePreview = { } export type CrossMarginState = { - markets: Record[]> + markets: Record[]> tradeInputs: TradeSizeInputs editPositionInputs: EditPositionInputs orderType: 'market' @@ -141,13 +146,6 @@ export type CrossMarginState = { > } -export type SharePositionParams = { - asset?: FuturesMarketAsset - position?: FuturesFilledPosition - positionHistory?: FuturesPositionHistory - marketPrice?: Wei -} - export type CrossPerpsPortfolio = { account: string timestamp: number @@ -156,3 +154,18 @@ export type CrossPerpsPortfolio = { } total: number } + +export type AsyncOrderWithDetails = { + account: number + size: Wei + executableStartTime: number + expirationTime: number + settlementFee: Wei + marginDelta: Wei + desiredFillPrice: Wei + side: PositionSide + isStale: boolean + isExecutable: boolean + settlementWindowDuration: number + market: PerpsMarketV3 | PerpsMarketV2 +} diff --git a/packages/app/src/state/futures/selectors.ts b/packages/app/src/state/futures/selectors.ts index 685aba3174..cabfb12d6a 100644 --- a/packages/app/src/state/futures/selectors.ts +++ b/packages/app/src/state/futures/selectors.ts @@ -1,10 +1,10 @@ -import { SL_TP_MAX_SIZE, ZERO_WEI, PERIOD_IN_SECONDS, Period } from '@kwenta/sdk/constants' +import { ZERO_WEI, PERIOD_IN_SECONDS, Period } from '@kwenta/sdk/constants' import { TransactionStatus, - ConditionalOrderTypeEnum, - FuturesPosition, + PerpsV2Position, PositionSide, FuturesMarginType, + FuturesMarket, } from '@kwenta/sdk/types' import { truncateTimestamp, MarketKeyByAsset, MarketAssetByKey } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' @@ -20,6 +20,9 @@ import { selectCrossMarginPositionHistory, selectCrossMarginPositions, selectCrossMarginTradeInputs, + selectMarkPriceInfosV3, + selectMarkPricesV3, + selectPendingAsyncOrdersCount, selectV3MarketInfo, selectV3MarketKey, selectV3Markets, @@ -35,7 +38,6 @@ import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { getKnownError } from 'utils/formatters/error' import { unserializeFuturesVolumes, - updatePositionUpnl, unserializePositionHistory, unserializeTrades, unserializeConditionalOrders, @@ -63,15 +65,13 @@ import { selectSlTpTradeInputs, selectSlTpModalInputs, selectEditPositionModalInfo, + selectMarkPricesV2, + selectMarkPriceInfosV2, + selectSmartMarginPositions, + selectAllSmartMarginTrades, } from './smartMargin/selectors' import { SmartPerpsPortfolio } from './smartMargin/types' -import { - FuturesAction, - MarkPrices, - futuresPositionKeys, - MarkPriceInfos, - PortfolioValues, -} from './types' +import { FuturesAction, futuresPositionKeys, PortfolioValues } from './types' export const selectQueryStatuses = createSelector( selectFuturesState, @@ -181,34 +181,21 @@ export const selectMarketPrices = createSelector( } ) -export const selectMarkPrices = createSelector(selectMarkets, selectPrices, (markets, prices) => { - const markPrices: MarkPrices = {} - return markets.reduce((acc, market) => { - const price = prices[market.asset]?.offChain ?? wei(0) - return { - ...acc, - [market.marketKey]: wei(price).mul( - wei(market.marketSkew).div(market.settings.skewScale).add(1) - ), - } - }, markPrices) -}) +export const selectMarkPrices = createSelector( + selectMarkPricesV2, + selectMarkPricesV3, + selectFuturesType, + (v2, v3, type) => { + return type === FuturesMarginType.CROSS_MARGIN ? v3 : v2 + } +) export const selectMarkPriceInfos = createSelector( - selectMarkets, - selectOffchainPricesInfo, - (markets, prices) => { - const markPrices: MarkPriceInfos = {} - return markets.reduce((acc, market) => { - const price = prices[market.asset]?.price ?? wei(0) - return { - ...acc, - [market.marketKey]: { - price: wei(price).mul(wei(market.marketSkew).div(market.settings.skewScale).add(1)), - change: prices[market.asset]?.change ?? null, - }, - } - }, markPrices) + selectMarkPriceInfosV2, + selectMarkPriceInfosV3, + selectFuturesType, + (v2, v3, type) => { + return type === FuturesMarginType.CROSS_MARGIN ? v3 : v2 } ) @@ -272,44 +259,6 @@ export const selectPositionHistoryForSelectedTrader = createSelector( } ) -export const selectSmartMarginPositions = createSelector( - selectSmartMarginAccountData, - selectAllConditionalOrders, - selectMarkPrices, - selectPositionHistory, - (account, orders, prices, positionHistory) => { - const positions = - account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] - return ( - positions.map( - // TODO: Maybe change to explicit serializing functions to avoid casting - (pos) => { - const stopLoss = orders.find((o) => { - return ( - o.marketKey === pos.marketKey && - o.size.abs().eq(SL_TP_MAX_SIZE) && - o.reduceOnly && - o.orderType === ConditionalOrderTypeEnum.STOP - ) - }) - const takeProfit = orders.find( - (o) => - o.marketKey === pos.marketKey && - o.size.abs().eq(SL_TP_MAX_SIZE) && - o.reduceOnly && - o.orderType === ConditionalOrderTypeEnum.LIMIT - ) - return { - ...pos, - stopLoss, - takeProfit, - } - } - ) ?? [] - ) - } -) - export const selectFuturesPositions = createSelector( selectSmartMarginPositions, selectCrossMarginPositions, @@ -319,23 +268,9 @@ export const selectFuturesPositions = createSelector( } ) -export const selectActiveCrossMarginPositionsCount = createSelector( - selectCrossMarginPositions, - (positions) => { - return positions.filter((p) => !!p.position).length - } -) - -export const selectActiveSmartPositionsCount = createSelector( - selectSmartMarginPositions, - (positions) => { - return positions.filter((p) => !!p.position).length - } -) - export const selectTotalUnrealizedPnl = createSelector(selectFuturesPositions, (positions) => { return positions.reduce((acc, p) => { - return acc.add(p.position?.pnl ?? ZERO_WEI) + return acc.add(p?.pnl ?? ZERO_WEI) }, ZERO_WEI) }) @@ -441,9 +376,9 @@ export const selectPosition = createSelector( selectFuturesPositions, selectMarketInfo, (positions, market) => { - const position = positions.find((p) => p.marketKey === market?.marketKey) + const position = positions.find((p) => p.market.marketKey === market?.marketKey) return position - ? (deserializeWeiObject(position, futuresPositionKeys) as FuturesPosition) + ? (deserializeWeiObject(position, futuresPositionKeys) as PerpsV2Position) : undefined } ) @@ -600,12 +535,12 @@ export const selectPendingDelayedOrder = createSelector( selectOpenDelayedOrders, selectMarketKey, (delayedOrders, marketKey) => { - return delayedOrders.find((o) => o.marketKey === marketKey) + return delayedOrders.find((o) => o.market.marketKey === marketKey) } ) export const selectOpenInterest = createSelector(selectMarkets, (futuresMarkets) => - futuresMarkets.reduce( + (futuresMarkets as FuturesMarket[]).reduce( (total, { openInterest }) => total.add(openInterest.shortUSD).add(openInterest.longUSD), wei(0) ) @@ -637,21 +572,6 @@ export const selectAllUsersTrades = createSelector( } ) -export const selectAllSmartMarginTrades = createSelector( - selectSmartMarginAccountData, - selectMarkets, - (smartMarginAccountData, markets) => { - const trades = unserializeTrades(smartMarginAccountData?.trades ?? []) - return trades.map((t) => { - const market = markets.find((m) => m.asset === t.asset) - return { - ...t, - market: market, - } - }) - } -) - export const selectAllTradesForAccountType = createSelector( selectAllCrossMarginTrades, selectAllSmartMarginTrades, @@ -1034,9 +954,17 @@ export const selectModalSLValidity = createSelector( ({ stopLossPrice }, { position, marketPrice }) => { return stopLossValidity( stopLossPrice, - position?.position?.liquidationPrice, - position?.position?.side || PositionSide.LONG, + position?.liquidationPrice, + position?.side || PositionSide.LONG, marketPrice ) } ) + +export const selectPendingOrdersCount = createSelector( + selectPendingAsyncOrdersCount, + selectOpenDelayedOrders, + selectFuturesType, + (asyncCount, delayedOrders, type) => + type === FuturesMarginType.CROSS_MARGIN ? asyncCount : delayedOrders.length +) diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts index 2a213a00ce..a189c7cbd2 100644 --- a/packages/app/src/state/futures/smartMargin/actions.ts +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -7,9 +7,9 @@ import { ZERO_WEI, } from '@kwenta/sdk/constants' import { - FuturesMarket, + PerpsMarketV2, ConditionalOrder, - FuturesPosition, + PerpsV2Position, FuturesPositionHistory, FuturesPotentialTradeDetails, FuturesTrade, @@ -44,10 +44,11 @@ import { setOpenModal, setShowPositionModal, setTransaction, + updateTransactionHash, } from 'state/app/reducer' import { fetchBalances } from 'state/balances/actions' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { fetchMarketsV3 } from 'state/futures/crossMargin/actions' +import { fetchV3Markets } from 'state/futures/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' import { AppDispatch, AppThunk, RootState } from 'state/store' import { ThunkConfig } from 'state/types' @@ -60,7 +61,7 @@ import { serializeDelayedOrders, serializeConditionalOrders, serializeFuturesVolumes, - serializeMarkets, + serializeV2Markets, serializePositionHistory, serializeTrades, } from 'utils/futures' @@ -74,6 +75,7 @@ import { PreviewAction, SmartMarginTradePreviewParams, } from '../common/types' +import { ExecuteDelayedOrderInputs } from '../types' import { handlePreviewError, @@ -113,7 +115,7 @@ import { selectSmartMarginEditPosInputs, selectSmartMarginPreviewCount, selectTradePreview, - selectClosePositionOrderInputs, + selectCloseSMPositionOrderInputs, selectSmartMarginPositions, selectEditPositionModalInfo, selectSlTpModalInputs, @@ -128,7 +130,7 @@ import { import { SmartMarginBalanceInfo } from './types' export const fetchMarketsV2 = createAsyncThunk< - { markets: FuturesMarket[]; networkId: NetworkId } | undefined, + { markets: PerpsMarketV2[]; networkId: NetworkId } | undefined, void, ThunkConfig >('futures/fetchMarkets', async (_, { getState, extra: { sdk } }) => { @@ -148,7 +150,7 @@ export const fetchMarketsV2 = createAsyncThunk< : m }) - const serializedMarkets = serializeMarkets(overrideMarkets) + const serializedMarkets = serializeV2Markets(overrideMarkets) return { markets: serializedMarkets, networkId } } catch (err) { logError(err) @@ -182,7 +184,7 @@ export const fetchSmartMarginBalanceInfo = createAsyncThunk< ) export const fetchSmartMarginPositions = createAsyncThunk< - { positions: FuturesPosition[]; account: string; network: NetworkId } | undefined, + { positions: PerpsV2Position[]; account: string; network: NetworkId } | undefined, void, ThunkConfig >('futures/fetchSmartMarginPositions', async (_, { getState, extra: { sdk } }) => { @@ -195,10 +197,10 @@ export const fetchSmartMarginPositions = createAsyncThunk< try { const positions = await sdk.futures.getFuturesPositions( account, - markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.market })) + markets.map((m) => ({ asset: m.asset, marketKey: m.marketKey, address: m.marketAddress })) ) const serializedPositions = positions.map( - (p) => serializeWeiObject(p) as FuturesPosition + (p) => serializeWeiObject(p) as PerpsV2Position ) return { positions: serializedPositions, account, network } } catch (err) { @@ -210,7 +212,7 @@ export const fetchSmartMarginPositions = createAsyncThunk< export const refetchSmartMarginPosition = createAsyncThunk< { - position: FuturesPosition + position: PerpsV2Position wallet: string networkId: NetworkId } | null, @@ -227,7 +229,11 @@ export const refetchSmartMarginPosition = createAsyncThunk< const result = await refetchWithComparator( () => sdk.futures.getFuturesPositions(account!, [ - { asset: marketInfo.asset, marketKey: marketInfo.marketKey, address: marketInfo.market }, + { + asset: marketInfo.asset, + marketKey: marketInfo.marketKey, + address: marketInfo.marketAddress, + }, ]), position?.remainingMargin?.toString(), (existing, next) => { @@ -237,8 +243,8 @@ export const refetchSmartMarginPosition = createAsyncThunk< if (result.data[0]) { const serialized = serializeWeiObject( - result.data[0] as FuturesPosition - ) as FuturesPosition + result.data[0] as PerpsV2Position + ) as PerpsV2Position return { position: serialized, wallet: account, futuresType: type, networkId } } return null @@ -289,7 +295,7 @@ export const fetchSharedFuturesData = createAsyncThunk( 'futures/fetchSharedFuturesData', async (_, { dispatch }) => { await dispatch(fetchMarketsV2()) - await dispatch(fetchMarketsV3()) + await dispatch(fetchV3Markets()) dispatch(fetchDailyVolumesV2()) } ) @@ -311,7 +317,7 @@ export const fetchSmartMarginOpenOrders = createAsyncThunk< const markets = selectV2Markets(getState()) const existingOrders = selectOpenDelayedOrders(getState()) - const marketAddresses = markets.map((market) => market.market) + const marketAddresses = markets.map((market) => market.marketAddress) if (!account || !supportedNetwork) return try { @@ -347,7 +353,7 @@ export const fetchSmartMarginTradePreview = createAsyncThunk< const account = selectSmartMarginAccount(getState()) const freeMargin = selectIdleMargin(getState()) const positions = selectSmartMarginPositions(getState()) - const position = positions.find((p) => p.marketKey === params.market.key) + const position = positions.find((p) => p.market.marketKey === params.market.key) const marketMargin = position?.remainingMargin ?? wei(0) @@ -363,9 +369,7 @@ export const fetchSmartMarginTradePreview = createAsyncThunk< // If this is a trade with no existsing position size then we need to subtract // remaining idle market margin to get an accurate preview const marginDelta = - (!position?.position || position?.position?.size.abs().eq(0)) && - marketMargin.gt(0) && - params.action === 'trade' + (!position || position.size.abs().eq(0)) && marketMargin.gt(0) && params.action === 'trade' ? params.marginDelta.sub(marketMargin) : params.marginDelta @@ -448,8 +452,8 @@ export const editCrossMarginTradeMarginDelta = } dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, + stageSmartMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.marketAddress }, orderPrice, marginDelta: wei(marginDelta || 0), sizeDelta: nativeSizeDelta, @@ -492,10 +496,10 @@ export const editSmartMarginTradeSize = ) dispatch(setSmartMarginLeverageInput(leverage.toString(2))) dispatch( - stageCrossMarginTradePreview({ + stageSmartMarginTradePreview({ market: { key: marketInfo.marketKey, - address: marketInfo.market, + address: marketInfo.marketAddress, }, orderPrice: price, marginDelta: wei(marginDelta), @@ -518,7 +522,7 @@ export const editCrossMarginPositionSize = try { const market = getMarketDetailsByKey(getState, marketKey) dispatch( - stageCrossMarginTradePreview({ + stageSmartMarginTradePreview({ orderPrice: marketPrice, market, marginDelta: ZERO_WEI, @@ -540,7 +544,7 @@ export const editClosePositionSizeDelta = dispatch(setSmartMarginTradePreview({ preview: null, type: 'close' })) return } - const { price } = selectClosePositionOrderInputs(getState()) + const { price } = selectCloseSMPositionOrderInputs(getState()) const { marketPrice } = selectEditPositionModalInfo(getState()) try { @@ -554,7 +558,7 @@ export const editClosePositionSizeDelta = marginDelta: ZERO_WEI, action: 'close', } - dispatch(stageCrossMarginTradePreview(previewParams)) + dispatch(stageSmartMarginTradePreview(previewParams)) } catch (err) { dispatch(handlePreviewError({ error: err.message, previewType: 'close' })) } @@ -563,11 +567,11 @@ export const editClosePositionSizeDelta = export const editClosePositionPrice = (marketKey: FuturesMarketKey, price: string): AppThunk => (dispatch, getState) => { - const { nativeSizeDelta, orderType } = selectClosePositionOrderInputs(getState()) + const { nativeSizeDelta, orderType } = selectCloseSMPositionOrderInputs(getState()) const marketPrice = selectMarketIndexPrice(getState()) const { position } = selectEditPositionModalInfo(getState()) const closeTradeSide = - position?.position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT + position?.side === PositionSide.SHORT ? PositionSide.LONG : PositionSide.SHORT const invalidLabel = orderPriceInvalidLabel( price || '0', closeTradeSide, @@ -580,7 +584,7 @@ export const editClosePositionPrice = try { const marketInfo = getMarketDetailsByKey(getState, marketKey) dispatch( - stageCrossMarginTradePreview({ + stageSmartMarginTradePreview({ market: marketInfo, orderPrice: isNaN(Number(price)) || !price ? marketPrice : wei(price), marginDelta: ZERO_WEI, @@ -607,7 +611,7 @@ export const editSmartMarginPositionMargin = const market = getMarketDetailsByKey(getState, marketKey) dispatch( - stageCrossMarginTradePreview({ + stageSmartMarginTradePreview({ market, orderPrice: marketPrice, marginDelta: wei(marginDelta || 0), @@ -632,8 +636,8 @@ export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { if (!marketInfo) throw new Error('No market selected') dispatch( - stageCrossMarginTradePreview({ - market: { key: marketInfo.marketKey, address: marketInfo.market }, + stageSmartMarginTradePreview({ + market: { key: marketInfo.marketKey, address: marketInfo.marketAddress }, orderPrice: price, marginDelta, sizeDelta: nativeSizeDelta, @@ -642,11 +646,11 @@ export const refetchTradePreview = (): AppThunk => (dispatch, getState) => { ) } -const stageCrossMarginTradePreview = createAsyncThunk< +const stageSmartMarginTradePreview = createAsyncThunk< void, SmartMarginTradePreviewParams, ThunkConfig ->('futures/stageCrossMarginTradePreview', async (inputs, { dispatch, getState }) => { +>('futures/stageSmartMarginTradePreview', async (inputs, { dispatch, getState }) => { dispatch(calculateSmartMarginFees(inputs)) dispatch(incrementCrossPreviewCount()) const debounceCount = selectSmartMarginPreviewCount(getState()) @@ -1042,11 +1046,11 @@ export const submitSmartMarginOrder = createAsyncThunk o.isStale && o.marketKey === marketInfo.marketKey + (o) => o.isStale && o.market.marketKey === marketInfo.marketKey ) const tx = await sdk.futures.submitSmartMarginOrder( - { address: marketInfo.market, key: marketInfo.marketKey }, + { address: marketInfo.marketAddress, key: marketInfo.marketKey }, wallet, account, orderInputs, @@ -1086,7 +1090,7 @@ export const submitSmartMarginAdjustMargin = createAsyncThunk { const { market, position } = selectEditPositionModalInfo(getState()) const account = selectSmartMarginAccount(getState()) - const { nativeSizeDelta, orderType, price } = selectClosePositionOrderInputs(getState()) + const { nativeSizeDelta, orderType, price } = selectCloseSMPositionOrderInputs(getState()) const keeperEthDeposit = selectSmartMarginKeeperDeposit(getState()) const feeCap = selectOrderFeeCap(getState()) const wallet = selectWallet(getState()) @@ -1175,7 +1178,7 @@ export const submitSmartMarginReducePositionOrder = createAsyncThunk( + 'futures/executeDelayedOrder', + async ({ marketKey, marketAddress }, { getState, dispatch, extra: { sdk } }) => { + const account = selectSmartMarginAccount(getState()) + if (!account) throw new Error('No wallet connected') + try { + dispatch( + setTransaction({ + status: TransactionStatus.AwaitingExecution, + type: 'execute_delayed_isolated', + hash: null, + }) + ) + const tx = await sdk.futures.executeDelayedOffchainOrder(marketKey, marketAddress, account) + dispatch(updateTransactionHash(tx.hash)) + await monitorAndAwaitTransaction(dispatch, tx) + dispatch(fetchSmartMarginOpenOrders()) + } catch (err) { + dispatch(handleTransactionError(err.message)) + throw err + } + } +) + // Utils const submitSMTransferTransaction = async ( @@ -1335,7 +1362,7 @@ export const updateStopLossAndTakeProfit = createAsyncThunk RootState, key: FuturesMarketKey) }) if (!market) throw new Error(`No market info found for ${key}`) return { - address: market.market, + address: market.marketAddress, key: market.marketKey, } } diff --git a/packages/app/src/state/futures/smartMargin/selectors.ts b/packages/app/src/state/futures/smartMargin/selectors.ts index 5491aeb9b8..a7057d53a9 100644 --- a/packages/app/src/state/futures/smartMargin/selectors.ts +++ b/packages/app/src/state/futures/smartMargin/selectors.ts @@ -2,7 +2,7 @@ import { SL_TP_MAX_SIZE, ZERO_WEI } from '@kwenta/sdk/constants' import { TransactionStatus, ConditionalOrderTypeEnum, - FuturesPosition, + PerpsV2Position, PositionSide, } from '@kwenta/sdk/types' import { @@ -15,6 +15,7 @@ import { } from '@kwenta/sdk/utils' import { createSelector } from '@reduxjs/toolkit' import Wei, { wei } from '@synthetixio/wei' +import { FuturesPositionTablePosition } from 'types/futures' import { DEFAULT_DELAYED_CANCEL_BUFFER } from 'constants/defaults' import { selectSNXUSDBalance } from 'state/balances/selectors' @@ -33,7 +34,7 @@ import { unserializeCmBalanceInfo, unserializeFuturesVolumes, unserializeTradeInputs, - unserializeMarkets, + unserializeV2Markets, unserializeDelayedOrders, updatePositionUpnl, unserializePositionHistory, @@ -41,6 +42,7 @@ import { unserializeConditionalOrders, } from 'utils/futures' +import { AsyncOrderWithDetails } from '../crossMargin/types' import { futuresPositionKeys } from '../types' import { MarkPrices, MarkPriceInfos } from './types' @@ -108,7 +110,7 @@ export const selectV2Markets = createSelector( selectNetwork, (state: RootState) => state.smartMargin, (network, smartMargin) => { - return smartMargin.markets[network] ? unserializeMarkets(smartMargin.markets[network]) : [] + return smartMargin.markets[network] ? unserializeV2Markets(smartMargin.markets[network]) : [] } ) @@ -140,7 +142,7 @@ export const selectOrderType = createSelector( export const selectSmartMarginOrderType = (state: RootState) => state.smartMargin.orderType -export const selectClosePositionOrderInputs = createSelector( +export const selectCloseSMPositionOrderInputs = createSelector( (state: RootState) => state.smartMargin, (smartMargin) => { return smartMargin.closePositionOrderInputs @@ -201,25 +203,29 @@ export const selectMarketPrices = createSelector( } ) -export const selectMarkPrices = createSelector(selectV2Markets, selectPrices, (markets, prices) => { - const markPrices: MarkPrices = {} - return markets.reduce((acc, market) => { - const price = prices[market.asset]?.offChain ?? wei(0) - return { - ...acc, - [market.marketKey]: wei(price).mul( - wei(market.marketSkew).div(market.settings.skewScale).add(1) - ), - } - }, markPrices) -}) +export const selectMarkPricesV2 = createSelector( + selectV2Markets, + selectPrices, + (markets, prices) => { + const markPrices: MarkPrices = {} + return markets.reduce((acc, market) => { + const price = prices[market.asset]?.offChain ?? wei(0) + return { + ...acc, + [market.marketKey]: wei(price).mul( + wei(market.marketSkew).div(market.settings.skewScale).add(1) + ), + } + }, markPrices) + } +) -export const selectMarkPriceInfos = createSelector( +export const selectMarkPriceInfosV2 = createSelector( selectV2Markets, selectOffchainPricesInfo, (markets, prices) => { const markPrices: MarkPriceInfos = {} - return markets.reduce((acc, market) => { + return markets.reduce((acc, market) => { const price = prices[market.asset]?.price ?? wei(0) return { ...acc, @@ -267,18 +273,21 @@ export const selectSelectedMarketPositionHistory = createSelector( export const selectSmartMarginPositions = createSelector( selectSmartMarginAccountData, selectAllConditionalOrders, - selectMarkPrices, + selectMarkPricesV2, + selectV2Markets, selectSmartMarginPositionHistory, - (account, orders, prices, positionHistory) => { - const positions = - account?.positions?.map((p) => updatePositionUpnl(p, prices, positionHistory)) ?? [] + (account, orders, prices, markets, positionHistory) => { return ( - positions.map( - // TODO: Maybe change to explicit serializing functions to avoid casting - (pos) => { + account?.positions?.reduce((acc, p) => { + const pos = updatePositionUpnl(p, prices, positionHistory) + const market = markets.find((m) => m.marketKey === pos.marketKey) + const history = positionHistory.find((ph) => { + return ph.isOpen && ph.asset === pos.asset + }) + if (market && pos.position) { const stopLoss = orders.find((o) => { return ( - o.marketKey === pos.marketKey && + o.marketKey === market.marketKey && o.size.abs().eq(SL_TP_MAX_SIZE) && o.reduceOnly && o.orderType === ConditionalOrderTypeEnum.STOP @@ -286,18 +295,23 @@ export const selectSmartMarginPositions = createSelector( }) const takeProfit = orders.find( (o) => - o.marketKey === pos.marketKey && + o.marketKey === market.marketKey && o.size.abs().eq(SL_TP_MAX_SIZE) && o.reduceOnly && o.orderType === ConditionalOrderTypeEnum.LIMIT ) - return { - ...pos, - stopLoss, - takeProfit, + + const position = { + ...pos.position, + stopLossOrder: stopLoss, + takeProfitOrder: takeProfit, + avgEntryPrice: history?.avgEntryPrice ?? ZERO_WEI, + market, } + acc.push(position) } - ) ?? [] + return acc + }, []) ?? [] ) } ) @@ -305,20 +319,20 @@ export const selectSmartMarginPositions = createSelector( export const selectActiveSmartMarginPositionsCount = createSelector( selectSmartMarginPositions, (positions) => { - return positions.filter((p) => !!p.position).length + return positions.length } ) export const selectActiveSmartPositionsCount = createSelector( selectSmartMarginPositions, (positions) => { - return positions.filter((p) => !!p.position).length + return positions.length } ) export const selectTotalUnrealizedPnl = createSelector(selectSmartMarginPositions, (positions) => { return positions.reduce((acc, p) => { - return acc.add(p.position?.pnl ?? ZERO_WEI) + return acc.add(p.pnl ?? ZERO_WEI) }, ZERO_WEI) }) @@ -422,9 +436,9 @@ export const selectPosition = createSelector( selectSmartMarginPositions, selectV2MarketInfo, (positions, market) => { - const position = positions.find((p) => p.marketKey === market?.marketKey) + const position = positions.find((p) => p.market.marketKey === market?.marketKey) return position - ? (deserializeWeiObject(position, futuresPositionKeys) as FuturesPosition) + ? (deserializeWeiObject(position, futuresPositionKeys) as PerpsV2Position) : undefined } ) @@ -476,13 +490,12 @@ export const selectRemainingMarketMargin = createSelector(selectPosition, (posit }) export const selectMarginInMarkets = (isSuspended: boolean = false) => - createSelector(selectSmartMarginPositions, selectV2Markets, (positions, markets) => { + createSelector(selectSmartMarginPositions, (positions) => { const idleInMarkets = positions .filter((p) => { - const market = markets.find((m) => m.marketKey === p.marketKey) - return market && market.isSuspended === isSuspended + return p.market && p.market.isSuspended === isSuspended }) - .filter((p) => !p.position?.size.abs().gt(0) && p.remainingMargin.gt(0)) + .filter((p) => !p?.size.abs().gt(0) && p.remainingMargin?.gt(0)) .reduce((acc, p) => acc.add(p.remainingMargin), wei(0)) return idleInMarkets }) @@ -591,12 +604,12 @@ export const selectEditPositionModalInfo = createSelector( selectV2Markets, selectPrices, (modalMarketKey, smartPositions, markets, prices) => { - const position = smartPositions.find((p) => p.marketKey === modalMarketKey) - const market = markets.find((m) => m.marketKey === modalMarketKey) - if (!market) return { position: null, market: null, marketPrice: wei(0) } - const price = prices[market.asset] + const position = smartPositions.find((p) => p.market.marketKey === modalMarketKey) + if (!position || position.market.version === 3) + return { position: null, market: null, marketPrice: wei(0) } + const price = prices[position.market.asset] // Note this assumes the order type is always delayed off chain - return { position, market, marketPrice: price.offChain || wei(0) } + return { position, market: position.market, marketPrice: price.offChain || wei(0) } } ) @@ -736,7 +749,7 @@ export const selectEditPositionPreview = createSelector( export const selectClosePositionPreview = createSelector( selectEditPositionModalInfo, - selectClosePositionOrderInputs, + selectCloseSMPositionOrderInputs, (state: RootState) => state.smartMargin, ({ position }, { price, orderType }, smartMargin) => { const preview = smartMargin.previews.close @@ -746,7 +759,7 @@ export const selectClosePositionPreview = createSelector( let orderPrice = (orderType === 'market' ? unserialized.price : wei(price?.value || 0)) ?? wei(0) const desiredFillPrice = calculateDesiredFillPrice( - position?.position?.side === PositionSide.LONG ? wei(-1) : wei(1), + position?.side === PositionSide.LONG ? wei(-1) : wei(1), orderPrice, priceImpact ) @@ -825,18 +838,37 @@ export const selectOpenDelayedOrders = createSelector( selectSmartMarginAccountData, selectV2Markets, (account, markets) => { + if (!account) return [] const orders = unserializeDelayedOrders(account?.delayedOrders ?? []) - return orders.map((o) => { - const timePastExecution = Math.floor((Date.now() - o.executableAtTimestamp) / 1000) + return orders.reduce((acc, o) => { const market = markets.find((m) => m.marketKey === o.marketKey) - return { - ...o, - isStale: - timePastExecution > - DEFAULT_DELAYED_CANCEL_BUFFER + (market?.settings.offchainDelayedOrderMaxAge ?? 0), + + if (market) { + const timePastExecution = Math.floor((Date.now() - o.executableAtTimestamp) / 1000) + const expirationTime = o.executableAtTimestamp + market.settings.offchainDelayedOrderMaxAge + const executable = timePastExecution <= market.settings.offchainDelayedOrderMaxAge + + const order = { + market, + account: Number(account.account), + size: o.size, + executableStartTime: o.executableAtTimestamp, + expirationTime: expirationTime, + marginDelta: wei(0), + desiredFillPrice: wei(o.desiredFillPrice), + side: o.side, + settlementWindowDuration: market.settings.offchainDelayedOrderMaxAge, + settlementFee: o.keeperDeposit, + isExecutable: executable, + isStale: + timePastExecution > + DEFAULT_DELAYED_CANCEL_BUFFER + (market?.settings.offchainDelayedOrderMaxAge ?? 0), + } + acc.push(order) } - }) + return acc + }, []) } ) @@ -844,7 +876,7 @@ export const selectPendingDelayedOrder = createSelector( selectOpenDelayedOrders, selectV2MarketKey, (delayedOrders, marketKey) => { - return delayedOrders.find((o) => o.marketKey === marketKey) + return delayedOrders.find((o) => o.market.marketKey === marketKey) } ) diff --git a/packages/app/src/state/futures/smartMargin/types.ts b/packages/app/src/state/futures/smartMargin/types.ts index e3215c13c9..63f5d021e6 100644 --- a/packages/app/src/state/futures/smartMargin/types.ts +++ b/packages/app/src/state/futures/smartMargin/types.ts @@ -8,15 +8,16 @@ import { FuturesMarketKey, FuturesMarketAsset, MarginTransfer, - FuturesFilledPosition, - FuturesMarket, FuturesVolumes, + PerpsMarketV2, + PerpsV2Position, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' import { PricesInfo } from 'state/prices/types' import { + DelayedOrderWithDetails, FuturesAccountData, FuturesTransactionType, HistoricalFundingRates, @@ -104,10 +105,14 @@ export type SmartMarginAccountData = FuturesAccountData & { idleTransfers: MarginTransfer[] balanceInfo: SmartMarginBalanceInfo conditionalOrders: SmartMarginOrder[] + delayedOrders: DelayedOrderWithDetails[] + position?: PerpsV2Position + positions?: PerpsV2Position[] + positionHistory?: FuturesPositionHistory[] } export type SmartMarginState = { - markets: Record[]> + markets: Record[]> selectedMarketAsset: FuturesMarketAsset dailyMarketVolumes: FuturesVolumes fundingRates: FundingRate[] @@ -147,10 +152,3 @@ export type SmartMarginState = { futuresFees: string futuresFeesForAccount: string } - -export type SharePositionParams = { - asset?: FuturesMarketAsset - position?: FuturesFilledPosition - positionHistory?: FuturesPositionHistory - marketPrice?: Wei -} diff --git a/packages/app/src/state/futures/types.ts b/packages/app/src/state/futures/types.ts index b258d0d43c..320f24e1c8 100644 --- a/packages/app/src/state/futures/types.ts +++ b/packages/app/src/state/futures/types.ts @@ -4,7 +4,6 @@ import { FuturesPositionHistory, FuturesMarketKey, FuturesMarketAsset, - FuturesFilledPosition, } from '@kwenta/sdk/types' import Wei from '@synthetixio/wei' @@ -76,22 +75,14 @@ export type FuturesState = { tradePanelDrawerOpen: boolean } -export type CancelDelayedOrderInputs = { - marketAddress: string - isOffchain: boolean -} - export type ExecuteDelayedOrderInputs = { marketKey: FuturesMarketKey marketAddress: string - isOffchain: boolean } -export type SharePositionParams = { - asset?: FuturesMarketAsset - position?: FuturesFilledPosition - positionHistory?: FuturesPositionHistory - marketPrice?: Wei +export type ExecuteAsyncOrderInputs = { + marketKey: FuturesMarketKey + marketId: number } export const futuresPositionKeys = new Set([ diff --git a/packages/app/src/state/home/actions.ts b/packages/app/src/state/home/actions.ts index aaa0171b94..3461a2dbf4 100644 --- a/packages/app/src/state/home/actions.ts +++ b/packages/app/src/state/home/actions.ts @@ -1,21 +1,21 @@ import KwentaSDK from '@kwenta/sdk' -import { FuturesMarket } from '@kwenta/sdk/types' +import { PerpsMarketV2 } from '@kwenta/sdk/types' import { createAsyncThunk } from '@reduxjs/toolkit' import { providers } from 'ethers' import { notifyError } from 'components/ErrorNotifier' import { ThunkConfig } from 'state/types' -import { serializeMarkets } from 'utils/futures' +import { serializeV2Markets } from 'utils/futures' import logError from 'utils/logError' export const fetchOptimismMarkets = createAsyncThunk< - { markets: FuturesMarket[] }, + { markets: PerpsMarketV2[] }, providers.Provider, ThunkConfig >('home/fetchOptimismMarkets', async (mainnetL2Provider, { extra: { sdk } }) => { // For the home page we always fetch OP mainnet markets const markets = await sdk.futures.getMarkets({ provider: mainnetL2Provider, networkId: 10 }) - const serializedMarkets = serializeMarkets(markets) + const serializedMarkets = serializeV2Markets(markets) return { markets: serializedMarkets } }) diff --git a/packages/app/src/state/home/reducer.ts b/packages/app/src/state/home/reducer.ts index 9aeb883545..cf12ea7922 100644 --- a/packages/app/src/state/home/reducer.ts +++ b/packages/app/src/state/home/reducer.ts @@ -1,5 +1,5 @@ import KwentaSDK from '@kwenta/sdk' -import { FuturesMarket } from '@kwenta/sdk/types' +import { PerpsMarketV2 } from '@kwenta/sdk/types' import { createSlice } from '@reduxjs/toolkit' import { FetchStatus } from 'state/types' @@ -7,7 +7,7 @@ import { FetchStatus } from 'state/types' import { fetchFuturesStats, fetchOptimismMarkets } from './actions' type HomeState = { - optimismMarkets: FuturesMarket[] + optimismMarkets: PerpsMarketV2[] marketsQueryStatus: FetchStatus futuresStatsQueryStatus: FetchStatus futuresStats: Awaited> diff --git a/packages/app/src/state/home/selectors.ts b/packages/app/src/state/home/selectors.ts index b217daaa9f..1d6ba090fa 100644 --- a/packages/app/src/state/home/selectors.ts +++ b/packages/app/src/state/home/selectors.ts @@ -1,9 +1,9 @@ import { createSelector } from '@reduxjs/toolkit' import { RootState } from 'state/store' -import { unserializeMarkets } from 'utils/futures' +import { unserializeV2Markets } from 'utils/futures' export const selectOptimismMarkets = createSelector( (state: RootState) => state.home.optimismMarkets, - (optimismMarkets) => unserializeMarkets(optimismMarkets) + (optimismMarkets) => unserializeV2Markets(optimismMarkets) ) diff --git a/packages/app/src/types/futures.ts b/packages/app/src/types/futures.ts new file mode 100644 index 0000000000..c43a42bce6 --- /dev/null +++ b/packages/app/src/types/futures.ts @@ -0,0 +1,29 @@ +import { + ConditionalOrder, + FuturesPositionHistory, + PerpsMarketV2, + PerpsMarketV3, + PositionSide, +} from '@kwenta/sdk/types' +import Wei from '@synthetixio/wei' + +export type FuturesPositionTablePosition = { + market: PerpsMarketV2 | PerpsMarketV3 + remainingMargin?: Wei + canLiquidatePosition?: boolean + side: PositionSide + notionalValue: Wei + accruedFunding: Wei + initialMargin?: Wei + size: Wei + liquidationPrice?: Wei + leverage?: Wei + pnl: Wei + pnlPct: Wei + marginRatio: Wei + avgEntryPrice: Wei + lastPrice: Wei + stopLoss?: ConditionalOrder + takeProfit?: ConditionalOrder + history?: FuturesPositionHistory +} diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index 3233207612..fed4955d9a 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -4,12 +4,17 @@ import { FuturesMarketAsset, ConditionalOrder, FuturesOrderType, - FuturesPosition, + PerpsV2Position, FuturesPositionHistory, FuturesTrade, FuturesVolumes, PositionSide, PricesMap, + PerpsV3AsyncOrder, + PerpsV3SettlementStrategy, + PerpsMarketV2, + PerpsMarketV3, + PerpsV3Position, } from '@kwenta/sdk/types' import { AssetDisplayByAsset, @@ -64,14 +69,14 @@ export const orderPriceInvalidLabel = ( } export const updatePositionUpnl = ( - positionDetails: FuturesPosition, + positionDetails: PerpsV2Position, prices: MarkPrices, positionHistory: FuturesPositionHistory[] -): FuturesPosition => { +): PerpsV2Position => { const deserializedPositionDetails = deserializeWeiObject( positionDetails, futuresPositionKeys - ) as FuturesPosition + ) as PerpsV2Position const offChainPrice = prices[MarketKeyByAsset[deserializedPositionDetails.asset]] const position = deserializedPositionDetails.position const thisPositionHistory = positionHistory.find( @@ -138,10 +143,6 @@ export const serializeMarket = (market: FuturesMarket): FuturesMarket => } } -export const serializeMarkets = (markets: FuturesMarket[]): FuturesMarket[] => { - return markets.map((m) => serializeMarket(m)) -} - export const unserializeMarket = (m: FuturesMarket): FuturesMarket => { return { ...m, @@ -179,8 +180,70 @@ export const unserializeMarket = (m: FuturesMarket): FuturesMarket => { } } -export const unserializeMarkets = (markets: FuturesMarket[]): FuturesMarket[] => { - return markets.map((m) => unserializeMarket(m)) +export const serializeV2Market = (m: PerpsMarketV2): PerpsMarketV2 => { + return { + ...serializeMarket(m), + version: 2, + marketAddress: m.marketAddress, + } +} + +export const unserializeV2Market = (m: PerpsMarketV2): PerpsMarketV2 => { + return { + ...unserializeMarket(m), + version: 2, + marketAddress: m.marketAddress, + } +} + +export const serializeV3Market = (m: PerpsMarketV3): PerpsMarketV3 => { + return { + ...serializeMarket(m), + marketId: m.marketId, + version: 3, + settlementStrategies: m.settlementStrategies.map(serializeSettlementStrategy), + } +} + +export const unserializeV3Market = (m: PerpsMarketV3): PerpsMarketV3 => { + return { + ...unserializeMarket(m), + marketId: m.marketId, + version: 3, + settlementStrategies: m.settlementStrategies.map(unserializeSettlementStrategy), + } +} + +export const serializeV2Markets = (markets: PerpsMarketV2[]): PerpsMarketV2[] => { + return markets.map((m) => serializeV2Market(m)) +} + +export const unserializeV2Markets = (markets: PerpsMarketV2[]): PerpsMarketV2[] => { + return markets.map((m) => unserializeV2Market(m)) +} + +export const serializeSettlementStrategy = ( + strat: PerpsV3SettlementStrategy +): PerpsV3SettlementStrategy => { + return { + ...strat, + settlementDelay: strat.settlementDelay.toString(), + settlementWindowDuration: strat.settlementWindowDuration.toString(), + settlementReward: strat.settlementReward.toString(), + priceDeviationTolerance: strat.priceDeviationTolerance.toString(), + } +} + +export const unserializeSettlementStrategy = ( + strat: PerpsV3SettlementStrategy +): PerpsV3SettlementStrategy => { + return { + ...strat, + settlementDelay: wei(strat.settlementDelay), + settlementWindowDuration: wei(strat.settlementWindowDuration), + settlementReward: wei(strat.settlementReward), + priceDeviationTolerance: wei(strat.priceDeviationTolerance), + } } export const serializeCmBalanceInfo = ( @@ -293,6 +356,18 @@ export const unserializeDelayedOrders = ( orders: DelayedOrderWithDetails[] ): DelayedOrderWithDetails[] => orders.map((o) => unserializeDelayedOrder(o)) +export const serializeV3AsyncOrder = (order: PerpsV3AsyncOrder): PerpsV3AsyncOrder => ({ + ...order, + sizeDelta: order.sizeDelta.toString(), + acceptablePrice: order.sizeDelta.toString(), +}) + +export const unserializeV3AsyncOrder = (order: PerpsV3AsyncOrder): PerpsV3AsyncOrder => ({ + ...order, + sizeDelta: wei(order.sizeDelta), + acceptablePrice: wei(order.sizeDelta), +}) + export const serializePrices = (prices: PricesMap) => { return Object.entries(prices).reduce>((acc, [key, price]) => { acc[key as FuturesMarketAsset] = price.toString() @@ -300,6 +375,28 @@ export const serializePrices = (prices: PricesMap) => { }, {}) } +export const serializeV3Positions = (positions: PerpsV3Position[]): PerpsV3Position[] => { + return positions.map((p) => ({ + ...p, + accruedFunding: p.accruedFunding.toString(), + profitLoss: p.profitLoss.toString(), + size: p.size.toString(), + pnl: p.pnl.toString(), + pnlPct: p.pnlPct.toString(), + })) +} + +export const unserializeV3Positions = (positions: PerpsV3Position[]): PerpsV3Position[] => { + return positions.map((p) => ({ + ...p, + accruedFunding: wei(p.accruedFunding), + profitLoss: wei(p.profitLoss), + size: wei(p.size), + pnl: wei(p.pnl), + pnlPct: wei(p.pnlPct), + })) +} + export const serializePositionHistory = ( positions: FuturesPositionHistory[] ): FuturesPositionHistory[] => { @@ -374,11 +471,11 @@ export const unserializeFundingRates = (rates: FundingRate[]): FundingRa return rates.map((r) => ({ ...r, fundingRate: r.fundingRate ? wei(r.fundingRate) : null })) } -export const formatDelayedOrders = (orders: DelayedOrder[], markets: FuturesMarket[]) => { +export const formatDelayedOrders = (orders: DelayedOrder[], markets: PerpsMarketV2[]) => { return orders .filter((o) => o.size.abs().gt(0)) .reduce((acc, o) => { - const market = markets.find((m) => m.market === o.marketAddress) + const market = markets.find((m) => m.marketAddress === o.marketAddress) if (!market) return acc acc.push({ @@ -403,7 +500,6 @@ export const perpsAccountIdFromAddress = (eoa: string): string => { return numberedId.substring(0, 16) } -// TODO: Move to app export const serializeCrossMarginTradePreview = ( preview: CrossMarginTradePreview ): CrossMarginTradePreview => ({ @@ -417,7 +513,6 @@ export const serializeCrossMarginTradePreview = ( priceImpact: preview.priceImpact.toString(), }) -// TODO: Move to app export const unserializeCrossMarginTradePreview = ( preview: CrossMarginTradePreview ): CrossMarginTradePreview => ({ diff --git a/packages/app/testing/unit/mocks/data/futures.ts b/packages/app/testing/unit/mocks/data/futures.ts index 038eaa1c77..c9e9df5554 100644 --- a/packages/app/testing/unit/mocks/data/futures.ts +++ b/packages/app/testing/unit/mocks/data/futures.ts @@ -30,7 +30,8 @@ export const mockSmartMarginAccount = (freeMargin: string = '1000') => ({ export const SDK_MARKETS = [ { - market: '0x0940B0A96C5e1ba33AEE331a9f950Bb2a6F2Fb25', + version: 2, + marketAddress: '0x0940B0A96C5e1ba33AEE331a9f950Bb2a6F2Fb25', marketKey: 'sBNBPERP' as FuturesMarketKey, marketName: 'BNB/sUSD', asset: 'BNB' as FuturesMarketAsset, @@ -76,7 +77,8 @@ export const SDK_MARKETS = [ }, { - market: '0x2B3bb4c683BFc5239B029131EEf3B1d214478d93', + version: 2, + marketAddress: '0x2B3bb4c683BFc5239B029131EEf3B1d214478d93', marketKey: 'sETHPERP', marketName: 'ETH/sUSD' as FuturesMarketKey, asset: 'sETH' as FuturesMarketAsset, @@ -121,7 +123,8 @@ export const SDK_MARKETS = [ }, }, { - market: '0x59b007E9ea8F89b069c43F8f45834d30853e3699', + version: 2, + marketAddress: '0x59b007E9ea8F89b069c43F8f45834d30853e3699', marketKey: 'sBTCPERP' as FuturesMarketKey, marketName: 'BTC/sUSD', asset: 'sBTC' as FuturesMarketAsset, diff --git a/packages/sdk/src/queries/perpsV3.ts b/packages/sdk/src/queries/perpsV3.ts index 3e175059d5..7e0fbac745 100644 --- a/packages/sdk/src/queries/perpsV3.ts +++ b/packages/sdk/src/queries/perpsV3.ts @@ -1,9 +1,9 @@ import request, { gql } from 'graphql-request' import KwentaSDK from '..' -import { PerpsV3Market } from '../types' +import { PerpsV3SubgraphMarket, SettlementSubgraphType } from '../types' -export const queryPerpsV3Markets = async (sdk: KwentaSDK): Promise => { +export const queryPerpsV3Markets = async (sdk: KwentaSDK): Promise => { const response: any = await request( sdk.perpsV3.subgraphUrl, gql` @@ -62,7 +62,9 @@ export const queryPerpsV3Accounts = async ( return response.accounts } -export const querySettlementStrategies = async (sdk: KwentaSDK): Promise => { +export const querySettlementStrategies = async ( + sdk: KwentaSDK +): Promise => { const response: any = await request( sdk.perpsV3.subgraphUrl, gql` diff --git a/packages/sdk/src/services/futures.ts b/packages/sdk/src/services/futures.ts index fb93f37cb6..94ef0fa8f0 100644 --- a/packages/sdk/src/services/futures.ts +++ b/packages/sdk/src/services/futures.ts @@ -32,7 +32,6 @@ import { FundingRateInput, FundingRateResponse, FundingRateUpdate, - FuturesMarket, FuturesMarketAsset, FuturesMarketKey, FuturesVolumes, @@ -47,6 +46,7 @@ import { ConditionalOrderTypeEnum, SLTPOrderInputs, FuturesMarginType, + PerpsMarketV2, } from '../types/futures' import { PricesMap } from '../types/prices' import { calculateTimestampForPeriod } from '../utils/date' @@ -57,7 +57,7 @@ import { encodeConditionalOrderParams, encodeModidyMarketMarginParams, encodeSubmitOffchainOrderParams, - formatDelayedOrder, + formatV2DelayedOrder, formatPotentialTrade, getFuturesEndpoint, mapConditionalOrderFromContract, @@ -75,7 +75,7 @@ import { getReasonFromCode } from '../utils/synths' export default class FuturesService { private sdk: KwentaSDK - public markets: FuturesMarket[] | undefined + public markets: PerpsMarketV2[] | undefined public internalFuturesMarkets: Partial< Record > = {} @@ -152,7 +152,7 @@ export default class FuturesService { const { suspensions, reasons } = await SystemStatus.getFuturesMarketSuspensions(marketKeys) const futuresMarkets = filteredMarkets.map( - (m, i: number): FuturesMarket => + (m, i: number): PerpsMarketV2 => formatPerpsV2Market( m, marketParameters[i], @@ -217,9 +217,9 @@ export default class FuturesService { return queryFundingRateHistory(this.sdk, marketAsset, minTimestamp) } - public async getAverageFundingRates(markets: FuturesMarket[], prices: PricesMap, period: Period) { + public async getAverageFundingRates(markets: PerpsMarketV2[], prices: PricesMap, period: Period) { const fundingRateInputs: FundingRateInput[] = markets.map( - ({ asset, market, currentFundingRate }) => { + ({ asset, marketAddress: market, currentFundingRate }) => { const price = prices[asset] return { marketAddress: market, @@ -439,7 +439,7 @@ export default class FuturesService { public async getDelayedOrder(account: string, marketAddress: string) { const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.provider) const order = await market.delayedOrders(account) - return formatDelayedOrder(account, marketAddress, order) + return formatV2DelayedOrder(account, marketAddress, order) } public async getDelayedOrders(account: string, marketAddresses: string[]) { @@ -449,7 +449,7 @@ export default class FuturesService { marketContracts.map((market) => market.delayedOrders(account)) )) as IPerpsV2MarketConsolidated.DelayedOrderStructOutput[] return orders.map((order, ind) => { - return formatDelayedOrder(account, marketAddresses[ind], order) + return formatV2DelayedOrder(account, marketAddresses[ind], order) }) } @@ -561,7 +561,7 @@ export default class FuturesService { filteredMarkets?.map((m) => ({ asset: m.asset, marketKey: m.marketKey, - address: m.market, + address: m.marketAddress, })) ?? [] const positions = await this.getFuturesPositions(accountOrEoa, marketParams) const positionsWithIdleMargin = positions.filter( @@ -578,7 +578,7 @@ export default class FuturesService { if (market) { acc.push({ - marketAddress: market.market, + marketAddress: market.marketAddress, marketKey: market.marketKey, position: p, }) diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 363d9a870b..116f9066ef 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -1,3 +1,4 @@ +import { defaultAbiCoder } from '@ethersproject/abi' import { BigNumber, BigNumberish } from '@ethersproject/bignumber' import { formatBytes32String } from '@ethersproject/strings' import Wei, { wei } from '@synthetixio/wei' @@ -8,12 +9,9 @@ import KwentaSDK from '..' import { UNSUPPORTED_NETWORK } from '../common/errors' import { KWENTA_TRACKING_CODE } from '../constants/futures' import { Period, PERIOD_IN_SECONDS } from '../constants/period' -import { getPerpsV2MarketMulticall } from '../contracts' import PerpsMarketABI from '../contracts/abis/PerpsV2Market.json' -import PerpsV2MarketInternal from '../contracts/PerpsV2MarketInternalV2' import { PerpsV2Market__factory } from '../contracts/types' -import { IPerpsV2MarketConsolidated } from '../contracts/types/PerpsV2Market' -import { SettlementStrategy } from '../contracts/types/PerpsV3MarketProxy' +import { AsyncOrder } from '../contracts/types/PerpsV3MarketProxy' import { queryFuturesTrades, queryIsolatedMarginTransfers, @@ -21,7 +19,6 @@ import { queryTrades, queryFundingRateHistory, } from '../queries/futures' -import { NetworkId } from '../types/common' import { FuturesMarket, FuturesMarketAsset, @@ -30,11 +27,13 @@ import { MarketClosureReason, MarginTransfer, FuturesMarginType, + PerpsV3SettlementStrategy, + PerpsMarketV3, + PerpsV3Position, } from '../types/futures' import { PricesMap } from '../types/prices' import { appAdjustedLeverage, - formatDelayedOrder, mapFuturesPositions, mapTrades, getPerpsV3SubgraphUrl, @@ -43,6 +42,8 @@ import { MarketAssetByKey, mapPerpsV3Position, sameSide, + formatV3AsyncOrder, + formatSettlementStrategy, } from '../utils/futures' import { getReasonFromCode } from '../utils/synths' import { @@ -58,9 +59,13 @@ import { V3_PERPS_ID_TO_MARKET_KEY, V3_SYNTH_MARKET_IDS, V3MarketId } from '../c export default class PerpsV3Service { private sdk: KwentaSDK public markets: FuturesMarket[] | undefined - public internalFuturesMarkets: Partial< - Record - > = {} + private settlementStrategies: { + lastUpdated: number + strategies: PerpsV3SettlementStrategy[] + } = { + lastUpdated: 0, + strategies: [], + } constructor(sdk: KwentaSDK) { this.sdk = sdk @@ -72,31 +77,30 @@ export default class PerpsV3Service { public async getMarkets() { const perpsV3Markets = await queryPerpsV3Markets(this.sdk) - const _settlementStrategies = await this.getSettlementStrategies() - // TODO: Combine settlement strategies with market data + const strategies = await this.getSettlementStrategies() - const futuresMarkets = perpsV3Markets.reduce( + const futuresMarkets = perpsV3Markets.reduce( ( acc, { perpsMarketId, marketSymbol, marketName, - marketOwner, maxFundingVelocity, makerFee, takerFee, skewScale, - }, - i: number + } ) => { const marketKey = PerpsV3SymbolToMarketKey[marketSymbol] if (!marketKey) return acc acc.push({ - market: perpsMarketId, + version: 3, + marketId: Number(perpsMarketId), marketKey: marketKey, marketName: marketName, + settlementStrategies: strategies.filter((s) => s.marketId === Number(perpsMarketId)), asset: MarketAssetByKey[marketKey], assetHex: '', // TODO: Probably remove hex currentFundingRate: wei(0.0001), // TODO: Funding rate @@ -169,12 +173,14 @@ export default class PerpsV3Service { // map the positions using the results const positions = await Promise.all( - positionDetails.map(async (res, i) => { - return mapPerpsV3Position(marketIds[i], ...res) - }) + positionDetails.reduce((acc, res, i) => { + const pos = mapPerpsV3Position(marketIds[i], ...res) + if (pos) acc.push(pos) + return acc + }, []) ) - return positions.filter((position) => !!position) + return positions } public async getMarketFundingRatesHistory( @@ -186,7 +192,16 @@ export default class PerpsV3Service { } public async getSettlementStrategies() { - return querySettlementStrategies(this.sdk) + if (this.settlementStrategies.lastUpdated > Date.now() - PERIOD_IN_SECONDS.ONE_HOUR * 1000) { + return this.settlementStrategies.strategies + } + const strategies = await querySettlementStrategies(this.sdk) + const formattedStrats = strategies.map(formatSettlementStrategy) + this.settlementStrategies = { + lastUpdated: Date.now(), + strategies: formattedStrats, + } + return formattedStrats } public async getAverageFundingRates( @@ -354,42 +369,37 @@ export default class PerpsV3Service { return wei(availableMargin) } - // Perps V2 read functions - public async getDelayedOrder(account: string, marketAddress: string) { - const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.provider) - const order = await market.delayedOrders(account) - return formatDelayedOrder(account, marketAddress, order) + public async getPendingAsyncOrder(account: string, marketAddress: string) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + const order = await marketProxy.getOrder(account, marketAddress) + return formatV3AsyncOrder(order) } - public async getDelayedOrders(account: string, marketIds: BigNumberish[]) { + public async getPendingAsyncOrders(account: string, marketIds: BigNumberish[]) { const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy if (!proxy) throw new Error(UNSUPPORTED_NETWORK) const orders = (await this.sdk.context.multicallProvider.all( marketIds.map((market) => proxy.getOrder(market, account)) - )) as IPerpsV2MarketConsolidated.DelayedOrderStructOutput[] - return [] - // return orders.map((order, ind) => { - // return formatDelayedOrder(account, marketAddresses[ind], order) - // }) + )) as AsyncOrder.DataStructOutput[] + return orders.filter((o) => o.sizeDelta.abs().gt(0)).map(formatV3AsyncOrder) } - public async getTradePreview(marketId: V3MarketId, size: Wei) { + public async getTradePreview( + marketId: V3MarketId, + size: Wei, + settlementStrategy: PerpsV3SettlementStrategy + ) { const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy const price = this.sdk.prices.getOffchainPrice(V3_PERPS_ID_TO_MARKET_KEY[marketId]) if (!proxy) throw new Error(UNSUPPORTED_NETWORK) if (!price) throw new Error('No price for market') - const [fees, skew, fill, settlementStrategy] = (await this.sdk.context.multicallProvider.all([ + const [fees, skew, fill] = (await this.sdk.context.multicallProvider.all([ proxy.getOrderFees(marketId), proxy.skew(marketId), proxy.fillPrice(marketId, size.toBN(), price.toBN()), - proxy.getSettlementStrategy(marketId, 0), - ])) as [ - { makerFee: BigNumber; takerFee: BigNumber }, - BigNumber, - BigNumber, - SettlementStrategy.DataStructOutput - ] + ])) as [{ makerFee: BigNumber; takerFee: BigNumber }, BigNumber, BigNumber] const notional = size.mul(price) const feeSide = sameSide(notional, wei(skew)) ? wei(fees.takerFee) : wei(fees.makerFee) @@ -500,10 +510,11 @@ export default class PerpsV3Service { } public async submitOrder( - marketId: string, + marketId: number, accountId: string, sizeDelta: Wei, - acceptablePrice: Wei + acceptablePrice: Wei, + settlementStrategyId: number ) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) @@ -512,7 +523,7 @@ export default class PerpsV3Service { marketId: marketId, accountId, sizeDelta: sizeDelta.toBN(), - settlementStrategyId: 0, + settlementStrategyId, acceptablePrice: acceptablePrice.toBN(), trackingCode: KWENTA_TRACKING_CODE, } @@ -520,32 +531,29 @@ export default class PerpsV3Service { return this.sdk.transactions.createContractTxn(marketProxy, 'commitOrder', [commitment]) } - public async cancelDelayedOrder(marketAddress: string, account: string, isOffchain: boolean) { - const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) - return isOffchain - ? market.cancelOffchainDelayedOrder(account) - : market.cancelDelayedOrder(account) - } - - public async executeDelayedOrder(marketAddress: string, account: string) { - const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) - return market.executeDelayedOrder(account) + public async cancelAsyncOrder(marketId: number, account: string) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + return this.sdk.transactions.createContractTxn(marketProxy, 'cancelOrder', [marketId, account]) } - public async executeDelayedOffchainOrder( - marketKey: FuturesMarketKey, - marketAddress: string, - account: string - ) { + public async executeAsyncOrder(marketKey: FuturesMarketKey, marketId: number, accountId: number) { const { Pyth } = this.sdk.context.contracts - const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) - if (!Pyth) throw new Error(UNSUPPORTED_NETWORK) + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!Pyth || !marketProxy) throw new Error(UNSUPPORTED_NETWORK) + + const extraData = defaultAbiCoder.encode(['uint128', 'uint128'], [marketId, accountId]) // get price update data const priceUpdateData = await this.sdk.prices.getPythPriceUpdateData(marketKey) const updateFee = await Pyth.getUpdateFee(priceUpdateData) - return market.executeOffchainDelayedOrder(account, priceUpdateData, { value: updateFee }) + return this.sdk.transactions.createContractTxn( + marketProxy, + 'settlePythOrder', + [priceUpdateData[0], extraData], + { value: updateFee } + ) } public async createPerpsV3Account(requestedId: BigNumberish) { diff --git a/packages/sdk/src/types/futures.ts b/packages/sdk/src/types/futures.ts index 2d1bca9069..b514bb51dc 100644 --- a/packages/sdk/src/types/futures.ts +++ b/packages/sdk/src/types/futures.ts @@ -17,7 +17,6 @@ export type SynthSuspensionReason = export type MarketClosureReason = SynthSuspensionReason export type FuturesMarket = { - market: string marketKey: FuturesMarketKey marketName: string asset: FuturesMarketAsset @@ -62,6 +61,17 @@ export type FuturesMarket = { } } +export type PerpsMarketV2 = FuturesMarket & { + version: 2 + marketAddress: string +} + +export type PerpsMarketV3 = FuturesMarket & { + version: 3 + marketId: number + settlementStrategies: PerpsV3SettlementStrategy[] +} + export type FundingRateUpdate = { funding: Wei timestamp: number @@ -276,7 +286,7 @@ export type FuturesPositionHistory = { trades: number } -export type FuturesPosition = { +export type PerpsV2Position = { asset: FuturesMarketAsset marketKey: FuturesMarketKey remainingMargin: T @@ -288,6 +298,7 @@ export type FuturesPosition = { } export type PerpsV3Position = { + marketId: number side: PositionSide accruedFunding: T profitLoss: T @@ -357,6 +368,16 @@ export type DelayedOrder = { side: PositionSide } +export type PerpsV3AsyncOrder = { + accountId: number + marketId: number + sizeDelta: T + settlementTime: number + settlementStrategyId: number + acceptablePrice: T + side: PositionSide +} + export type FuturesPotentialTradeDetails = { marketKey: FuturesMarketKey size: T @@ -375,6 +396,30 @@ export type FuturesPotentialTradeDetails = { exceedsPriceProtection: boolean } +export type SettlementSubgraphType = { + id: string + marketId: string + strategyId: string + strategyType: string + settlementDelay: string + priceDeviationTolerance: string + settlementWindowDuration: string + url: string + settlementReward: string +} + +export type PerpsV3SettlementStrategy = { + id: string + marketId: number + strategyId: number + strategyType: string + settlementDelay: T + settlementWindowDuration: T + url: string + settlementReward: T + priceDeviationTolerance: T +} + // https://github.com/Synthetixio/synthetix/blob/4d2add4f74c68ac4f1106f6e7be4c31d4f1ccc76/contracts/interfaces/IFuturesMarketBaseTypes.sol#L6-L19 export enum PotentialTradeStatus { // Contract status mapping @@ -458,7 +503,7 @@ export type MarginTransfer = { export type MarketWithIdleMargin = { marketAddress: string marketKey: FuturesMarketKey - position: FuturesPosition + position: PerpsV2Position } export type SmartMarginOrderInputs = { @@ -501,7 +546,7 @@ export type SLTPOrderInputs = { } } -export type PerpsV3Market = { +export type PerpsV3SubgraphMarket = { id: string perpsMarketId: string marketOwner: string diff --git a/packages/sdk/src/utils/futures.ts b/packages/sdk/src/utils/futures.ts index 542cd40f30..07b2a66622 100644 --- a/packages/sdk/src/utils/futures.ts +++ b/packages/sdk/src/utils/futures.ts @@ -31,7 +31,7 @@ import { ConditionalOrder, FuturesOrderType, FuturesOrderTypeDisplay, - FuturesPosition, + PerpsV2Position, FuturesPositionHistory, FuturesPotentialTradeDetails, FuturesTrade, @@ -45,6 +45,10 @@ import { FuturesMarginType, MarketClosureReason, PerpsV3Position, + PerpsV3AsyncOrder, + PerpsV3SettlementStrategy, + SettlementSubgraphType, + PerpsMarketV2, } from '../types/futures' import { formatCurrency, formatDollars } from '../utils/number' import { @@ -58,6 +62,7 @@ import { } from '../utils/subgraph' import { PerpsV2MarketData } from '../contracts/types' import { IPerpsV2MarketSettings } from '../contracts/types/PerpsV2MarketData' +import { AsyncOrder } from '../contracts/types/PerpsV3MarketProxy' export const getFuturesEndpoint = (networkId: number) => { return FUTURES_ENDPOINTS[networkId] || FUTURES_ENDPOINTS[10] @@ -164,7 +169,7 @@ export const mapFuturesPosition = ( canLiquidatePosition: boolean, asset: FuturesMarketAsset, marketKey: FuturesMarketKey -): FuturesPosition => { +): PerpsV2Position => { const { remainingMargin, accessibleMargin, @@ -222,6 +227,7 @@ export const mapPerpsV3Position = ( return wei(size).eq(ZERO_WEI) ? null : { + marketId, side: wei(size).gt(ZERO_WEI) ? PositionSide.LONG : PositionSide.SHORT, accruedFunding: wei(funding), profitLoss: wei(pnlWei), @@ -335,7 +341,7 @@ export const unserializePotentialTrade = ( priceImpact: wei(preview.priceImpact), }) -export const formatDelayedOrder = ( +export const formatV2DelayedOrder = ( account: string, marketAddress: string, order: IPerpsV2MarketConsolidated.DelayedOrderStructOutput @@ -367,6 +373,35 @@ export const formatDelayedOrder = ( } } +export const formatV3AsyncOrder = (order: AsyncOrder.DataStructOutput): PerpsV3AsyncOrder => { + const { accountId, marketId, sizeDelta, settlementStrategyId, settlementTime, acceptablePrice } = + order + + return { + accountId: accountId.toNumber(), + marketId: marketId.toNumber(), + sizeDelta: wei(sizeDelta), + settlementTime: settlementTime.toNumber(), + settlementStrategyId: settlementStrategyId.toNumber(), + acceptablePrice: wei(acceptablePrice), + side: wei(sizeDelta).gt(0) ? PositionSide.LONG : PositionSide.SHORT, + } +} + +export const formatSettlementStrategy = ( + strategy: SettlementSubgraphType +): PerpsV3SettlementStrategy => { + return { + ...strategy, + marketId: Number(strategy.marketId), + strategyId: Number(strategy.strategyId), + settlementDelay: wei(strategy.settlementDelay), + settlementWindowDuration: wei(strategy.settlementWindowDuration), + settlementReward: wei(strategy.settlementReward), + priceDeviationTolerance: wei(strategy.priceDeviationTolerance), + } +} + export const formatPotentialTrade = ( preview: PostTradeDetailsResponse, skewAdjustedPrice: Wei, @@ -873,8 +908,9 @@ export const formatPerpsV2Market = ( }, isSuspended: boolean, suspendedReason: MarketClosureReason -) => ({ - market, +): PerpsMarketV2 => ({ + version: 2, + marketAddress: market, marketKey: parseBytes32String(key) as FuturesMarketKey, marketName: getMarketName(parseBytes32String(asset) as FuturesMarketAsset), asset: parseBytes32String(asset) as FuturesMarketAsset, From 42233a8eaf9ca4b46d83c62d81ccfc98aa063590 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Thu, 27 Jul 2023 15:12:24 +0100 Subject: [PATCH 17/43] v3 updates --- .../futures/MobileTrade/MobileTrade.tsx | 2 +- ...alance.tsx => TradeBalanceSmartMargin.tsx} | 4 +- .../src/sections/futures/Trade/TradePanel.tsx | 2 +- packages/app/src/state/futures/actions.ts | 7 ++- .../app/src/state/futures/common/types.ts | 1 - .../src/state/futures/crossMargin/actions.ts | 32 +++++----- .../src/state/futures/crossMargin/reducer.ts | 4 +- .../state/futures/crossMargin/selectors.ts | 8 +-- .../src/state/futures/crossMargin/types.ts | 1 + .../src/state/futures/smartMargin/types.ts | 1 + packages/app/src/utils/futures.ts | 4 +- packages/sdk/src/services/perpsV3.ts | 59 +++++++++---------- 12 files changed, 65 insertions(+), 60 deletions(-) rename packages/app/src/sections/futures/Trade/{TradeBalance.tsx => TradeBalanceSmartMargin.tsx} (98%) diff --git a/packages/app/src/sections/futures/MobileTrade/MobileTrade.tsx b/packages/app/src/sections/futures/MobileTrade/MobileTrade.tsx index aa7eaade2d..3888843a93 100644 --- a/packages/app/src/sections/futures/MobileTrade/MobileTrade.tsx +++ b/packages/app/src/sections/futures/MobileTrade/MobileTrade.tsx @@ -12,7 +12,7 @@ import MarketDetails from '../MarketDetails/MarketDetails' import FuturesUnsupportedNetwork from '../Trade/FuturesUnsupported' import MarketsDropdown from '../Trade/MarketsDropdown' import { MARKET_SELECTOR_HEIGHT_MOBILE } from '../Trade/MarketsDropdownSelector' -import TradeBalance from '../Trade/TradeBalance' +import TradeBalance from '../Trade/TradeBalanceSmartMargin' import TradePanelDrawer from './drawers/TradePanelDrawer' import OverviewTabs from './OverviewTabs' diff --git a/packages/app/src/sections/futures/Trade/TradeBalance.tsx b/packages/app/src/sections/futures/Trade/TradeBalanceSmartMargin.tsx similarity index 98% rename from packages/app/src/sections/futures/Trade/TradeBalance.tsx rename to packages/app/src/sections/futures/Trade/TradeBalanceSmartMargin.tsx index 375b7b1b47..1dbb8ed2b5 100644 --- a/packages/app/src/sections/futures/Trade/TradeBalance.tsx +++ b/packages/app/src/sections/futures/Trade/TradeBalanceSmartMargin.tsx @@ -156,9 +156,7 @@ const TradeBalance: React.FC = memo(({ isMobile = false }) => )} - {(accountType === FuturesMarginType.CROSS_MARGIN || - withdrawable.gt(0) || - !isDepositRequired) && ( + {(withdrawable.gt(0) || !isDepositRequired) && ( ( 'futures/fetchMarkets', @@ -133,7 +136,7 @@ export const fetchPositionHistoryForTrader = createAsyncThunk< export const cancelDelayedOrder = createAsyncThunk( 'futures/cancelDelayedOrder', async (marketAddress, { getState, dispatch, extra: { sdk } }) => { - const account = selectFuturesAccount(getState()) + const account = selectSmartMarginAccount(getState()) if (!account) throw new Error('No wallet connected') try { dispatch( diff --git a/packages/app/src/state/futures/common/types.ts b/packages/app/src/state/futures/common/types.ts index 8fde5a00ed..b5050a6150 100644 --- a/packages/app/src/state/futures/common/types.ts +++ b/packages/app/src/state/futures/common/types.ts @@ -16,7 +16,6 @@ type excludedOptions = typeof FuturesMarginType.ISOLATED_MARGIN_LEGACY export type AppFuturesMarginType = Exclude export type FuturesAccountData = { - account: string trades?: FuturesTrade[] marginTransfers?: MarginTransfer[] } diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 46d9492de0..1f7f450482 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -44,7 +44,6 @@ import { CrossMarginTradePreviewParams, DebouncedCMPreviewParams, } from '../common/types' -import { selectV2MarketInfo } from '../smartMargin/selectors' import { ExecuteAsyncOrderInputs } from '../types' import { @@ -90,7 +89,7 @@ export const fetchV3Markets = createAsyncThunk< }) export const fetchPerpsV3Account = createAsyncThunk< - { account: string; wallet: string; network: NetworkId } | undefined, + { account: number; wallet: string; network: NetworkId } | undefined, void, ThunkConfig >('futures/fetchPerpsV3Account', async (_, { getState, extra: { sdk }, rejectWithValue }) => { @@ -117,7 +116,7 @@ export const fetchPerpsV3Account = createAsyncThunk< notifyError(errMessage) rejectWithValue(errMessage) } - return { account: id, wallet, network } + return { account: Number(id), wallet, network } } return undefined } catch (err) { @@ -138,7 +137,7 @@ export const fetchPerpsV3Balances = createAsyncThunk( ) export const fetchCrossMarginPositions = createAsyncThunk< - { positions: PerpsV3Position[]; account: string; network: NetworkId } | undefined, + { positions: PerpsV3Position[]; account: number; network: NetworkId } | undefined, void, ThunkConfig >('futures/fetchCrossMarginPositions', async (_, { extra: { sdk }, getState }) => { @@ -164,25 +163,26 @@ export const fetchCrossMarginPositions = createAsyncThunk< export const fetchPositionHistoryV3 = createAsyncThunk< | { history: FuturesPositionHistory[] - account: string + account: number wallet: string networkId: NetworkId } | undefined, void, ThunkConfig ->('futures/fetchPositionHistoryV3', async (_, { getState, extra: { sdk } }) => { +>('futures/fetchPositionHistoryV3', async (_, { getState, extra: { sdk: _sdk } }) => { try { const { wallet, network, accountId } = selectAccountContext(getState()) const futuresSupported = selectCrossMarginSupportedNetwork(getState()) if (!wallet || !accountId || !futuresSupported) return - const history = await sdk.futures.getPositionHistory(accountId) + // TODO: V3 position history + // const history = await sdk.futures.getPositionHistory(accountId) return { account: accountId, wallet, networkId: network, - history: serializePositionHistory(history), + history: serializePositionHistory([]), } } catch (err) { notifyError('Failed to fetch perps v3 position history', err) @@ -417,7 +417,7 @@ export const createPerpsV3Account = createAsyncThunk< rejectWithValue('Account id already registered') return } else if (owner) { - dispatch(setPerpsV3Account({ account: id.toString(), wallet: wallet, network })) + dispatch(setPerpsV3Account({ account: id, wallet: wallet, network })) return } @@ -466,7 +466,7 @@ export const depositCrossMarginMargin = createAsyncThunk async (amount, { getState, dispatch, extra: { sdk } }) => { const marketInfo = selectMarketInfo(getState()) const accountId = selectCrossMarginAccount(getState()) - if (!marketInfo) throw new Error('Market info not found') + if (!marketInfo || marketInfo?.version !== 3) throw new Error('Market info not found') if (!accountId) throw new Error('Account id not found') try { dispatch( @@ -476,7 +476,7 @@ export const depositCrossMarginMargin = createAsyncThunk hash: null, }) ) - const tx = await sdk.perpsV3.depositToMarket(accountId, SynthV3Asset.SNXUSD, amount) + const tx = await sdk.perpsV3.depositToAccount(accountId, marketInfo.marketId, amount) await monitorAndAwaitTransaction(dispatch, tx) dispatch(setOpenModal(null)) dispatch(refetchPosition()) @@ -492,8 +492,8 @@ export const depositCrossMarginMargin = createAsyncThunk export const withdrawCrossMargin = createAsyncThunk( 'futures/withdrawCrossMargin', async (amount, { getState, dispatch, extra: { sdk } }) => { - const marketInfo = selectV2MarketInfo(getState()) - if (!marketInfo) throw new Error('Market info not found') + const marketInfo = selectV3MarketInfo(getState()) + if (!marketInfo || marketInfo?.version !== 3) throw new Error('Market info not found') try { dispatch( setTransaction({ @@ -502,7 +502,11 @@ export const withdrawCrossMargin = createAsyncThunk( hash: null, }) ) - const tx = await sdk.futures.withdrawIsolatedMargin(marketInfo.marketAddress, amount) + const tx = await sdk.perpsV3.withdrawFromAccount( + marketInfo.marketId, + marketInfo.marketId, + amount + ) await monitorAndAwaitTransaction(dispatch, tx) dispatch(refetchPosition()) dispatch(setOpenModal(null)) diff --git a/packages/app/src/state/futures/crossMargin/reducer.ts b/packages/app/src/state/futures/crossMargin/reducer.ts index 68df4b02df..724cfa6a99 100644 --- a/packages/app/src/state/futures/crossMargin/reducer.ts +++ b/packages/app/src/state/futures/crossMargin/reducer.ts @@ -146,7 +146,7 @@ const crossMarginSlice = createSlice({ setPerpsV3Account: ( state, - action: PayloadAction<{ wallet: string; account: string; network: NetworkId }> + action: PayloadAction<{ wallet: string; account: number; network: NetworkId }> ) => { const { account, wallet, network } = action.payload if (!state.accounts[network]?.[wallet]?.account) { @@ -380,7 +380,7 @@ export const { const findWalletForAccount = ( perpsV3State: CrossMarginState, - account: string, + account: number, network: NetworkId ) => { const entry = Object.entries(perpsV3State.accounts[network]).find(([_, value]) => { diff --git a/packages/app/src/state/futures/crossMargin/selectors.ts b/packages/app/src/state/futures/crossMargin/selectors.ts index 8d0f45743e..b0d1af02ac 100644 --- a/packages/app/src/state/futures/crossMargin/selectors.ts +++ b/packages/app/src/state/futures/crossMargin/selectors.ts @@ -280,10 +280,10 @@ export const selectShowCrossMarginOnboard = (state: RootState) => state.app.showModal === 'futures_cross_margin_onboard' export const selectWithdrawableCrossMargin = createSelector( - (state: RootState) => state.crossMargin, - (_) => { - // TODO: Hook up withdrawable cross margin - return wei(0) + selectCrossMarginAvailableMargin, + (available) => { + // TODO: Calculate withdrawable based on maintenance margin + return available } ) diff --git a/packages/app/src/state/futures/crossMargin/types.ts b/packages/app/src/state/futures/crossMargin/types.ts index c02561b49c..6b07b4fc7c 100644 --- a/packages/app/src/state/futures/crossMargin/types.ts +++ b/packages/app/src/state/futures/crossMargin/types.ts @@ -82,6 +82,7 @@ export type CrossMarginQueryStatuses = FuturesQueryStatuses & { } export type CrossMarginAccountData = FuturesAccountData & { + account: number asyncOrders: PerpsV3AsyncOrder[] balances: { [asset: string]: { balance: string; allowance: string } } availableMargin: string diff --git a/packages/app/src/state/futures/smartMargin/types.ts b/packages/app/src/state/futures/smartMargin/types.ts index 63f5d021e6..fbd4d0da75 100644 --- a/packages/app/src/state/futures/smartMargin/types.ts +++ b/packages/app/src/state/futures/smartMargin/types.ts @@ -102,6 +102,7 @@ export type FundingRatePeriods = { } export type SmartMarginAccountData = FuturesAccountData & { + account: string idleTransfers: MarginTransfer[] balanceInfo: SmartMarginBalanceInfo conditionalOrders: SmartMarginOrder[] diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index 5b7eec189e..5349c1c066 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -497,9 +497,9 @@ export const formatDelayedOrders = (orders: DelayedOrder[], markets: PerpsMarket }, [] as DelayedOrderWithDetails[]) } -export const perpsAccountIdFromAddress = (eoa: string): string => { +export const perpsAccountIdFromAddress = (eoa: string): number => { const numberedId = eoa.replace(/\D/g, '') - return numberedId.substring(0, 16) + return Number(numberedId.substring(0, 16)) } export const serializeCrossMarginTradePreview = ( diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 116f9066ef..5ff236d9d9 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -150,19 +150,14 @@ export default class PerpsV3Service { return futuresMarkets } - // TODO: types - // TODO: Improve the API for fetching positions - public async getPositions( - address: string, // Cross margin or EOA address - marketIds: number[] - ) { + public async getPositions(accountId: number, marketIds: number[]) { const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy if (!this.sdk.context.isL2 || !proxy) { throw new Error(UNSUPPORTED_NETWORK) } - const positionCalls = marketIds.map((id) => proxy.getOpenPosition(address, id)) + const positionCalls = marketIds.map((id) => proxy.getOpenPosition(accountId, id)) // TODO: Combine these two? const positionDetails = (await this.sdk.context.multicallProvider.all(positionCalls)) as [ @@ -362,26 +357,26 @@ export default class PerpsV3Service { return queryIsolatedMarginTransfers(this.sdk, address) } - public async getAvailableMargin(accountId: string) { + public async getAvailableMargin(accountId: number) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) const availableMargin = await marketProxy.getAvailableMargin(accountId) return wei(availableMargin) } - public async getPendingAsyncOrder(account: string, marketAddress: string) { + public async getPendingAsyncOrder(accountId: number, marketAddress: string) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) - const order = await marketProxy.getOrder(account, marketAddress) + const order = await marketProxy.getOrder(accountId, marketAddress) return formatV3AsyncOrder(order) } - public async getPendingAsyncOrders(account: string, marketIds: BigNumberish[]) { + public async getPendingAsyncOrders(accountId: number, marketIds: BigNumberish[]) { const proxy = this.sdk.context.multicallContracts.perpsV3MarketProxy if (!proxy) throw new Error(UNSUPPORTED_NETWORK) const orders = (await this.sdk.context.multicallProvider.all( - marketIds.map((market) => proxy.getOrder(market, account)) + marketIds.map((market) => proxy.getOrder(market, accountId)) )) as AsyncOrder.DataStructOutput[] return orders.filter((o) => o.sizeDelta.abs().gt(0)).map(formatV3AsyncOrder) } @@ -485,23 +480,12 @@ export default class PerpsV3Service { ]) } - public async depositToMarket(accountId: string, asset: SynthV3Asset, amount: Wei) { - const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy - if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) - return this.sdk.transactions.createContractTxn(marketProxy, 'modifyCollateral', [ - accountId, - V3_SYNTH_MARKET_IDS[asset], - amount.toBN(), - ]) + public async depositToAccount(accountId: number, marketId: number, amount: Wei) { + return this.modifyCollateral(accountId, marketId, amount) } - public async withdrawFromAccount(marketAddress: string, amount: Wei) { - // TODO: Accept account - const market = PerpsV2Market__factory.connect(marketAddress, this.sdk.context.signer) - const txn = this.sdk.transactions.createContractTxn(market, 'transferMargin', [ - amount.neg().toBN(), - ]) - return txn + public async withdrawFromAccount(accountId: number, marketId: number, amount: Wei) { + return this.modifyCollateral(accountId, marketId, amount.neg()) } public async closePosition(marketAddress: string, priceImpactDelta: Wei) { @@ -511,7 +495,7 @@ export default class PerpsV3Service { public async submitOrder( marketId: number, - accountId: string, + accountId: number, sizeDelta: Wei, acceptablePrice: Wei, settlementStrategyId: number @@ -531,10 +515,13 @@ export default class PerpsV3Service { return this.sdk.transactions.createContractTxn(marketProxy, 'commitOrder', [commitment]) } - public async cancelAsyncOrder(marketId: number, account: string) { + public async cancelAsyncOrder(marketId: number, accountId: number) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) - return this.sdk.transactions.createContractTxn(marketProxy, 'cancelOrder', [marketId, account]) + return this.sdk.transactions.createContractTxn(marketProxy, 'cancelOrder', [ + marketId, + accountId, + ]) } public async executeAsyncOrder(marketKey: FuturesMarketKey, marketId: number, accountId: number) { @@ -577,4 +564,16 @@ export default class PerpsV3Service { return price.mul(skewWei.div(scaleWei).add(1)) } + + // private helpers + + private modifyCollateral(accountId: number, marketId: number, amount: Wei) { + const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy + if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) + return this.sdk.transactions.createContractTxn(marketProxy, 'modifyCollateral', [ + accountId, + marketId, + amount.toBN(), + ]) + } } From 8f225452edf5ab3b39248279b11c89491b2d48b0 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Fri, 28 Jul 2023 10:31:11 +0100 Subject: [PATCH 18/43] Improved v3 account query --- .../CrossMarginOrderConfirmation.tsx | 2 +- packages/app/src/state/futures/actions.ts | 8 - .../src/state/futures/crossMargin/actions.ts | 45 +- packages/app/src/state/futures/hooks.ts | 30 +- .../src/state/futures/smartMargin/actions.ts | 6 +- packages/app/src/state/hooks.ts | 10 +- packages/app/src/utils/futures.ts | 5 - .../contracts/abis/PerpsV3AccountProxy.json | 808 ++++++++++++ packages/sdk/src/contracts/constants.ts | 3 + packages/sdk/src/contracts/index.ts | 12 +- .../contracts/types/PerpsV3AccountProxy.ts | 1174 +++++++++++++++++ .../factories/PerpsV3AccountProxy__factory.ts | 832 ++++++++++++ .../src/contracts/types/factories/index.ts | 1 + packages/sdk/src/contracts/types/index.ts | 2 + packages/sdk/src/services/perpsV3.ts | 31 +- 15 files changed, 2902 insertions(+), 67 deletions(-) create mode 100644 packages/sdk/src/contracts/abis/PerpsV3AccountProxy.json create mode 100644 packages/sdk/src/contracts/types/PerpsV3AccountProxy.ts create mode 100644 packages/sdk/src/contracts/types/factories/PerpsV3AccountProxy__factory.ts diff --git a/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx index 6aba8979c5..2b4659a593 100644 --- a/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx +++ b/packages/app/src/sections/futures/TradeConfirmation/CrossMarginOrderConfirmation.tsx @@ -122,7 +122,7 @@ const CrossMarginOrderConfirmationModal: FC = () => { value: formatDollars(totalDeposit), }, ], - [t, preview, totalDeposit, preview?.settlementFee, settlementStrategy?.settlementDelay] + [t, preview, totalDeposit, settlementStrategy?.settlementDelay] ) const mobileRows = useMemo(() => { diff --git a/packages/app/src/state/futures/actions.ts b/packages/app/src/state/futures/actions.ts index 690af33b4e..1ea6ea4708 100644 --- a/packages/app/src/state/futures/actions.ts +++ b/packages/app/src/state/futures/actions.ts @@ -64,14 +64,6 @@ export const fetchDailyVolumes = createAsyncThunk( } ) -export const fetchSharedFuturesData = createAsyncThunk( - 'futures/fetchSharedFuturesData', - async (_, { dispatch }) => { - await dispatch(fetchMarkets()) - dispatch(fetchDailyVolumes()) - } -) - export const fetchMarginTransfers = createAsyncThunk( 'futures/fetchMarginTransfers', async (_, { dispatch }) => { diff --git a/packages/app/src/state/futures/crossMargin/actions.ts b/packages/app/src/state/futures/crossMargin/actions.ts index 1f7f450482..74a1fcd049 100644 --- a/packages/app/src/state/futures/crossMargin/actions.ts +++ b/packages/app/src/state/futures/crossMargin/actions.ts @@ -30,7 +30,6 @@ import { AppThunk } from 'state/store' import { ThunkConfig } from 'state/types' import { selectNetwork, selectWallet } from 'state/wallet/selectors' import { - perpsAccountIdFromAddress, serializePositionHistory, serializeV3AsyncOrder, serializeV3Market, @@ -69,6 +68,14 @@ import { } from './selectors' import { CrossMarginTradePreview } from './types' +export const fetchCrossMarginMarketData = createAsyncThunk( + 'futures/fetchCrossMarginMarketData', + async (_, { dispatch }) => { + await dispatch(fetchV3Markets()) + // TODO: fetch v3 volume data + } +) + export const fetchV3Markets = createAsyncThunk< { markets: PerpsMarketV3[]; networkId: NetworkId } | undefined, void, @@ -104,19 +111,12 @@ export const fetchPerpsV3Account = createAsyncThunk< // Already have an account fetched and persisted for this address if (accounts[network]?.[wallet]?.account) return - const id = perpsAccountIdFromAddress(wallet) - try { - const owner = await sdk.perpsV3.getAccountOwner(id) - - if (owner) { - // Account already created - if (owner.toLowerCase() !== wallet.toLowerCase()) { - const errMessage = 'Account id registered with a different wallet' - notifyError(errMessage) - rejectWithValue(errMessage) - } - return { account: Number(id), wallet, network } + // TODO: Support multiple accounts + const accountIds = await sdk.perpsV3.getPerpsV3AccountIds(wallet) + const defaultAccount = accountIds[0] + if (defaultAccount) { + return { account: defaultAccount, wallet, network } } return undefined } catch (err) { @@ -399,25 +399,18 @@ export const createPerpsV3Account = createAsyncThunk< if (!wallet || !supportedNetwork) return undefined const accounts = getState().crossMargin.accounts - // Already have an accoutn fetched and persisted for this address + // Already have an account fetched and persisted for this address if (accounts[network]?.[wallet]?.account) { notifyError('There is already an account associated with this wallet') rejectWithValue('Account already created') } - const id = perpsAccountIdFromAddress(wallet) - try { - // Check if this wallet has already registered an account from Kwenta - // as we want to maintain one to one eoa account mapping for now + const accountIds = await sdk.perpsV3.getPerpsV3AccountIds(wallet) - const owner = await sdk.perpsV3.getAccountOwner(id) - if (owner && owner.toLowerCase() !== wallet.toLowerCase()) { - notifyError('Another wallet is already registered with account id ' + id) - rejectWithValue('Account id already registered') - return - } else if (owner) { - dispatch(setPerpsV3Account({ account: id, wallet: wallet, network })) + if (accountIds.length > 0) { + // Already have an account, no need to create one + dispatch(setPerpsV3Account({ account: accountIds[0], wallet: wallet, network })) return } @@ -428,7 +421,7 @@ export const createPerpsV3Account = createAsyncThunk< hash: null, }) ) - const tx = await sdk.perpsV3.createPerpsV3Account(id) + const tx = await sdk.perpsV3.createAccount() await monitorAndAwaitTransaction(dispatch, tx) dispatch(fetchPerpsV3Account()) dispatch(setOpenModal(null)) diff --git a/packages/app/src/state/futures/hooks.ts b/packages/app/src/state/futures/hooks.ts index 302e311689..6f5050b1e7 100644 --- a/packages/app/src/state/futures/hooks.ts +++ b/packages/app/src/state/futures/hooks.ts @@ -2,6 +2,7 @@ import { FuturesMarginType } from '@kwenta/sdk/types' import { fetchCrossMarginAccountData, + fetchCrossMarginMarketData, fetchCrossMarginOpenOrders, fetchCrossMarginPositions, fetchPerpsV3Account, @@ -19,11 +20,7 @@ import { } from 'state/staking/selectors' import { selectNetwork, selectWallet } from 'state/wallet/selectors' -import { - fetchFuturesPositionHistory, - fetchSharedFuturesData, - fetchMarginTransfers, -} from './actions' +import { fetchFuturesPositionHistory, fetchMarginTransfers } from './actions' import { selectFuturesType } from './common/selectors' import { selectMarkets } from './selectors' import { @@ -32,6 +29,7 @@ import { fetchFuturesFeesForAccount, fetchSmartMarginAccount, fetchSmartMarginAccountData, + fetchSmartMarginMarketData, fetchSmartMarginOpenOrders, } from './smartMargin/actions' import { @@ -75,11 +73,19 @@ export const usePollMarketFuturesData = () => { }) useFetchAction(fetchMarginTransfers, { dependencies: [networkId, wallet, selectedAccountType] }) - usePollAction('fetchSharedFuturesData', fetchSharedFuturesData, { + + usePollAction('fetchSmartMarginMarketData', fetchSmartMarginMarketData, { dependencies: [networkId], intervalTime: 60000, - disabled: !networkSupportsSmartMargin, + disabled: !networkSupportsSmartMargin || selectedAccountType !== FuturesMarginType.SMART_MARGIN, + }) + + usePollAction('fetchCrossMarginMarketData', fetchCrossMarginMarketData, { + dependencies: [networkId], + intervalTime: 60000, + disabled: !networkSupportsCrossMargin || selectedAccountType !== FuturesMarginType.CROSS_MARGIN, }) + usePollAction('fetchCrossMarginPositions', fetchCrossMarginPositions, { intervalTime: 30000, dependencies: [wallet, markets.length], @@ -131,6 +137,7 @@ export const usePollDashboardFuturesData = () => { const wallet = useAppSelector(selectWallet) const crossMarginAddress = useAppSelector(selectSmartMarginAccount) const networkSupportsCrossMargin = useAppSelector(selectSmartMarginSupportedNetwork) + const networkSupportsSmartMargin = useAppSelector(selectSmartMarginSupportedNetwork) const selectedAccountType = useAppSelector(selectFuturesType) useFetchAction(fetchMarginTransfers, { @@ -146,9 +153,16 @@ export const usePollDashboardFuturesData = () => { selectedAccountType === FuturesMarginType.CROSS_MARGIN, }) - usePollAction('fetchSharedFuturesData', fetchSharedFuturesData, { + usePollAction('fetchSmartMarginMarketData', fetchSmartMarginMarketData, { + dependencies: [networkId], + intervalTime: 60000, + disabled: !networkSupportsSmartMargin, + }) + + usePollAction('fetchCrossMarginMarketData', fetchCrossMarginMarketData, { dependencies: [networkId], intervalTime: 60000, + disabled: !networkSupportsCrossMargin, }) usePollAction('fetchSmartMarginAccountData', fetchSmartMarginAccountData, { diff --git a/packages/app/src/state/futures/smartMargin/actions.ts b/packages/app/src/state/futures/smartMargin/actions.ts index 6962555474..dd5c0d1de2 100644 --- a/packages/app/src/state/futures/smartMargin/actions.ts +++ b/packages/app/src/state/futures/smartMargin/actions.ts @@ -48,7 +48,6 @@ import { } from 'state/app/reducer' import { fetchBalances } from 'state/balances/actions' import { ZERO_CM_FEES, ZERO_STATE_TRADE_INPUTS } from 'state/constants' -import { fetchV3Markets } from 'state/futures/crossMargin/actions' import { serializeWeiObject } from 'state/helpers' import { AppDispatch, AppThunk, RootState } from 'state/store' import { ThunkConfig } from 'state/types' @@ -291,11 +290,10 @@ export const fetchSmartMarginAccountData = createAsyncThunk( - 'futures/fetchSharedFuturesData', +export const fetchSmartMarginMarketData = createAsyncThunk( + 'futures/fetchSmartMarginMarketData', async (_, { dispatch }) => { await dispatch(fetchMarketsV2()) - await dispatch(fetchV3Markets()) dispatch(fetchDailyVolumesV2()) } ) diff --git a/packages/app/src/state/hooks.ts b/packages/app/src/state/hooks.ts index 3a5b4e8e71..5378adc980 100644 --- a/packages/app/src/state/hooks.ts +++ b/packages/app/src/state/hooks.ts @@ -1,4 +1,5 @@ import { AsyncThunkAction } from '@reduxjs/toolkit' +import { useRouter } from 'next/router' import { useCallback, useEffect, useRef } from 'react' import { TypedUseSelectorHook, useDispatch, useSelector } from 'react-redux' @@ -69,13 +70,18 @@ const DEFAULT_INTERVAL = 20000 export const usePollAction = ( actionName: string, action: () => ActionType, - options?: { dependencies?: any[]; disabled?: boolean; intervalTime?: number } + options?: { + dependencies?: any[] + disabled?: boolean + intervalTime?: number + } ) => { const { providerReady } = Connector.useContainer() const startPolling = useStartPollingAction() + const router = useRouter() useEffect(() => { - if (!options?.disabled && providerReady) { + if (!options?.disabled && providerReady && router.isReady) { startPolling(actionName, action, options?.intervalTime || DEFAULT_INTERVAL) } // eslint-disable-next-line diff --git a/packages/app/src/utils/futures.ts b/packages/app/src/utils/futures.ts index 5349c1c066..8b2ba67721 100644 --- a/packages/app/src/utils/futures.ts +++ b/packages/app/src/utils/futures.ts @@ -497,11 +497,6 @@ export const formatDelayedOrders = (orders: DelayedOrder[], markets: PerpsMarket }, [] as DelayedOrderWithDetails[]) } -export const perpsAccountIdFromAddress = (eoa: string): number => { - const numberedId = eoa.replace(/\D/g, '') - return Number(numberedId.substring(0, 16)) -} - export const serializeCrossMarginTradePreview = ( preview: CrossMarginTradePreview ): CrossMarginTradePreview => ({ diff --git a/packages/sdk/src/contracts/abis/PerpsV3AccountProxy.json b/packages/sdk/src/contracts/abis/PerpsV3AccountProxy.json new file mode 100644 index 0000000000..4959b59ee6 --- /dev/null +++ b/packages/sdk/src/contracts/abis/PerpsV3AccountProxy.json @@ -0,0 +1,808 @@ +[ + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ImplementationIsSterile", + "type": "error" + }, + { + "inputs": [], + "name": "NoChange", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "contr", + "type": "address" + } + ], + "name": "NotAContract", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "NotNominated", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "Unauthorized", + "type": "error" + }, + { + "inputs": [], + "name": "UpgradeSimulationFailed", + "type": "error" + }, + { + "inputs": [], + "name": "ZeroAddress", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "oldOwner", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnerChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnerNominated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "self", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newNominatedOwner", + "type": "address" + } + ], + "name": "nominateNewOwner", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "nominatedOwner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceNomination", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "simulateUpgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "AlreadyInitialized", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "CannotSelfApprove", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "requestedIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "IndexOverrun", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "InvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "parameter", + "type": "string" + }, + { + "internalType": "string", + "name": "reason", + "type": "string" + } + ], + "name": "InvalidParameter", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "name": "InvalidTransferRecipient", + "type": "error" + }, + { + "inputs": [], + "name": "OverflowUint256ToUint128", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "TokenAlreadyMinted", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "id", + "type": "uint256" + } + ], + "name": "TokenDoesNotExist", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "holder", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "tokenName", + "type": "string" + }, + { + "internalType": "string", + "name": "tokenSymbol", + "type": "string" + }, + { + "internalType": "string", + "name": "uri", + "type": "string" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "holder", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isInitialized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "setAllowance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "uri", + "type": "string" + } + ], + "name": "setBaseTokenURI", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenOfOwnerByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ] \ No newline at end of file diff --git a/packages/sdk/src/contracts/constants.ts b/packages/sdk/src/contracts/constants.ts index 21d0a0b044..483ebb80c6 100644 --- a/packages/sdk/src/contracts/constants.ts +++ b/packages/sdk/src/contracts/constants.ts @@ -153,4 +153,7 @@ export const ADDRESSES: Record> = { PerpsV3MarketProxy: { 420: '0xd78D47739Ed468a602beb11C34a2A20759bcEf4F', }, + PerpsV3AccountProxy: { + 420: '0x9dd97A7530A56869b53f0Cd67fE6185398F7b022', + }, } diff --git a/packages/sdk/src/contracts/index.ts b/packages/sdk/src/contracts/index.ts index 20ba865450..33b670c585 100644 --- a/packages/sdk/src/contracts/index.ts +++ b/packages/sdk/src/contracts/index.ts @@ -17,13 +17,14 @@ import MultipleMerkleDistributorPerpsV2ABI from './abis/MultipleMerkleDistributo import PerpsV2MarketABI from './abis/PerpsV2Market.json' import PerpsV2MarketDataABI from './abis/PerpsV2MarketData.json' import PerpsV2MarketSettingsABI from './abis/PerpsV2MarketSettings.json' -import PerpsV3MarketProxy from './abis/PerpsV3MarketProxy.json' +import PerpsV3MarketProxyABI from './abis/PerpsV3MarketProxy.json' import RewardEscrowABI from './abis/RewardEscrow.json' import RewardEscrowV2ABI from './abis/RewardEscrowV2.json' import StakingRewardsABI from './abis/StakingRewards.json' import SupplyScheduleABI from './abis/SupplySchedule.json' import SynthRedeemerABI from './abis/SynthRedeemer.json' import SystemStatusABI from './abis/SystemStatus.json' +import PerpsV3AccountProxyABI from './abis/PerpsV3AccountProxy.json' import { ADDRESSES } from './constants' import { SmartMarginAccountFactory__factory, @@ -53,6 +54,7 @@ import { PerpsV3MarketProxy__factory, RewardEscrowV2__factory, KwentaStakingRewardsV2__factory, + PerpsV3AccountProxy__factory, } from './types' import { PerpsV2MarketData__factory } from './types/factories/PerpsV2MarketData__factory' import { PerpsV2MarketSettings__factory } from './types/factories/PerpsV2MarketSettings__factory' @@ -186,6 +188,9 @@ export const getContractsByNetwork = ( perpsV3MarketProxy: ADDRESSES.PerpsV3MarketProxy[networkId] ? PerpsV3MarketProxy__factory.connect(ADDRESSES.PerpsV3MarketProxy[networkId], provider) : undefined, + perpsV3AccountProxy: ADDRESSES.PerpsV3AccountProxy[networkId] + ? PerpsV3AccountProxy__factory.connect(ADDRESSES.PerpsV3AccountProxy[networkId], provider) + : undefined, } } @@ -264,7 +269,10 @@ export const getMulticallContractsByNetwork = (networkId: NetworkId) => { ? new EthCallContract(ADDRESSES.RewardEscrowV2[networkId], RewardEscrowV2ABI) : undefined, perpsV3MarketProxy: ADDRESSES.PerpsV3MarketProxy[networkId] - ? new EthCallContract(ADDRESSES.PerpsV3MarketProxy[networkId], PerpsV3MarketProxy) + ? new EthCallContract(ADDRESSES.PerpsV3MarketProxy[networkId], PerpsV3MarketProxyABI) + : undefined, + perpsV3AccountProxy: ADDRESSES.PerpsV3AccountProxy[networkId] + ? new EthCallContract(ADDRESSES.PerpsV3AccountProxy[networkId], PerpsV3AccountProxyABI) : undefined, } } diff --git a/packages/sdk/src/contracts/types/PerpsV3AccountProxy.ts b/packages/sdk/src/contracts/types/PerpsV3AccountProxy.ts new file mode 100644 index 0000000000..4e31b81526 --- /dev/null +++ b/packages/sdk/src/contracts/types/PerpsV3AccountProxy.ts @@ -0,0 +1,1174 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +import type { + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + Overrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "./common"; + +export interface PerpsV3AccountProxyInterface extends utils.Interface { + functions: { + "acceptOwnership()": FunctionFragment; + "getImplementation()": FunctionFragment; + "nominateNewOwner(address)": FunctionFragment; + "nominatedOwner()": FunctionFragment; + "owner()": FunctionFragment; + "renounceNomination()": FunctionFragment; + "simulateUpgradeTo(address)": FunctionFragment; + "upgradeTo(address)": FunctionFragment; + "approve(address,uint256)": FunctionFragment; + "balanceOf(address)": FunctionFragment; + "burn(uint256)": FunctionFragment; + "getApproved(uint256)": FunctionFragment; + "initialize(string,string,string)": FunctionFragment; + "isApprovedForAll(address,address)": FunctionFragment; + "isInitialized()": FunctionFragment; + "mint(address,uint256)": FunctionFragment; + "name()": FunctionFragment; + "ownerOf(uint256)": FunctionFragment; + "safeMint(address,uint256,bytes)": FunctionFragment; + "safeTransferFrom(address,address,uint256)": FunctionFragment; + "safeTransferFrom(address,address,uint256,bytes)": FunctionFragment; + "setAllowance(uint256,address)": FunctionFragment; + "setApprovalForAll(address,bool)": FunctionFragment; + "setBaseTokenURI(string)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "symbol()": FunctionFragment; + "tokenByIndex(uint256)": FunctionFragment; + "tokenOfOwnerByIndex(address,uint256)": FunctionFragment; + "tokenURI(uint256)": FunctionFragment; + "totalSupply()": FunctionFragment; + "transferFrom(address,address,uint256)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "acceptOwnership" + | "getImplementation" + | "nominateNewOwner" + | "nominatedOwner" + | "owner" + | "renounceNomination" + | "simulateUpgradeTo" + | "upgradeTo" + | "approve" + | "balanceOf" + | "burn" + | "getApproved" + | "initialize" + | "isApprovedForAll" + | "isInitialized" + | "mint" + | "name" + | "ownerOf" + | "safeMint" + | "safeTransferFrom(address,address,uint256)" + | "safeTransferFrom(address,address,uint256,bytes)" + | "setAllowance" + | "setApprovalForAll" + | "setBaseTokenURI" + | "supportsInterface" + | "symbol" + | "tokenByIndex" + | "tokenOfOwnerByIndex" + | "tokenURI" + | "totalSupply" + | "transferFrom" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "acceptOwnership", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getImplementation", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "nominateNewOwner", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "nominatedOwner", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "renounceNomination", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "simulateUpgradeTo", + values: [string] + ): string; + encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; + encodeFunctionData( + functionFragment: "approve", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; + encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; + encodeFunctionData( + functionFragment: "getApproved", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "initialize", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "isApprovedForAll", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "isInitialized", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "mint", + values: [string, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "name", values?: undefined): string; + encodeFunctionData( + functionFragment: "ownerOf", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "safeMint", + values: [string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "safeTransferFrom(address,address,uint256)", + values: [string, string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "safeTransferFrom(address,address,uint256,bytes)", + values: [string, string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "setAllowance", + values: [BigNumberish, string] + ): string; + encodeFunctionData( + functionFragment: "setApprovalForAll", + values: [string, boolean] + ): string; + encodeFunctionData( + functionFragment: "setBaseTokenURI", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData(functionFragment: "symbol", values?: undefined): string; + encodeFunctionData( + functionFragment: "tokenByIndex", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "tokenOfOwnerByIndex", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "tokenURI", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "totalSupply", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "transferFrom", + values: [string, string, BigNumberish] + ): string; + + decodeFunctionResult( + functionFragment: "acceptOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getImplementation", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominateNewOwner", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "nominatedOwner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "renounceNomination", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "simulateUpgradeTo", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getApproved", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isApprovedForAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isInitialized", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "safeMint", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "safeTransferFrom(address,address,uint256)", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "safeTransferFrom(address,address,uint256,bytes)", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setAllowance", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setApprovalForAll", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setBaseTokenURI", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "tokenByIndex", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "tokenOfOwnerByIndex", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "totalSupply", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "transferFrom", + data: BytesLike + ): Result; + + events: { + "OwnerChanged(address,address)": EventFragment; + "OwnerNominated(address)": EventFragment; + "Upgraded(address,address)": EventFragment; + "Approval(address,address,uint256)": EventFragment; + "ApprovalForAll(address,address,bool)": EventFragment; + "Transfer(address,address,uint256)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; + getEvent(nameOrSignatureOrTopic: "OwnerNominated"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ApprovalForAll"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; +} + +export interface OwnerChangedEventObject { + oldOwner: string; + newOwner: string; +} +export type OwnerChangedEvent = TypedEvent< + [string, string], + OwnerChangedEventObject +>; + +export type OwnerChangedEventFilter = TypedEventFilter; + +export interface OwnerNominatedEventObject { + newOwner: string; +} +export type OwnerNominatedEvent = TypedEvent< + [string], + OwnerNominatedEventObject +>; + +export type OwnerNominatedEventFilter = TypedEventFilter; + +export interface UpgradedEventObject { + self: string; + implementation: string; +} +export type UpgradedEvent = TypedEvent<[string, string], UpgradedEventObject>; + +export type UpgradedEventFilter = TypedEventFilter; + +export interface ApprovalEventObject { + owner: string; + approved: string; + tokenId: BigNumber; +} +export type ApprovalEvent = TypedEvent< + [string, string, BigNumber], + ApprovalEventObject +>; + +export type ApprovalEventFilter = TypedEventFilter; + +export interface ApprovalForAllEventObject { + owner: string; + operator: string; + approved: boolean; +} +export type ApprovalForAllEvent = TypedEvent< + [string, string, boolean], + ApprovalForAllEventObject +>; + +export type ApprovalForAllEventFilter = TypedEventFilter; + +export interface TransferEventObject { + from: string; + to: string; + tokenId: BigNumber; +} +export type TransferEvent = TypedEvent< + [string, string, BigNumber], + TransferEventObject +>; + +export type TransferEventFilter = TypedEventFilter; + +export interface PerpsV3AccountProxy extends BaseContract { + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: PerpsV3AccountProxyInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise<[string]>; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise<[string]>; + + owner(overrides?: CallOverrides): Promise<[string]>; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + approve( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + holder: string, + overrides?: CallOverrides + ): Promise<[BigNumber] & { balance: BigNumber }>; + + burn( + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getApproved( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string] & { operator: string }>; + + initialize( + tokenName: string, + tokenSymbol: string, + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + isApprovedForAll( + holder: string, + operator: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + + isInitialized(overrides?: CallOverrides): Promise<[boolean]>; + + mint( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise<[string]>; + + ownerOf( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + safeMint( + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256)"( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256,bytes)"( + from: string, + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setAllowance( + tokenId: BigNumberish, + spender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setApprovalForAll( + operator: string, + approved: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setBaseTokenURI( + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + symbol(overrides?: CallOverrides): Promise<[string]>; + + tokenByIndex( + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + tokenOfOwnerByIndex( + owner: string, + index: BigNumberish, + overrides?: CallOverrides + ): Promise<[BigNumber]>; + + tokenURI( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise<[string]>; + + totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; + + transferFrom( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + approve( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(holder: string, overrides?: CallOverrides): Promise; + + burn( + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getApproved( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + initialize( + tokenName: string, + tokenSymbol: string, + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + isApprovedForAll( + holder: string, + operator: string, + overrides?: CallOverrides + ): Promise; + + isInitialized(overrides?: CallOverrides): Promise; + + mint( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise; + + safeMint( + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256)"( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256,bytes)"( + from: string, + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setAllowance( + tokenId: BigNumberish, + spender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setApprovalForAll( + operator: string, + approved: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setBaseTokenURI( + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenByIndex( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenOfOwnerByIndex( + owner: string, + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + callStatic: { + acceptOwnership(overrides?: CallOverrides): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: CallOverrides + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination(overrides?: CallOverrides): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: CallOverrides + ): Promise; + + approve( + to: string, + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + balanceOf(holder: string, overrides?: CallOverrides): Promise; + + burn(tokenId: BigNumberish, overrides?: CallOverrides): Promise; + + getApproved( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + initialize( + tokenName: string, + tokenSymbol: string, + uri: string, + overrides?: CallOverrides + ): Promise; + + isApprovedForAll( + holder: string, + operator: string, + overrides?: CallOverrides + ): Promise; + + isInitialized(overrides?: CallOverrides): Promise; + + mint( + to: string, + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + name(overrides?: CallOverrides): Promise; + + ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise; + + safeMint( + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + "safeTransferFrom(address,address,uint256)"( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + "safeTransferFrom(address,address,uint256,bytes)"( + from: string, + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + setAllowance( + tokenId: BigNumberish, + spender: string, + overrides?: CallOverrides + ): Promise; + + setApprovalForAll( + operator: string, + approved: boolean, + overrides?: CallOverrides + ): Promise; + + setBaseTokenURI(uri: string, overrides?: CallOverrides): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenByIndex( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenOfOwnerByIndex( + owner: string, + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; + + filters: { + "OwnerChanged(address,address)"( + oldOwner?: null, + newOwner?: null + ): OwnerChangedEventFilter; + OwnerChanged(oldOwner?: null, newOwner?: null): OwnerChangedEventFilter; + + "OwnerNominated(address)"(newOwner?: null): OwnerNominatedEventFilter; + OwnerNominated(newOwner?: null): OwnerNominatedEventFilter; + + "Upgraded(address,address)"( + self?: string | null, + implementation?: null + ): UpgradedEventFilter; + Upgraded(self?: string | null, implementation?: null): UpgradedEventFilter; + + "Approval(address,address,uint256)"( + owner?: string | null, + approved?: string | null, + tokenId?: BigNumberish | null + ): ApprovalEventFilter; + Approval( + owner?: string | null, + approved?: string | null, + tokenId?: BigNumberish | null + ): ApprovalEventFilter; + + "ApprovalForAll(address,address,bool)"( + owner?: string | null, + operator?: string | null, + approved?: null + ): ApprovalForAllEventFilter; + ApprovalForAll( + owner?: string | null, + operator?: string | null, + approved?: null + ): ApprovalForAllEventFilter; + + "Transfer(address,address,uint256)"( + from?: string | null, + to?: string | null, + tokenId?: BigNumberish | null + ): TransferEventFilter; + Transfer( + from?: string | null, + to?: string | null, + tokenId?: BigNumberish | null + ): TransferEventFilter; + }; + + estimateGas: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + approve( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf(holder: string, overrides?: CallOverrides): Promise; + + burn( + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getApproved( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + initialize( + tokenName: string, + tokenSymbol: string, + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + isApprovedForAll( + holder: string, + operator: string, + overrides?: CallOverrides + ): Promise; + + isInitialized(overrides?: CallOverrides): Promise; + + mint( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + ownerOf( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + safeMint( + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256)"( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256,bytes)"( + from: string, + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setAllowance( + tokenId: BigNumberish, + spender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setApprovalForAll( + operator: string, + approved: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setBaseTokenURI( + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenByIndex( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenOfOwnerByIndex( + owner: string, + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenURI( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + acceptOwnership( + overrides?: Overrides & { from?: string } + ): Promise; + + getImplementation(overrides?: CallOverrides): Promise; + + nominateNewOwner( + newNominatedOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; + + nominatedOwner(overrides?: CallOverrides): Promise; + + owner(overrides?: CallOverrides): Promise; + + renounceNomination( + overrides?: Overrides & { from?: string } + ): Promise; + + simulateUpgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + upgradeTo( + newImplementation: string, + overrides?: Overrides & { from?: string } + ): Promise; + + approve( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + balanceOf( + holder: string, + overrides?: CallOverrides + ): Promise; + + burn( + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + getApproved( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + initialize( + tokenName: string, + tokenSymbol: string, + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + isApprovedForAll( + holder: string, + operator: string, + overrides?: CallOverrides + ): Promise; + + isInitialized(overrides?: CallOverrides): Promise; + + mint( + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + name(overrides?: CallOverrides): Promise; + + ownerOf( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + safeMint( + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256)"( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + + "safeTransferFrom(address,address,uint256,bytes)"( + from: string, + to: string, + tokenId: BigNumberish, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; + + setAllowance( + tokenId: BigNumberish, + spender: string, + overrides?: Overrides & { from?: string } + ): Promise; + + setApprovalForAll( + operator: string, + approved: boolean, + overrides?: Overrides & { from?: string } + ): Promise; + + setBaseTokenURI( + uri: string, + overrides?: Overrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + symbol(overrides?: CallOverrides): Promise; + + tokenByIndex( + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenOfOwnerByIndex( + owner: string, + index: BigNumberish, + overrides?: CallOverrides + ): Promise; + + tokenURI( + tokenId: BigNumberish, + overrides?: CallOverrides + ): Promise; + + totalSupply(overrides?: CallOverrides): Promise; + + transferFrom( + from: string, + to: string, + tokenId: BigNumberish, + overrides?: Overrides & { from?: string } + ): Promise; + }; +} diff --git a/packages/sdk/src/contracts/types/factories/PerpsV3AccountProxy__factory.ts b/packages/sdk/src/contracts/types/factories/PerpsV3AccountProxy__factory.ts new file mode 100644 index 0000000000..b70c233484 --- /dev/null +++ b/packages/sdk/src/contracts/types/factories/PerpsV3AccountProxy__factory.ts @@ -0,0 +1,832 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ + +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + PerpsV3AccountProxy, + PerpsV3AccountProxyInterface, +} from "../PerpsV3AccountProxy"; + +const _abi = [ + { + inputs: [ + { + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "ImplementationIsSterile", + type: "error", + }, + { + inputs: [], + name: "NoChange", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "contr", + type: "address", + }, + ], + name: "NotAContract", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "NotNominated", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "Unauthorized", + type: "error", + }, + { + inputs: [], + name: "UpgradeSimulationFailed", + type: "error", + }, + { + inputs: [], + name: "ZeroAddress", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "oldOwner", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerChanged", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnerNominated", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "self", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "implementation", + type: "address", + }, + ], + name: "Upgraded", + type: "event", + }, + { + inputs: [], + name: "acceptOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "getImplementation", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newNominatedOwner", + type: "address", + }, + ], + name: "nominateNewOwner", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "nominatedOwner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceNomination", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "simulateUpgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newImplementation", + type: "address", + }, + ], + name: "upgradeTo", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "AlreadyInitialized", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "CannotSelfApprove", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "requestedIndex", + type: "uint256", + }, + { + internalType: "uint256", + name: "length", + type: "uint256", + }, + ], + name: "IndexOverrun", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "InvalidOwner", + type: "error", + }, + { + inputs: [ + { + internalType: "string", + name: "parameter", + type: "string", + }, + { + internalType: "string", + name: "reason", + type: "string", + }, + ], + name: "InvalidParameter", + type: "error", + }, + { + inputs: [ + { + internalType: "address", + name: "addr", + type: "address", + }, + ], + name: "InvalidTransferRecipient", + type: "error", + }, + { + inputs: [], + name: "OverflowUint256ToUint128", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "TokenAlreadyMinted", + type: "error", + }, + { + inputs: [ + { + internalType: "uint256", + name: "id", + type: "uint256", + }, + ], + name: "TokenDoesNotExist", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "approved", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "owner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "operator", + type: "address", + }, + { + indexed: false, + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "ApprovalForAll", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "from", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "to", + type: "address", + }, + { + indexed: true, + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "approve", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "holder", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + internalType: "uint256", + name: "balance", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "burn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "getApproved", + outputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "tokenName", + type: "string", + }, + { + internalType: "string", + name: "tokenSymbol", + type: "string", + }, + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "initialize", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "holder", + type: "address", + }, + { + internalType: "address", + name: "operator", + type: "address", + }, + ], + name: "isApprovedForAll", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isInitialized", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "name", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "ownerOf", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeMint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "safeTransferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + { + internalType: "address", + name: "spender", + type: "address", + }, + ], + name: "setAllowance", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "operator", + type: "address", + }, + { + internalType: "bool", + name: "approved", + type: "bool", + }, + ], + name: "setApprovalForAll", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "string", + name: "uri", + type: "string", + }, + ], + name: "setBaseTokenURI", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "symbol", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "tokenByIndex", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "owner", + type: "address", + }, + { + internalType: "uint256", + name: "index", + type: "uint256", + }, + ], + name: "tokenOfOwnerByIndex", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "tokenURI", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalSupply", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "from", + type: "address", + }, + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, +] as const; + +export class PerpsV3AccountProxy__factory { + static readonly abi = _abi; + static createInterface(): PerpsV3AccountProxyInterface { + return new utils.Interface(_abi) as PerpsV3AccountProxyInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): PerpsV3AccountProxy { + return new Contract(address, _abi, signerOrProvider) as PerpsV3AccountProxy; + } +} diff --git a/packages/sdk/src/contracts/types/factories/index.ts b/packages/sdk/src/contracts/types/factories/index.ts index c0693e93ca..fe646ad3ca 100644 --- a/packages/sdk/src/contracts/types/factories/index.ts +++ b/packages/sdk/src/contracts/types/factories/index.ts @@ -19,6 +19,7 @@ export { PerpsV2Market__factory } from "./PerpsV2Market__factory"; export { PerpsV2MarketData__factory } from "./PerpsV2MarketData__factory"; export { PerpsV2MarketSettings__factory } from "./PerpsV2MarketSettings__factory"; export { PerpsV2MarketViews__factory } from "./PerpsV2MarketViews__factory"; +export { PerpsV3AccountProxy__factory } from "./PerpsV3AccountProxy__factory"; export { PerpsV3MarketProxy__factory } from "./PerpsV3MarketProxy__factory"; export { Pyth__factory } from "./Pyth__factory"; export { ReverseRecords__factory } from "./ReverseRecords__factory"; diff --git a/packages/sdk/src/contracts/types/index.ts b/packages/sdk/src/contracts/types/index.ts index 4012c48fa1..ef9023e926 100644 --- a/packages/sdk/src/contracts/types/index.ts +++ b/packages/sdk/src/contracts/types/index.ts @@ -19,6 +19,7 @@ export type { PerpsV2Market } from "./PerpsV2Market"; export type { PerpsV2MarketData } from "./PerpsV2MarketData"; export type { PerpsV2MarketSettings } from "./PerpsV2MarketSettings"; export type { PerpsV2MarketViews } from "./PerpsV2MarketViews"; +export type { PerpsV3AccountProxy } from "./PerpsV3AccountProxy"; export type { PerpsV3MarketProxy } from "./PerpsV3MarketProxy"; export type { Pyth } from "./Pyth"; export type { ReverseRecords } from "./ReverseRecords"; @@ -56,6 +57,7 @@ export { PerpsV2Market__factory } from "./factories/PerpsV2Market__factory"; export { PerpsV2MarketData__factory } from "./factories/PerpsV2MarketData__factory"; export { PerpsV2MarketSettings__factory } from "./factories/PerpsV2MarketSettings__factory"; export { PerpsV2MarketViews__factory } from "./factories/PerpsV2MarketViews__factory"; +export { PerpsV3AccountProxy__factory } from "./factories/PerpsV3AccountProxy__factory"; export { PerpsV3MarketProxy__factory } from "./factories/PerpsV3MarketProxy__factory"; export { Pyth__factory } from "./factories/Pyth__factory"; export { ReverseRecords__factory } from "./factories/ReverseRecords__factory"; diff --git a/packages/sdk/src/services/perpsV3.ts b/packages/sdk/src/services/perpsV3.ts index 5ff236d9d9..5d77df1dea 100644 --- a/packages/sdk/src/services/perpsV3.ts +++ b/packages/sdk/src/services/perpsV3.ts @@ -46,15 +46,11 @@ import { formatSettlementStrategy, } from '../utils/futures' import { getReasonFromCode } from '../utils/synths' -import { - queryPerpsV3Markets, - queryPerpsV3Accounts, - querySettlementStrategies, -} from '../queries/perpsV3' +import { queryPerpsV3Markets, querySettlementStrategies } from '../queries/perpsV3' import { weiFromWei } from '../utils' import { ZERO_ADDRESS } from '../constants' import { SynthV3Asset } from '../types' -import { V3_PERPS_ID_TO_MARKET_KEY, V3_SYNTH_MARKET_IDS, V3MarketId } from '../constants/perpsv3' +import { V3_PERPS_ID_TO_MARKET_KEY, V3MarketId } from '../constants/perpsv3' export default class PerpsV3Service { private sdk: KwentaSDK @@ -77,6 +73,7 @@ export default class PerpsV3Service { public async getMarkets() { const perpsV3Markets = await queryPerpsV3Markets(this.sdk) + // TODO: Combine settlement strategies and markets query const strategies = await this.getSettlementStrategies() const futuresMarkets = perpsV3Markets.reduce( @@ -338,10 +335,21 @@ export default class PerpsV3Service { // return response ? calculateVolumes(response) : {} } - public async getPerpsV3AccountIds(walletAddress?: string | null): Promise { + public async getPerpsV3AccountIds(walletAddress?: string | null): Promise { + const accountProxy = this.sdk.context.contracts.perpsV3AccountProxy + const accountMulticall = this.sdk.context.multicallContracts.perpsV3AccountProxy + if (!accountProxy || !accountMulticall) throw new Error(UNSUPPORTED_NETWORK) if (!walletAddress) return [] - const accounts = await queryPerpsV3Accounts(this.sdk, walletAddress.toLowerCase()) - return accounts.map((a) => a.id) + const accountCount = await accountProxy.balanceOf(walletAddress) + const calls = + Number(accountCount) > 0 + ? [...Array(Number(accountCount)).keys()].map((index) => { + return accountMulticall.tokenOfOwnerByIndex(walletAddress, index) + }) + : [] + + const accountIds = (await this.sdk.context.multicallProvider.all(calls)) as BigNumber[] + return accountIds.map((id) => id.toNumber()) } public async getAccountOwner(id: BigNumberish): Promise { @@ -543,10 +551,11 @@ export default class PerpsV3Service { ) } - public async createPerpsV3Account(requestedId: BigNumberish) { + public async createAccount(requestedId?: BigNumberish) { const marketProxy = this.sdk.context.contracts.perpsV3MarketProxy if (!marketProxy) throw new Error(UNSUPPORTED_NETWORK) - return this.sdk.transactions.createContractTxn(marketProxy, 'createAccount', [requestedId]) + const id = requestedId ?? Date.now() + return this.sdk.transactions.createContractTxn(marketProxy, 'createAccount', [id]) } public getSkewAdjustedPrice = async (price: Wei, marketAddress: string, marketKey: string) => { From 9cca0cc42bd21aad69d17eb62c1e8ae01ae0e816 Mon Sep 17 00:00:00 2001 From: Adam Clarke Date: Fri, 28 Jul 2023 11:11:56 +0100 Subject: [PATCH 19/43] Fix deposit / withdraw --- .../Trade/DepositWithdrawCrossMargin.tsx | 1 + .../src/state/futures/crossMargin/actions.ts | 13 +++++------ packages/sdk/src/constants/index.ts | 1 + packages/sdk/src/constants/perpsv3.ts | 16 +++++++++---- packages/sdk/src/services/perpsV3.ts | 23 +++++++++++-------- 5 files changed, 33 insertions(+), 21 deletions(-) diff --git a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx index 3c3f3c2929..94ff4eb83b 100644 --- a/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx +++ b/packages/app/src/sections/futures/Trade/DepositWithdrawCrossMargin.tsx @@ -198,6 +198,7 @@ const DepositWithdrawCrossMarginModal: React.FC = ({ onDismiss, defaultTa