@mstable/protocol
Version:
mStable Contracts
1,771 lines (1,628 loc) • 53.3 kB
TypeScript
/* 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 BasketManagerInterface extends ethers.utils.Interface {
functions: {
"addBasset(address,address,bool)": FunctionFragment;
"basket()": FunctionFragment;
"collectInterest()": FunctionFragment;
"decreaseVaultBalance(uint8,address,uint256)": FunctionFragment;
"decreaseVaultBalances(uint8[],address[],uint256[])": FunctionFragment;
"failBasset(address)": FunctionFragment;
"getBasket()": FunctionFragment;
"getBasset(address)": FunctionFragment;
"getBassetIntegrator(address)": FunctionFragment;
"getBassets()": FunctionFragment;
"handlePegLoss(address,bool)": FunctionFragment;
"increaseVaultBalance(uint8,address,uint256)": FunctionFragment;
"increaseVaultBalances(uint8[],address[],uint256[])": FunctionFragment;
"integrations(uint256)": FunctionFragment;
"mAsset()": FunctionFragment;
"migrateBassets(address[],address)": FunctionFragment;
"negateIsolation(address)": FunctionFragment;
"nexus()": FunctionFragment;
"pause()": FunctionFragment;
"paused()": FunctionFragment;
"prepareForgeBasset(address,uint256,bool)": FunctionFragment;
"prepareForgeBassets(address[],uint256[],bool)": FunctionFragment;
"prepareRedeemBassets(address[])": FunctionFragment;
"prepareRedeemMulti()": FunctionFragment;
"prepareSwapBassets(address,address,bool)": FunctionFragment;
"removeBasset(address)": FunctionFragment;
"setBasketWeights(address[],uint256[])": FunctionFragment;
"setTransferFeesFlag(address,bool)": FunctionFragment;
"unpause()": FunctionFragment;
};
encodeFunctionData(
functionFragment: "addBasset",
values: [string, string, boolean]
): string;
encodeFunctionData(functionFragment: "basket", values?: undefined): string;
encodeFunctionData(
functionFragment: "collectInterest",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "decreaseVaultBalance",
values: [BigNumberish, string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "decreaseVaultBalances",
values: [BigNumberish[], string[], BigNumberish[]]
): string;
encodeFunctionData(functionFragment: "failBasset", values: [string]): string;
encodeFunctionData(functionFragment: "getBasket", values?: undefined): string;
encodeFunctionData(functionFragment: "getBasset", values: [string]): string;
encodeFunctionData(
functionFragment: "getBassetIntegrator",
values: [string]
): string;
encodeFunctionData(
functionFragment: "getBassets",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "handlePegLoss",
values: [string, boolean]
): string;
encodeFunctionData(
functionFragment: "increaseVaultBalance",
values: [BigNumberish, string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "increaseVaultBalances",
values: [BigNumberish[], string[], BigNumberish[]]
): string;
encodeFunctionData(
functionFragment: "integrations",
values: [BigNumberish]
): string;
encodeFunctionData(functionFragment: "mAsset", values?: undefined): string;
encodeFunctionData(
functionFragment: "migrateBassets",
values: [string[], string]
): string;
encodeFunctionData(
functionFragment: "negateIsolation",
values: [string]
): string;
encodeFunctionData(functionFragment: "nexus", values?: undefined): string;
encodeFunctionData(functionFragment: "pause", values?: undefined): string;
encodeFunctionData(functionFragment: "paused", values?: undefined): string;
encodeFunctionData(
functionFragment: "prepareForgeBasset",
values: [string, BigNumberish, boolean]
): string;
encodeFunctionData(
functionFragment: "prepareForgeBassets",
values: [string[], BigNumberish[], boolean]
): string;
encodeFunctionData(
functionFragment: "prepareRedeemBassets",
values: [string[]]
): string;
encodeFunctionData(
functionFragment: "prepareRedeemMulti",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "prepareSwapBassets",
values: [string, string, boolean]
): string;
encodeFunctionData(
functionFragment: "removeBasset",
values: [string]
): string;
encodeFunctionData(
functionFragment: "setBasketWeights",
values: [string[], BigNumberish[]]
): string;
encodeFunctionData(
functionFragment: "setTransferFeesFlag",
values: [string, boolean]
): string;
encodeFunctionData(functionFragment: "unpause", values?: undefined): string;
decodeFunctionResult(functionFragment: "addBasset", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "basket", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "collectInterest",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "decreaseVaultBalance",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "decreaseVaultBalances",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "failBasset", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getBasket", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getBasset", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "getBassetIntegrator",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "getBassets", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "handlePegLoss",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "increaseVaultBalance",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "increaseVaultBalances",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "integrations",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "mAsset", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "migrateBassets",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "negateIsolation",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "nexus", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "prepareForgeBasset",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "prepareForgeBassets",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "prepareRedeemBassets",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "prepareRedeemMulti",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "prepareSwapBassets",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "removeBasset",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "setBasketWeights",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "setTransferFeesFlag",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result;
events: {
"BasketStatusChanged()": EventFragment;
"BasketWeightsUpdated(address[],uint256[])": EventFragment;
"BassetAdded(address,address)": EventFragment;
"BassetRemoved(address)": EventFragment;
"BassetStatusChanged(address,uint8)": EventFragment;
"BassetsMigrated(address[],address)": EventFragment;
"Paused(address)": EventFragment;
"TransferFeeEnabled(address,bool)": EventFragment;
"Unpaused(address)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "BasketStatusChanged"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BasketWeightsUpdated"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BassetAdded"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BassetRemoved"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BassetStatusChanged"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BassetsMigrated"): EventFragment;
getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment;
getEvent(nameOrSignatureOrTopic: "TransferFeeEnabled"): EventFragment;
getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment;
}
export class BasketManager 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: BasketManagerInterface;
functions: {
addBasset(
_bAsset: string,
_integration: string,
_isTransferFeeCharged: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
basket(
overrides?: CallOverrides
): Promise<
[number, boolean, boolean, BigNumber] & {
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
>;
collectInterest(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
decreaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_decreaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
decreaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_decreaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
failBasset(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
getBasket(
overrides?: CallOverrides
): Promise<
[
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
number,
boolean,
boolean,
BigNumber
] & {
bassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
] & {
b: [
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
number,
boolean,
boolean,
BigNumber
] & {
bassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
};
}
>;
getBasset(
_bAsset: string,
overrides?: CallOverrides
): Promise<
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
}
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
}
>;
getBassetIntegrator(
_bAsset: string,
overrides?: CallOverrides
): Promise<[string] & { integrator: string }>;
getBassets(
overrides?: CallOverrides
): Promise<
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
BigNumber
] & {
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
len: BigNumber;
}
>;
handlePegLoss(
_bAsset: string,
_belowPeg: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
increaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_increaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
increaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_increaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
integrations(
arg0: BigNumberish,
overrides?: CallOverrides
): Promise<[string]>;
mAsset(overrides?: CallOverrides): Promise<[string]>;
migrateBassets(
_bAssets: string[],
_newIntegration: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
negateIsolation(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
nexus(overrides?: CallOverrides): Promise<[string]>;
pause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
paused(overrides?: CallOverrides): Promise<[boolean]>;
prepareForgeBasset(
_bAsset: string,
arg1: BigNumberish,
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
prepareForgeBassets(
_bAssets: string[],
arg1: BigNumberish[],
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
prepareRedeemBassets(
_bAssets: string[],
overrides?: CallOverrides
): Promise<
[
[
boolean,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
isValid: boolean;
allBassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
bAssets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
] & {
props: [
boolean,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
isValid: boolean;
allBassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
bAssets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
};
}
>;
prepareRedeemMulti(
overrides?: CallOverrides
): Promise<
[
[
BigNumber,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
colRatio: BigNumber;
bAssets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
] & {
props: [
BigNumber,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
colRatio: BigNumber;
bAssets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
};
}
>;
prepareSwapBassets(
_input: string,
_output: string,
_isMint: boolean,
overrides?: CallOverrides
): Promise<
[
boolean,
string,
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
},
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
}
]
>;
removeBasset(
_assetToRemove: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
setBasketWeights(
_bAssets: string[],
_weights: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
setTransferFeesFlag(
_bAsset: string,
_flag: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
unpause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
};
addBasset(
_bAsset: string,
_integration: string,
_isTransferFeeCharged: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
basket(
overrides?: CallOverrides
): Promise<
[number, boolean, boolean, BigNumber] & {
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
>;
collectInterest(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
decreaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_decreaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
decreaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_decreaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
failBasset(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
getBasket(
overrides?: CallOverrides
): Promise<
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
number,
boolean,
boolean,
BigNumber
] & {
bassets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
>;
getBasset(
_bAsset: string,
overrides?: CallOverrides
): Promise<
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
}
>;
getBassetIntegrator(
_bAsset: string,
overrides?: CallOverrides
): Promise<string>;
getBassets(
overrides?: CallOverrides
): Promise<
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
BigNumber
] & {
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
len: BigNumber;
}
>;
handlePegLoss(
_bAsset: string,
_belowPeg: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
increaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_increaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
increaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_increaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
integrations(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
mAsset(overrides?: CallOverrides): Promise<string>;
migrateBassets(
_bAssets: string[],
_newIntegration: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
negateIsolation(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
nexus(overrides?: CallOverrides): Promise<string>;
pause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
paused(overrides?: CallOverrides): Promise<boolean>;
prepareForgeBasset(
_bAsset: string,
arg1: BigNumberish,
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
prepareForgeBassets(
_bAssets: string[],
arg1: BigNumberish[],
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
prepareRedeemBassets(
_bAssets: string[],
overrides?: CallOverrides
): Promise<
[
boolean,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
isValid: boolean;
allBassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
>;
prepareRedeemMulti(
overrides?: CallOverrides
): Promise<
[
BigNumber,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
colRatio: BigNumber;
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
>;
prepareSwapBassets(
_input: string,
_output: string,
_isMint: boolean,
overrides?: CallOverrides
): Promise<
[
boolean,
string,
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
},
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
}
]
>;
removeBasset(
_assetToRemove: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
setBasketWeights(
_bAssets: string[],
_weights: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
setTransferFeesFlag(
_bAsset: string,
_flag: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
unpause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<ContractTransaction>;
callStatic: {
addBasset(
_bAsset: string,
_integration: string,
_isTransferFeeCharged: boolean,
overrides?: CallOverrides
): Promise<number>;
basket(
overrides?: CallOverrides
): Promise<
[number, boolean, boolean, BigNumber] & {
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
>;
collectInterest(
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber[]] & {
interestCollected: BigNumber;
gains: BigNumber[];
}
>;
decreaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_decreaseAmount: BigNumberish,
overrides?: CallOverrides
): Promise<void>;
decreaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_decreaseAmount: BigNumberish[],
overrides?: CallOverrides
): Promise<void>;
failBasset(_bAsset: string, overrides?: CallOverrides): Promise<void>;
getBasket(
overrides?: CallOverrides
): Promise<
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
number,
boolean,
boolean,
BigNumber
] & {
bassets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
maxBassets: number;
undergoingRecol: boolean;
failed: boolean;
collateralisationRatio: BigNumber;
}
>;
getBasset(
_bAsset: string,
overrides?: CallOverrides
): Promise<
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
}
>;
getBassetIntegrator(
_bAsset: string,
overrides?: CallOverrides
): Promise<string>;
getBassets(
overrides?: CallOverrides
): Promise<
[
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
BigNumber
] & {
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
len: BigNumber;
}
>;
handlePegLoss(
_bAsset: string,
_belowPeg: boolean,
overrides?: CallOverrides
): Promise<boolean>;
increaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_increaseAmount: BigNumberish,
overrides?: CallOverrides
): Promise<void>;
increaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_increaseAmount: BigNumberish[],
overrides?: CallOverrides
): Promise<void>;
integrations(
arg0: BigNumberish,
overrides?: CallOverrides
): Promise<string>;
mAsset(overrides?: CallOverrides): Promise<string>;
migrateBassets(
_bAssets: string[],
_newIntegration: string,
overrides?: CallOverrides
): Promise<void>;
negateIsolation(_bAsset: string, overrides?: CallOverrides): Promise<void>;
nexus(overrides?: CallOverrides): Promise<string>;
pause(overrides?: CallOverrides): Promise<void>;
paused(overrides?: CallOverrides): Promise<boolean>;
prepareForgeBasset(
_bAsset: string,
arg1: BigNumberish,
arg2: boolean,
overrides?: CallOverrides
): Promise<
[
boolean,
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
}
] & {
isValid: boolean;
bInfo: [
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
};
}
>;
prepareForgeBassets(
_bAssets: string[],
arg1: BigNumberish[],
arg2: boolean,
overrides?: CallOverrides
): Promise<
[
boolean,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
isValid: boolean;
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
>;
prepareRedeemBassets(
_bAssets: string[],
overrides?: CallOverrides
): Promise<
[
boolean,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
isValid: boolean;
allBassets: ([
string,
number,
boolean,
BigNumber,
BigNumber,
BigNumber
] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
>;
prepareRedeemMulti(
overrides?: CallOverrides
): Promise<
[
BigNumber,
([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[],
string[],
number[]
] & {
colRatio: BigNumber;
bAssets: ([string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
})[];
integrators: string[];
indexes: number[];
}
>;
prepareSwapBassets(
_input: string,
_output: string,
_isMint: boolean,
overrides?: CallOverrides
): Promise<
[
boolean,
string,
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
},
[
[string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
},
string,
number
] & {
bAsset: [string, number, boolean, BigNumber, BigNumber, BigNumber] & {
addr: string;
status: number;
isTransferFeeCharged: boolean;
ratio: BigNumber;
maxWeight: BigNumber;
vaultBalance: BigNumber;
};
integrator: string;
index: number;
}
]
>;
removeBasset(
_assetToRemove: string,
overrides?: CallOverrides
): Promise<void>;
setBasketWeights(
_bAssets: string[],
_weights: BigNumberish[],
overrides?: CallOverrides
): Promise<void>;
setTransferFeesFlag(
_bAsset: string,
_flag: boolean,
overrides?: CallOverrides
): Promise<void>;
unpause(overrides?: CallOverrides): Promise<void>;
};
filters: {
BasketStatusChanged(): TypedEventFilter<[], {}>;
BasketWeightsUpdated(
bAssets?: null,
maxWeights?: null
): TypedEventFilter<
[string[], BigNumber[]],
{ bAssets: string[]; maxWeights: BigNumber[] }
>;
BassetAdded(
bAsset?: string | null,
integrator?: null
): TypedEventFilter<
[string, string],
{ bAsset: string; integrator: string }
>;
BassetRemoved(
bAsset?: string | null
): TypedEventFilter<[string], { bAsset: string }>;
BassetStatusChanged(
bAsset?: string | null,
status?: null
): TypedEventFilter<[string, number], { bAsset: string; status: number }>;
BassetsMigrated(
bAssets?: null,
newIntegrator?: null
): TypedEventFilter<
[string[], string],
{ bAssets: string[]; newIntegrator: string }
>;
Paused(account?: null): TypedEventFilter<[string], { account: string }>;
TransferFeeEnabled(
bAsset?: string | null,
enabled?: null
): TypedEventFilter<
[string, boolean],
{ bAsset: string; enabled: boolean }
>;
Unpaused(account?: null): TypedEventFilter<[string], { account: string }>;
};
estimateGas: {
addBasset(
_bAsset: string,
_integration: string,
_isTransferFeeCharged: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
basket(overrides?: CallOverrides): Promise<BigNumber>;
collectInterest(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
decreaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_decreaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
decreaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_decreaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
failBasset(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
getBasket(overrides?: CallOverrides): Promise<BigNumber>;
getBasset(_bAsset: string, overrides?: CallOverrides): Promise<BigNumber>;
getBassetIntegrator(
_bAsset: string,
overrides?: CallOverrides
): Promise<BigNumber>;
getBassets(overrides?: CallOverrides): Promise<BigNumber>;
handlePegLoss(
_bAsset: string,
_belowPeg: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
increaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_increaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
increaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_increaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
integrations(
arg0: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
mAsset(overrides?: CallOverrides): Promise<BigNumber>;
migrateBassets(
_bAssets: string[],
_newIntegration: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
negateIsolation(
_bAsset: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
nexus(overrides?: CallOverrides): Promise<BigNumber>;
pause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
paused(overrides?: CallOverrides): Promise<BigNumber>;
prepareForgeBasset(
_bAsset: string,
arg1: BigNumberish,
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
prepareForgeBassets(
_bAssets: string[],
arg1: BigNumberish[],
arg2: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
prepareRedeemBassets(
_bAssets: string[],
overrides?: CallOverrides
): Promise<BigNumber>;
prepareRedeemMulti(overrides?: CallOverrides): Promise<BigNumber>;
prepareSwapBassets(
_input: string,
_output: string,
_isMint: boolean,
overrides?: CallOverrides
): Promise<BigNumber>;
removeBasset(
_assetToRemove: string,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
setBasketWeights(
_bAssets: string[],
_weights: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
setTransferFeesFlag(
_bAsset: string,
_flag: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
unpause(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<BigNumber>;
};
populateTransaction: {
addBasset(
_bAsset: string,
_integration: string,
_isTransferFeeCharged: boolean,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<PopulatedTransaction>;
basket(overrides?: CallOverrides): Promise<PopulatedTransaction>;
collectInterest(
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<PopulatedTransaction>;
decreaseVaultBalance(
_bAssetIndex: BigNumberish,
arg1: string,
_decreaseAmount: BigNumberish,
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<PopulatedTransaction>;
decreaseVaultBalances(
_bAssetIndices: BigNumberish[],
arg1: string[],
_decreaseAmount: BigNumberish[],
overrides?: Overrides & { from?: string | Promise<string> }
): Promise<PopulatedTransaction>;