UNPKG

@mstable/protocol

Version:
1,724 lines (1,523 loc) 55.3 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, CallOverrides, } from "ethers"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; import { TypedEventFilter, TypedEvent, TypedListener } from "./commons"; interface ExposedFeederPoolInterface extends ethers.utils.Interface { functions: { "allowance(address,address)": FunctionFragment; "approve(address,uint256)": FunctionFragment; "balanceOf(address)": FunctionFragment; "collectPendingFees()": FunctionFragment; "collectPlatformInterest()": FunctionFragment; "data()": FunctionFragment; "decimals()": FunctionFragment; "decreaseAllowance(address,uint256)": FunctionFragment; "getBasset(address)": FunctionFragment; "getBassets()": FunctionFragment; "getConfig()": FunctionFragment; "getMintMultiOutput(address[],uint256[])": FunctionFragment; "getMintOutput(address,uint256)": FunctionFragment; "getPrice()": FunctionFragment; "getRedeemExactBassetsOutput(address[],uint256[])": FunctionFragment; "getRedeemOutput(address,uint256)": FunctionFragment; "getSwapOutput(address,address,uint256)": FunctionFragment; "increaseAllowance(address,uint256)": FunctionFragment; "initialize(string,string,tuple,tuple,address[],tuple)": FunctionFragment; "mAsset()": FunctionFragment; "migrateBassets(address[],address)": FunctionFragment; "mint(address,uint256,uint256,address)": FunctionFragment; "mintMulti(address[],uint256[],uint256,address)": FunctionFragment; "name()": FunctionFragment; "nexus()": FunctionFragment; "pause()": FunctionFragment; "paused()": FunctionFragment; "redeem(address,uint256,uint256,address)": FunctionFragment; "redeemExactBassets(address[],uint256[],uint256,address)": FunctionFragment; "redeemProportionately(uint256,uint256[],address)": FunctionFragment; "setCacheSize(uint256)": FunctionFragment; "setFees(uint256,uint256,uint256)": FunctionFragment; "setWeightLimits(uint128,uint128)": FunctionFragment; "startRampA(uint256,uint256)": FunctionFragment; "stopRampA()": FunctionFragment; "swap(address,address,uint256,uint256,address)": FunctionFragment; "symbol()": FunctionFragment; "totalSupply()": FunctionFragment; "transfer(address,uint256)": FunctionFragment; "transferFrom(address,address,uint256)": FunctionFragment; "unpause()": FunctionFragment; }; encodeFunctionData( functionFragment: "allowance", values: [string, string] ): string; encodeFunctionData( functionFragment: "approve", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "collectPendingFees", values?: undefined ): string; encodeFunctionData( functionFragment: "collectPlatformInterest", values?: undefined ): string; encodeFunctionData(functionFragment: "data", values?: undefined): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData( functionFragment: "decreaseAllowance", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "getBasset", values: [string]): string; encodeFunctionData( functionFragment: "getBassets", values?: undefined ): string; encodeFunctionData(functionFragment: "getConfig", values?: undefined): string; encodeFunctionData( functionFragment: "getMintMultiOutput", values: [string[], BigNumberish[]] ): string; encodeFunctionData( functionFragment: "getMintOutput", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "getPrice", values?: undefined): string; encodeFunctionData( functionFragment: "getRedeemExactBassetsOutput", values: [string[], BigNumberish[]] ): string; encodeFunctionData( functionFragment: "getRedeemOutput", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getSwapOutput", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "increaseAllowance", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "initialize", values: [ string, string, { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, string[], { a: BigNumberish; limits: { min: BigNumberish; max: BigNumberish } } ] ): string; encodeFunctionData(functionFragment: "mAsset", values?: undefined): string; encodeFunctionData( functionFragment: "migrateBassets", values: [string[], string] ): string; encodeFunctionData( functionFragment: "mint", values: [string, BigNumberish, BigNumberish, string] ): string; encodeFunctionData( functionFragment: "mintMulti", values: [string[], BigNumberish[], BigNumberish, string] ): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "nexus", values?: undefined): string; encodeFunctionData(functionFragment: "pause", values?: undefined): string; encodeFunctionData(functionFragment: "paused", values?: undefined): string; encodeFunctionData( functionFragment: "redeem", values: [string, BigNumberish, BigNumberish, string] ): string; encodeFunctionData( functionFragment: "redeemExactBassets", values: [string[], BigNumberish[], BigNumberish, string] ): string; encodeFunctionData( functionFragment: "redeemProportionately", values: [BigNumberish, BigNumberish[], string] ): string; encodeFunctionData( functionFragment: "setCacheSize", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setFees", values: [BigNumberish, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "setWeightLimits", values: [BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "startRampA", values: [BigNumberish, BigNumberish] ): string; encodeFunctionData(functionFragment: "stopRampA", values?: undefined): string; encodeFunctionData( functionFragment: "swap", values: [string, string, BigNumberish, BigNumberish, string] ): string; encodeFunctionData(functionFragment: "symbol", 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: "unpause", values?: undefined): string; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult( functionFragment: "collectPendingFees", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "collectPlatformInterest", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "data", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult( functionFragment: "decreaseAllowance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "getBasset", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBassets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getConfig", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getMintMultiOutput", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getMintOutput", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "getPrice", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getRedeemExactBassetsOutput", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getRedeemOutput", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getSwapOutput", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "increaseAllowance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mAsset", data: BytesLike): Result; decodeFunctionResult( functionFragment: "migrateBassets", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintMulti", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nexus", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; decodeFunctionResult( functionFragment: "redeemExactBassets", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "redeemProportionately", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setCacheSize", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "setFees", data: BytesLike): Result; decodeFunctionResult( functionFragment: "setWeightLimits", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "startRampA", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stopRampA", data: BytesLike): Result; decodeFunctionResult(functionFragment: "swap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult( functionFragment: "totalSupply", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult( functionFragment: "transferFrom", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; events: { "Approval(address,address,uint256)": EventFragment; "BassetsMigrated(address[],address)": EventFragment; "CacheSizeChanged(uint256)": EventFragment; "FeesChanged(uint256,uint256,uint256)": EventFragment; "Minted(address,address,uint256,address,uint256)": EventFragment; "MintedMulti(address,address,uint256,address[],uint256[])": EventFragment; "Paused(address)": EventFragment; "Redeemed(address,address,uint256,address,uint256,uint256)": EventFragment; "RedeemedMulti(address,address,uint256,address[],uint256[],uint256)": EventFragment; "StartRampA(uint256,uint256,uint256,uint256)": EventFragment; "StopRampA(uint256,uint256)": EventFragment; "Swapped(address,address,address,uint256,uint256,address)": EventFragment; "Transfer(address,address,uint256)": EventFragment; "Unpaused(address)": EventFragment; "WeightLimitsChanged(uint128,uint128)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; getEvent(nameOrSignatureOrTopic: "BassetsMigrated"): EventFragment; getEvent(nameOrSignatureOrTopic: "CacheSizeChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "FeesChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "Minted"): EventFragment; getEvent(nameOrSignatureOrTopic: "MintedMulti"): EventFragment; getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment; getEvent(nameOrSignatureOrTopic: "Redeemed"): EventFragment; getEvent(nameOrSignatureOrTopic: "RedeemedMulti"): EventFragment; getEvent(nameOrSignatureOrTopic: "StartRampA"): EventFragment; getEvent(nameOrSignatureOrTopic: "StopRampA"): EventFragment; getEvent(nameOrSignatureOrTopic: "Swapped"): EventFragment; getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment; getEvent(nameOrSignatureOrTopic: "WeightLimitsChanged"): EventFragment; } export class ExposedFeederPool extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; listeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter?: TypedEventFilter<EventArgsArray, EventArgsObject> ): Array<TypedListener<EventArgsArray, EventArgsObject>>; off<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; on<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; once<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeListener<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeAllListeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject> ): this; listeners(eventName?: string): Array<Listener>; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter<EventArgsArray extends Array<any>, EventArgsObject>( event: TypedEventFilter<EventArgsArray, EventArgsObject>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEvent<EventArgsArray & EventArgsObject>>>; interface: ExposedFeederPoolInterface; functions: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<[BigNumber]>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; collectPendingFees( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; collectPlatformInterest( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; data( overrides?: CallOverrides ): Promise< [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { swapFee: BigNumber; redemptionFee: BigNumber; govFee: BigNumber; pendingFees: BigNumber; cacheSize: BigNumber; ampData: [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }; weightLimits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber; }; } >; decimals(overrides?: CallOverrides): Promise<[number]>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getBasset( _bAsset: string, overrides?: CallOverrides ): Promise< [ [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }, [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber } ] & { personal: [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }; vaultData: [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; }; } >; getBassets( overrides?: CallOverrides ): Promise< [ ([string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; })[], ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; })[] ] & { vaultData: ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; })[]; } >; getConfig( overrides?: CallOverrides ): Promise< [ [ BigNumber, BigNumber, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { supply: BigNumber; a: BigNumber; limits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber }; } ] & { config: [ BigNumber, BigNumber, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { supply: BigNumber; a: BigNumber; limits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber }; }; } >; getMintMultiOutput( _inputs: string[], _inputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<[BigNumber] & { mintOutput: BigNumber }>; getMintOutput( _input: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { mintOutput: BigNumber }>; getPrice( overrides?: CallOverrides ): Promise<[BigNumber, BigNumber] & { price: BigNumber; k: BigNumber }>; getRedeemExactBassetsOutput( _outputs: string[], _outputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<[BigNumber] & { fpTokenQuantity: BigNumber }>; getRedeemOutput( _output: string, _fpTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { bAssetOutput: BigNumber }>; getSwapOutput( _input: string, _output: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber] & { swapOutput: BigNumber }>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; initialize( _nameArg: string, _symbolArg: string, _mAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _fAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _mpAssets: string[], _config: { a: BigNumberish; limits: { min: BigNumberish; max: BigNumberish }; }, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mAsset(overrides?: CallOverrides): Promise<[string]>; migrateBassets( _bAssets: string[], _newIntegration: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mint( _input: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mintMulti( _inputs: string[], _inputQuantities: BigNumberish[], _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<[string]>; nexus(overrides?: CallOverrides): Promise<[string]>; pause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; paused(overrides?: CallOverrides): Promise<[boolean]>; redeem( _output: string, _fpTokenQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemExactBassets( _outputs: string[], _outputQuantities: BigNumberish[], _maxInputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemProportionately( _inputQuantity: BigNumberish, _minOutputQuantities: BigNumberish[], _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setCacheSize( _cacheSize: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setFees( _swapFee: BigNumberish, _redemptionFee: BigNumberish, _govFee: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setWeightLimits( _min: BigNumberish, _max: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; startRampA( _targetA: BigNumberish, _rampEndTime: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stopRampA( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; swap( _input: string, _output: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; symbol(overrides?: CallOverrides): Promise<[string]>; totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; unpause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; }; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; collectPendingFees( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; collectPlatformInterest( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; data( overrides?: CallOverrides ): Promise< [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { swapFee: BigNumber; redemptionFee: BigNumber; govFee: BigNumber; pendingFees: BigNumber; cacheSize: BigNumber; ampData: [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }; weightLimits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber }; } >; decimals(overrides?: CallOverrides): Promise<number>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getBasset( _bAsset: string, overrides?: CallOverrides ): Promise< [ [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }, [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber } ] & { personal: [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }; vaultData: [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; }; } >; getBassets( overrides?: CallOverrides ): Promise< [ ([string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; })[], ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber })[] ] & { vaultData: ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; })[]; } >; getConfig( overrides?: CallOverrides ): Promise< [ BigNumber, BigNumber, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { supply: BigNumber; a: BigNumber; limits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber }; } >; getMintMultiOutput( _inputs: string[], _inputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getMintOutput( _input: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPrice( overrides?: CallOverrides ): Promise<[BigNumber, BigNumber] & { price: BigNumber; k: BigNumber }>; getRedeemExactBassetsOutput( _outputs: string[], _outputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getRedeemOutput( _output: string, _fpTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getSwapOutput( _input: string, _output: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; initialize( _nameArg: string, _symbolArg: string, _mAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _fAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _mpAssets: string[], _config: { a: BigNumberish; limits: { min: BigNumberish; max: BigNumberish }; }, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mAsset(overrides?: CallOverrides): Promise<string>; migrateBassets( _bAssets: string[], _newIntegration: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mint( _input: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; mintMulti( _inputs: string[], _inputQuantities: BigNumberish[], _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<string>; nexus(overrides?: CallOverrides): Promise<string>; pause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; paused(overrides?: CallOverrides): Promise<boolean>; redeem( _output: string, _fpTokenQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemExactBassets( _outputs: string[], _outputQuantities: BigNumberish[], _maxInputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeemProportionately( _inputQuantity: BigNumberish, _minOutputQuantities: BigNumberish[], _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setCacheSize( _cacheSize: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setFees( _swapFee: BigNumberish, _redemptionFee: BigNumberish, _govFee: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; setWeightLimits( _min: BigNumberish, _max: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; startRampA( _targetA: BigNumberish, _rampEndTime: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stopRampA( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; swap( _input: string, _output: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; symbol(overrides?: CallOverrides): Promise<string>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; unpause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; callStatic: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; collectPendingFees(overrides?: CallOverrides): Promise<void>; collectPlatformInterest( overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { mintAmount: BigNumber; newSupply: BigNumber } >; data( overrides?: CallOverrides ): Promise< [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { swapFee: BigNumber; redemptionFee: BigNumber; govFee: BigNumber; pendingFees: BigNumber; cacheSize: BigNumber; ampData: [BigNumber, BigNumber, BigNumber, BigNumber] & { initialA: BigNumber; targetA: BigNumber; rampStartTime: BigNumber; rampEndTime: BigNumber; }; weightLimits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber; }; } >; decimals(overrides?: CallOverrides): Promise<number>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; getBasset( _bAsset: string, overrides?: CallOverrides ): Promise< [ [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }, [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber } ] & { personal: [string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; }; vaultData: [BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; }; } >; getBassets( overrides?: CallOverrides ): Promise< [ ([string, string, boolean, number] & { addr: string; integrator: string; hasTxFee: boolean; status: number; })[], ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; })[] ] & { vaultData: ([BigNumber, BigNumber] & { ratio: BigNumber; vaultBalance: BigNumber; })[]; } >; getConfig( overrides?: CallOverrides ): Promise< [ BigNumber, BigNumber, [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber } ] & { supply: BigNumber; a: BigNumber; limits: [BigNumber, BigNumber] & { min: BigNumber; max: BigNumber }; } >; getMintMultiOutput( _inputs: string[], _inputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getMintOutput( _input: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPrice( overrides?: CallOverrides ): Promise<[BigNumber, BigNumber] & { price: BigNumber; k: BigNumber }>; getRedeemExactBassetsOutput( _outputs: string[], _outputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getRedeemOutput( _output: string, _fpTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getSwapOutput( _input: string, _output: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; initialize( _nameArg: string, _symbolArg: string, _mAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _fAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _mpAssets: string[], _config: { a: BigNumberish; limits: { min: BigNumberish; max: BigNumberish }; }, overrides?: CallOverrides ): Promise<void>; mAsset(overrides?: CallOverrides): Promise<string>; migrateBassets( _bAssets: string[], _newIntegration: string, overrides?: CallOverrides ): Promise<void>; mint( _input: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: CallOverrides ): Promise<BigNumber>; mintMulti( _inputs: string[], _inputQuantities: BigNumberish[], _minOutputQuantity: BigNumberish, _recipient: string, overrides?: CallOverrides ): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<string>; nexus(overrides?: CallOverrides): Promise<string>; pause(overrides?: CallOverrides): Promise<void>; paused(overrides?: CallOverrides): Promise<boolean>; redeem( _output: string, _fpTokenQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: CallOverrides ): Promise<BigNumber>; redeemExactBassets( _outputs: string[], _outputQuantities: BigNumberish[], _maxInputQuantity: BigNumberish, _recipient: string, overrides?: CallOverrides ): Promise<BigNumber>; redeemProportionately( _inputQuantity: BigNumberish, _minOutputQuantities: BigNumberish[], _recipient: string, overrides?: CallOverrides ): Promise<BigNumber[]>; setCacheSize( _cacheSize: BigNumberish, overrides?: CallOverrides ): Promise<void>; setFees( _swapFee: BigNumberish, _redemptionFee: BigNumberish, _govFee: BigNumberish, overrides?: CallOverrides ): Promise<void>; setWeightLimits( _min: BigNumberish, _max: BigNumberish, overrides?: CallOverrides ): Promise<void>; startRampA( _targetA: BigNumberish, _rampEndTime: BigNumberish, overrides?: CallOverrides ): Promise<void>; stopRampA(overrides?: CallOverrides): Promise<void>; swap( _input: string, _output: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: CallOverrides ): Promise<BigNumber>; symbol(overrides?: CallOverrides): Promise<string>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; unpause(overrides?: CallOverrides): Promise<void>; }; filters: { Approval( owner?: string | null, spender?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { owner: string; spender: string; value: BigNumber } >; BassetsMigrated( bAssets?: null, newIntegrator?: null ): TypedEventFilter< [string[], string], { bAssets: string[]; newIntegrator: string } >; CacheSizeChanged( cacheSize?: null ): TypedEventFilter<[BigNumber], { cacheSize: BigNumber }>; FeesChanged( swapFee?: null, redemptionFee?: null, govFee?: null ): TypedEventFilter< [BigNumber, BigNumber, BigNumber], { swapFee: BigNumber; redemptionFee: BigNumber; govFee: BigNumber } >; Minted( minter?: string | null, recipient?: null, output?: null, input?: null, inputQuantity?: null ): TypedEventFilter< [string, string, BigNumber, string, BigNumber], { minter: string; recipient: string; output: BigNumber; input: string; inputQuantity: BigNumber; } >; MintedMulti( minter?: string | null, recipient?: null, output?: null, inputs?: null, inputQuantities?: null ): TypedEventFilter< [string, string, BigNumber, string[], BigNumber[]], { minter: string; recipient: string; output: BigNumber; inputs: string[]; inputQuantities: BigNumber[]; } >; Paused(account?: null): TypedEventFilter<[string], { account: string }>; Redeemed( redeemer?: string | null, recipient?: null, mAssetQuantity?: null, output?: null, outputQuantity?: null, scaledFee?: null ): TypedEventFilter< [string, string, BigNumber, string, BigNumber, BigNumber], { redeemer: string; recipient: string; mAssetQuantity: BigNumber; output: string; outputQuantity: BigNumber; scaledFee: BigNumber; } >; RedeemedMulti( redeemer?: string | null, recipient?: null, mAssetQuantity?: null, outputs?: null, outputQuantity?: null, scaledFee?: null ): TypedEventFilter< [string, string, BigNumber, string[], BigNumber[], BigNumber], { redeemer: string; recipient: string; mAssetQuantity: BigNumber; outputs: string[]; outputQuantity: BigNumber[]; scaledFee: BigNumber; } >; StartRampA( currentA?: null, targetA?: null, startTime?: null, rampEndTime?: null ): TypedEventFilter< [BigNumber, BigNumber, BigNumber, BigNumber], { currentA: BigNumber; targetA: BigNumber; startTime: BigNumber; rampEndTime: BigNumber; } >; StopRampA( currentA?: null, time?: null ): TypedEventFilter< [BigNumber, BigNumber], { currentA: BigNumber; time: BigNumber } >; Swapped( swapper?: string | null, input?: null, output?: null, outputAmount?: null, fee?: null, recipient?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber, string], { swapper: string; input: string; output: string; outputAmount: BigNumber; fee: BigNumber; recipient: string; } >; Transfer( from?: string | null, to?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; to: string; value: BigNumber } >; Unpaused(account?: null): TypedEventFilter<[string], { account: string }>; WeightLimitsChanged( min?: null, max?: null ): TypedEventFilter< [BigNumber, BigNumber], { min: BigNumber; max: BigNumber } >; }; estimateGas: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; collectPendingFees( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; collectPlatformInterest( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; data(overrides?: CallOverrides): Promise<BigNumber>; decimals(overrides?: CallOverrides): Promise<BigNumber>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; getBasset(_bAsset: string, overrides?: CallOverrides): Promise<BigNumber>; getBassets(overrides?: CallOverrides): Promise<BigNumber>; getConfig(overrides?: CallOverrides): Promise<BigNumber>; getMintMultiOutput( _inputs: string[], _inputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getMintOutput( _input: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPrice(overrides?: CallOverrides): Promise<BigNumber>; getRedeemExactBassetsOutput( _outputs: string[], _outputQuantities: BigNumberish[], overrides?: CallOverrides ): Promise<BigNumber>; getRedeemOutput( _output: string, _fpTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getSwapOutput( _input: string, _output: string, _inputQuantity: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; initialize( _nameArg: string, _symbolArg: string, _mAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _fAsset: { addr: string; integrator: string; hasTxFee: boolean; status: BigNumberish; }, _mpAssets: string[], _config: { a: BigNumberish; limits: { min: BigNumberish; max: BigNumberish }; }, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; mAsset(overrides?: CallOverrides): Promise<BigNumber>; migrateBassets( _bAssets: string[], _newIntegration: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; mint( _input: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; mintMulti( _inputs: string[], _inputQuantities: BigNumberish[], _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<BigNumber>; nexus(overrides?: CallOverrides): Promise<BigNumber>; pause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; paused(overrides?: CallOverrides): Promise<BigNumber>; redeem( _output: string, _fpTokenQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeemExactBassets( _outputs: string[], _outputQuantities: BigNumberish[], _maxInputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeemProportionately( _inputQuantity: BigNumberish, _minOutputQuantities: BigNumberish[], _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; setCacheSize( _cacheSize: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; setFees( _swapFee: BigNumberish, _redemptionFee: BigNumberish, _govFee: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; setWeightLimits( _min: BigNumberish, _max: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; startRampA( _targetA: BigNumberish, _rampEndTime: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; stopRampA( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; swap( _input: string, _output: string, _inputQuantity: BigNumberish, _minOutputQuantity: BigNumberish, _recipient: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; symbol(overrides?: CallOverrides): Promise<BigNumber>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; unpause( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; }; populateTransaction: { allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; balanceOf( account: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; collectPendingFees( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; collectPlatformInterest( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; data(overrides?: CallOverrides): Promise<PopulatedTransaction>; decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; getBasset( _bAsset: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; getBassets(overrides?: CallOverrides): Promise<PopulatedTransaction>; getConfig(