UNPKG

@augmentedfinance/protocol-v1

Version:

Augmented Protocol smart contracts

1,899 lines (1,636 loc) 88.6 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, } from "ethers"; import { Contract, ContractTransaction, Overrides, CallOverrides, } from "@ethersproject/contracts"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; interface SubBalanceBaseInterface extends ethers.utils.Interface { functions: { "POOL()": FunctionFragment; "UNDERLYING_ASSET_ADDRESS()": FunctionFragment; "addRewardProvider(address,address)": FunctionFragment; "addStakeOperator(address)": FunctionFragment; "addSubBalanceOperator(address)": FunctionFragment; "allowance(address,address)": FunctionFragment; "approve(address,uint256)": FunctionFragment; "attachedToRewardController()": FunctionFragment; "balanceOf(address)": FunctionFragment; "burn(address,address,uint256,uint256)": FunctionFragment; "calcRewardFor(address,uint32)": FunctionFragment; "claimRewardFor(address)": FunctionFragment; "claimRewardWithLimitFor(address,uint256,uint256,uint16)": FunctionFragment; "collateralBalanceOf(address)": FunctionFragment; "decimals()": FunctionFragment; "detachedFromRewardController()": FunctionFragment; "getBaselinePercentage()": FunctionFragment; "getIncentivesController()": FunctionFragment; "getOwner()": FunctionFragment; "getPoolName()": FunctionFragment; "getRate()": FunctionFragment; "getRewardController()": FunctionFragment; "getScaleIndex()": FunctionFragment; "getScaledUserBalanceAndSupply(address)": FunctionFragment; "initialize(tuple,string,string,bytes)": FunctionFragment; "initializeRewardPool(tuple)": FunctionFragment; "initializedRewardPoolWith()": FunctionFragment; "isPaused()": FunctionFragment; "lockSubBalance(address,uint256)": FunctionFragment; "mint(address,uint256,uint256,bool)": FunctionFragment; "mintToTreasury(uint256,uint256)": FunctionFragment; "name()": FunctionFragment; "provideSubBalance(address,address,uint256)": FunctionFragment; "removeRewardProvider(address)": FunctionFragment; "removeSubBalanceOperator(address)": FunctionFragment; "replaceSubBalance(address,address,uint256,address,uint256)": FunctionFragment; "returnSubBalance(address,address,uint256,bool)": FunctionFragment; "rewardedBalanceOf(address)": FunctionFragment; "scaledBalanceOf(address)": FunctionFragment; "scaledTotalSupply()": FunctionFragment; "setBaselinePercentage(uint16)": FunctionFragment; "setIncentivesController(address)": FunctionFragment; "setPaused(bool)": FunctionFragment; "symbol()": FunctionFragment; "totalSupply()": FunctionFragment; "transfer(address,uint256)": FunctionFragment; "transferFrom(address,address,uint256)": FunctionFragment; "transferLockedBalance(address,address,uint256)": FunctionFragment; "transferOnLiquidation(address,address,uint256,uint256,bool)": FunctionFragment; "transferUnderlyingTo(address,uint256)": FunctionFragment; "unlockSubBalance(address,uint256,address)": FunctionFragment; "updateBaseline(uint256)": FunctionFragment; "updatePool()": FunctionFragment; "updateTreasury()": FunctionFragment; }; encodeFunctionData(functionFragment: "POOL", values?: undefined): string; encodeFunctionData( functionFragment: "UNDERLYING_ASSET_ADDRESS", values?: undefined ): string; encodeFunctionData( functionFragment: "addRewardProvider", values: [string, string] ): string; encodeFunctionData( functionFragment: "addStakeOperator", values: [string] ): string; encodeFunctionData( functionFragment: "addSubBalanceOperator", values: [string] ): string; encodeFunctionData( functionFragment: "allowance", values: [string, string] ): string; encodeFunctionData( functionFragment: "approve", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "attachedToRewardController", values?: undefined ): string; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "burn", values: [string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "calcRewardFor", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "claimRewardFor", values: [string] ): string; encodeFunctionData( functionFragment: "claimRewardWithLimitFor", values: [string, BigNumberish, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "collateralBalanceOf", values: [string] ): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData( functionFragment: "detachedFromRewardController", values?: undefined ): string; encodeFunctionData( functionFragment: "getBaselinePercentage", values?: undefined ): string; encodeFunctionData( functionFragment: "getIncentivesController", values?: undefined ): string; encodeFunctionData(functionFragment: "getOwner", values?: undefined): string; encodeFunctionData( functionFragment: "getPoolName", values?: undefined ): string; encodeFunctionData(functionFragment: "getRate", values?: undefined): string; encodeFunctionData( functionFragment: "getRewardController", values?: undefined ): string; encodeFunctionData( functionFragment: "getScaleIndex", values?: undefined ): string; encodeFunctionData( functionFragment: "getScaledUserBalanceAndSupply", values: [string] ): string; encodeFunctionData( functionFragment: "initialize", values: [ { pool: string; treasury: string; underlyingAsset: string; underlyingDecimals: BigNumberish; }, string, string, BytesLike ] ): string; encodeFunctionData( functionFragment: "initializeRewardPool", values: [ { controller: string; poolName: string; baselinePercentage: BigNumberish } ] ): string; encodeFunctionData( functionFragment: "initializedRewardPoolWith", values?: undefined ): string; encodeFunctionData(functionFragment: "isPaused", values?: undefined): string; encodeFunctionData( functionFragment: "lockSubBalance", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "mint", values: [string, BigNumberish, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "mintToTreasury", values: [BigNumberish, BigNumberish] ): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData( functionFragment: "provideSubBalance", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "removeRewardProvider", values: [string] ): string; encodeFunctionData( functionFragment: "removeSubBalanceOperator", values: [string] ): string; encodeFunctionData( functionFragment: "replaceSubBalance", values: [string, string, BigNumberish, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "returnSubBalance", values: [string, string, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "rewardedBalanceOf", values: [string] ): string; encodeFunctionData( functionFragment: "scaledBalanceOf", values: [string] ): string; encodeFunctionData( functionFragment: "scaledTotalSupply", values?: undefined ): string; encodeFunctionData( functionFragment: "setBaselinePercentage", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setIncentivesController", values: [string] ): string; encodeFunctionData(functionFragment: "setPaused", values: [boolean]): 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: "transferLockedBalance", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "transferOnLiquidation", values: [string, string, BigNumberish, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "transferUnderlyingTo", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "unlockSubBalance", values: [string, BigNumberish, string] ): string; encodeFunctionData( functionFragment: "updateBaseline", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "updatePool", values?: undefined ): string; encodeFunctionData( functionFragment: "updateTreasury", values?: undefined ): string; decodeFunctionResult(functionFragment: "POOL", data: BytesLike): Result; decodeFunctionResult( functionFragment: "UNDERLYING_ASSET_ADDRESS", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "addRewardProvider", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "addStakeOperator", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "addSubBalanceOperator", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult( functionFragment: "attachedToRewardController", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; decodeFunctionResult( functionFragment: "calcRewardFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimRewardFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimRewardWithLimitFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "collateralBalanceOf", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult( functionFragment: "detachedFromRewardController", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getBaselinePercentage", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getIncentivesController", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "getOwner", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getPoolName", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "getRate", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getRewardController", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getScaleIndex", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getScaledUserBalanceAndSupply", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "initializeRewardPool", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "initializedRewardPoolWith", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "isPaused", data: BytesLike): Result; decodeFunctionResult( functionFragment: "lockSubBalance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult( functionFragment: "mintToTreasury", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult( functionFragment: "provideSubBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "removeRewardProvider", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "removeSubBalanceOperator", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "replaceSubBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "returnSubBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "rewardedBalanceOf", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "scaledBalanceOf", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "scaledTotalSupply", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setBaselinePercentage", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setIncentivesController", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "setPaused", 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: "transferLockedBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "transferOnLiquidation", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "transferUnderlyingTo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "unlockSubBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateBaseline", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "updatePool", data: BytesLike): Result; decodeFunctionResult( functionFragment: "updateTreasury", data: BytesLike ): Result; events: { "BalanceTransfer(address,address,uint256,uint256)": EventFragment; "BaselinePercentageUpdated(uint16)": EventFragment; "Burn(address,address,uint256,uint256)": EventFragment; "EmergencyPaused(address,bool)": EventFragment; "Initialized(address,address,address,string,string,uint8,bytes)": EventFragment; "Mint(address,uint256,uint256)": EventFragment; "OverdraftApplied(address,uint256,uint256)": EventFragment; "OverdraftCovered(address,address,uint256,uint256)": EventFragment; "ProviderAdded(address,address)": EventFragment; "ProviderRemoved(address)": EventFragment; "RateUpdated(uint256)": EventFragment; "SubBalanceLocked(address,uint256,uint256)": EventFragment; "SubBalanceProvided(address,address,uint256,uint256)": EventFragment; "SubBalanceReturned(address,address,uint256,uint256)": EventFragment; "SubBalanceUnlocked(address,uint256,uint256)": EventFragment; "Transfer(address,address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "BalanceTransfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "BaselinePercentageUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "Burn"): EventFragment; getEvent(nameOrSignatureOrTopic: "EmergencyPaused"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "Mint"): EventFragment; getEvent(nameOrSignatureOrTopic: "OverdraftApplied"): EventFragment; getEvent(nameOrSignatureOrTopic: "OverdraftCovered"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProviderAdded"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProviderRemoved"): EventFragment; getEvent(nameOrSignatureOrTopic: "RateUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "SubBalanceLocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "SubBalanceProvided"): EventFragment; getEvent(nameOrSignatureOrTopic: "SubBalanceReturned"): EventFragment; getEvent(nameOrSignatureOrTopic: "SubBalanceUnlocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; } export class SubBalanceBase extends Contract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; on(event: EventFilter | string, listener: Listener): this; once(event: EventFilter | string, listener: Listener): this; addListener(eventName: EventFilter | string, listener: Listener): this; removeAllListeners(eventName: EventFilter | string): this; removeListener(eventName: any, listener: Listener): this; interface: SubBalanceBaseInterface; functions: { POOL(overrides?: CallOverrides): Promise<{ 0: string; }>; "POOL()"(overrides?: CallOverrides): Promise<{ 0: string; }>; UNDERLYING_ASSET_ADDRESS(overrides?: CallOverrides): Promise<{ 0: string; }>; "UNDERLYING_ASSET_ADDRESS()"(overrides?: CallOverrides): Promise<{ 0: string; }>; addRewardProvider( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<{ 0: void; }>; "addRewardProvider(address,address)"( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<{ 0: void; }>; addStakeOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "addStakeOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; addSubBalanceOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "addSubBalanceOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; "allowance(address,address)"( owner: string, spender: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; approve( spender: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "approve(address,uint256)"( spender: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; attachedToRewardController( overrides?: Overrides ): Promise<ContractTransaction>; "attachedToRewardController()"( overrides?: Overrides ): Promise<ContractTransaction>; balanceOf( account: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; "balanceOf(address)"( account: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; burn( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "burn(address,address,uint256,uint256)"( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; calcRewardFor( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; "calcRewardFor(address,uint32)"( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; claimRewardFor( holder: string, overrides?: Overrides ): Promise<ContractTransaction>; "claimRewardFor(address)"( holder: string, overrides?: Overrides ): Promise<ContractTransaction>; claimRewardWithLimitFor( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "claimRewardWithLimitFor(address,uint256,uint256,uint16)"( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; collateralBalanceOf( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; "collateralBalanceOf(address)"( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; decimals(overrides?: CallOverrides): Promise<{ 0: number; }>; "decimals()"(overrides?: CallOverrides): Promise<{ 0: number; }>; detachedFromRewardController( overrides?: Overrides ): Promise<ContractTransaction>; "detachedFromRewardController()"( overrides?: Overrides ): Promise<ContractTransaction>; getBaselinePercentage(overrides?: CallOverrides): Promise<{ 0: number; }>; "getBaselinePercentage()"(overrides?: CallOverrides): Promise<{ 0: number; }>; getIncentivesController(overrides?: CallOverrides): Promise<{ 0: string; }>; "getIncentivesController()"(overrides?: CallOverrides): Promise<{ 0: string; }>; getOwner(overrides?: CallOverrides): Promise<{ 0: string; }>; "getOwner()"(overrides?: CallOverrides): Promise<{ 0: string; }>; getPoolName(overrides?: CallOverrides): Promise<{ 0: string; }>; "getPoolName()"(overrides?: CallOverrides): Promise<{ 0: string; }>; getRate(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; "getRate()"(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; getRewardController(overrides?: CallOverrides): Promise<{ 0: string; }>; "getRewardController()"(overrides?: CallOverrides): Promise<{ 0: string; }>; getScaleIndex(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; "getScaleIndex()"(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; getScaledUserBalanceAndSupply( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: BigNumber; }>; "getScaledUserBalanceAndSupply(address)"( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: BigNumber; }>; initialize( config: { pool: string; treasury: string; underlyingAsset: string; underlyingDecimals: BigNumberish; }, tokenName: string, tokenSymbol: string, params: BytesLike, overrides?: Overrides ): Promise<ContractTransaction>; "initialize((address,address,address,uint8),string,string,bytes)"( config: { pool: string; treasury: string; underlyingAsset: string; underlyingDecimals: BigNumberish; }, tokenName: string, tokenSymbol: string, params: BytesLike, overrides?: Overrides ): Promise<ContractTransaction>; initializeRewardPool( config: { controller: string; poolName: string; baselinePercentage: BigNumberish; }, overrides?: Overrides ): Promise<ContractTransaction>; "initializeRewardPool((address,string,uint16))"( config: { controller: string; poolName: string; baselinePercentage: BigNumberish; }, overrides?: Overrides ): Promise<ContractTransaction>; initializedRewardPoolWith(overrides?: CallOverrides): Promise<{ 0: { controller: string; poolName: string; baselinePercentage: number; 0: string; 1: string; 2: number; }; }>; "initializedRewardPoolWith()"(overrides?: CallOverrides): Promise<{ 0: { controller: string; poolName: string; baselinePercentage: number; 0: string; 1: string; 2: number; }; }>; isPaused(overrides?: CallOverrides): Promise<{ 0: boolean; }>; "isPaused()"(overrides?: CallOverrides): Promise<{ 0: boolean; }>; lockSubBalance( provider: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "lockSubBalance(address,uint256)"( provider: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; mint( user: string, amount: BigNumberish, index: BigNumberish, repayOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "mint(address,uint256,uint256,bool)"( user: string, amount: BigNumberish, index: BigNumberish, repayOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; mintToTreasury( amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "mintToTreasury(uint256,uint256)"( amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<{ 0: string; }>; "name()"(overrides?: CallOverrides): Promise<{ 0: string; }>; provideSubBalance( provider: string, recipient: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "provideSubBalance(address,address,uint256)"( provider: string, recipient: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; removeRewardProvider( provider: string, overrides?: Overrides ): Promise<ContractTransaction>; "removeRewardProvider(address)"( provider: string, overrides?: Overrides ): Promise<ContractTransaction>; removeSubBalanceOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "removeSubBalanceOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; replaceSubBalance( prevProvider: string, recipient: string, prevScaledAmount: BigNumberish, newProvider: string, newScaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "replaceSubBalance(address,address,uint256,address,uint256)"( prevProvider: string, recipient: string, prevScaledAmount: BigNumberish, newProvider: string, newScaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; returnSubBalance( provider: string, recipient: string, scaledAmount: BigNumberish, preferOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "returnSubBalance(address,address,uint256,bool)"( provider: string, recipient: string, scaledAmount: BigNumberish, preferOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; rewardedBalanceOf( arg0: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; "rewardedBalanceOf(address)"( arg0: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; scaledBalanceOf( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; "scaledBalanceOf(address)"( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; }>; scaledTotalSupply(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; "scaledTotalSupply()"(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; setBaselinePercentage( factor: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "setBaselinePercentage(uint16)"( factor: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; setIncentivesController( hook: string, overrides?: Overrides ): Promise<ContractTransaction>; "setIncentivesController(address)"( hook: string, overrides?: Overrides ): Promise<ContractTransaction>; setPaused( paused: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "setPaused(bool)"( paused: boolean, overrides?: Overrides ): Promise<ContractTransaction>; symbol(overrides?: CallOverrides): Promise<{ 0: string; }>; "symbol()"(overrides?: CallOverrides): Promise<{ 0: string; }>; totalSupply(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; "totalSupply()"(overrides?: CallOverrides): Promise<{ 0: BigNumber; }>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transfer(address,uint256)"( recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferFrom(address,address,uint256)"( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferLockedBalance( from: string, to: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferLockedBalance(address,address,uint256)"( from: string, to: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferOnLiquidation( from: string, to: string, value: BigNumberish, index: BigNumberish, transferUnderlying: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "transferOnLiquidation(address,address,uint256,uint256,bool)"( from: string, to: string, value: BigNumberish, index: BigNumberish, transferUnderlying: boolean, overrides?: Overrides ): Promise<ContractTransaction>; transferUnderlyingTo( user: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferUnderlyingTo(address,uint256)"( user: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; unlockSubBalance( provider: string, scaledAmount: BigNumberish, transferTo: string, overrides?: Overrides ): Promise<ContractTransaction>; "unlockSubBalance(address,uint256,address)"( provider: string, scaledAmount: BigNumberish, transferTo: string, overrides?: Overrides ): Promise<ContractTransaction>; updateBaseline( baseline: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "updateBaseline(uint256)"( baseline: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; updatePool(overrides?: Overrides): Promise<ContractTransaction>; "updatePool()"(overrides?: Overrides): Promise<ContractTransaction>; updateTreasury(overrides?: Overrides): Promise<ContractTransaction>; "updateTreasury()"(overrides?: Overrides): Promise<ContractTransaction>; }; POOL(overrides?: CallOverrides): Promise<string>; "POOL()"(overrides?: CallOverrides): Promise<string>; UNDERLYING_ASSET_ADDRESS(overrides?: CallOverrides): Promise<string>; "UNDERLYING_ASSET_ADDRESS()"(overrides?: CallOverrides): Promise<string>; addRewardProvider( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<void>; "addRewardProvider(address,address)"( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<void>; addStakeOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "addStakeOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; addSubBalanceOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "addSubBalanceOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; "allowance(address,address)"( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "approve(address,uint256)"( spender: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; attachedToRewardController( overrides?: Overrides ): Promise<ContractTransaction>; "attachedToRewardController()"( overrides?: Overrides ): Promise<ContractTransaction>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; "balanceOf(address)"( account: string, overrides?: CallOverrides ): Promise<BigNumber>; burn( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "burn(address,address,uint256,uint256)"( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; calcRewardFor( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; "calcRewardFor(address,uint32)"( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; claimRewardFor( holder: string, overrides?: Overrides ): Promise<ContractTransaction>; "claimRewardFor(address)"( holder: string, overrides?: Overrides ): Promise<ContractTransaction>; claimRewardWithLimitFor( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "claimRewardWithLimitFor(address,uint256,uint256,uint16)"( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; collateralBalanceOf( user: string, overrides?: CallOverrides ): Promise<BigNumber>; "collateralBalanceOf(address)"( user: string, overrides?: CallOverrides ): Promise<BigNumber>; decimals(overrides?: CallOverrides): Promise<number>; "decimals()"(overrides?: CallOverrides): Promise<number>; detachedFromRewardController( overrides?: Overrides ): Promise<ContractTransaction>; "detachedFromRewardController()"( overrides?: Overrides ): Promise<ContractTransaction>; getBaselinePercentage(overrides?: CallOverrides): Promise<number>; "getBaselinePercentage()"(overrides?: CallOverrides): Promise<number>; getIncentivesController(overrides?: CallOverrides): Promise<string>; "getIncentivesController()"(overrides?: CallOverrides): Promise<string>; getOwner(overrides?: CallOverrides): Promise<string>; "getOwner()"(overrides?: CallOverrides): Promise<string>; getPoolName(overrides?: CallOverrides): Promise<string>; "getPoolName()"(overrides?: CallOverrides): Promise<string>; getRate(overrides?: CallOverrides): Promise<BigNumber>; "getRate()"(overrides?: CallOverrides): Promise<BigNumber>; getRewardController(overrides?: CallOverrides): Promise<string>; "getRewardController()"(overrides?: CallOverrides): Promise<string>; getScaleIndex(overrides?: CallOverrides): Promise<BigNumber>; "getScaleIndex()"(overrides?: CallOverrides): Promise<BigNumber>; getScaledUserBalanceAndSupply( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: BigNumber; }>; "getScaledUserBalanceAndSupply(address)"( user: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: BigNumber; }>; initialize( config: { pool: string; treasury: string; underlyingAsset: string; underlyingDecimals: BigNumberish; }, tokenName: string, tokenSymbol: string, params: BytesLike, overrides?: Overrides ): Promise<ContractTransaction>; "initialize((address,address,address,uint8),string,string,bytes)"( config: { pool: string; treasury: string; underlyingAsset: string; underlyingDecimals: BigNumberish; }, tokenName: string, tokenSymbol: string, params: BytesLike, overrides?: Overrides ): Promise<ContractTransaction>; initializeRewardPool( config: { controller: string; poolName: string; baselinePercentage: BigNumberish; }, overrides?: Overrides ): Promise<ContractTransaction>; "initializeRewardPool((address,string,uint16))"( config: { controller: string; poolName: string; baselinePercentage: BigNumberish; }, overrides?: Overrides ): Promise<ContractTransaction>; initializedRewardPoolWith( overrides?: CallOverrides ): Promise<{ controller: string; poolName: string; baselinePercentage: number; 0: string; 1: string; 2: number; }>; "initializedRewardPoolWith()"( overrides?: CallOverrides ): Promise<{ controller: string; poolName: string; baselinePercentage: number; 0: string; 1: string; 2: number; }>; isPaused(overrides?: CallOverrides): Promise<boolean>; "isPaused()"(overrides?: CallOverrides): Promise<boolean>; lockSubBalance( provider: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "lockSubBalance(address,uint256)"( provider: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; mint( user: string, amount: BigNumberish, index: BigNumberish, repayOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "mint(address,uint256,uint256,bool)"( user: string, amount: BigNumberish, index: BigNumberish, repayOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; mintToTreasury( amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "mintToTreasury(uint256,uint256)"( amount: BigNumberish, index: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<string>; "name()"(overrides?: CallOverrides): Promise<string>; provideSubBalance( provider: string, recipient: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "provideSubBalance(address,address,uint256)"( provider: string, recipient: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; removeRewardProvider( provider: string, overrides?: Overrides ): Promise<ContractTransaction>; "removeRewardProvider(address)"( provider: string, overrides?: Overrides ): Promise<ContractTransaction>; removeSubBalanceOperator( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; "removeSubBalanceOperator(address)"( addr: string, overrides?: Overrides ): Promise<ContractTransaction>; replaceSubBalance( prevProvider: string, recipient: string, prevScaledAmount: BigNumberish, newProvider: string, newScaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "replaceSubBalance(address,address,uint256,address,uint256)"( prevProvider: string, recipient: string, prevScaledAmount: BigNumberish, newProvider: string, newScaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; returnSubBalance( provider: string, recipient: string, scaledAmount: BigNumberish, preferOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "returnSubBalance(address,address,uint256,bool)"( provider: string, recipient: string, scaledAmount: BigNumberish, preferOverdraft: boolean, overrides?: Overrides ): Promise<ContractTransaction>; rewardedBalanceOf( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; "rewardedBalanceOf(address)"( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; scaledBalanceOf(user: string, overrides?: CallOverrides): Promise<BigNumber>; "scaledBalanceOf(address)"( user: string, overrides?: CallOverrides ): Promise<BigNumber>; scaledTotalSupply(overrides?: CallOverrides): Promise<BigNumber>; "scaledTotalSupply()"(overrides?: CallOverrides): Promise<BigNumber>; setBaselinePercentage( factor: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "setBaselinePercentage(uint16)"( factor: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; setIncentivesController( hook: string, overrides?: Overrides ): Promise<ContractTransaction>; "setIncentivesController(address)"( hook: string, overrides?: Overrides ): Promise<ContractTransaction>; setPaused( paused: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "setPaused(bool)"( paused: boolean, overrides?: Overrides ): Promise<ContractTransaction>; symbol(overrides?: CallOverrides): Promise<string>; "symbol()"(overrides?: CallOverrides): Promise<string>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; "totalSupply()"(overrides?: CallOverrides): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transfer(address,uint256)"( recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferFrom(address,address,uint256)"( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferLockedBalance( from: string, to: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferLockedBalance(address,address,uint256)"( from: string, to: string, scaledAmount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; transferOnLiquidation( from: string, to: string, value: BigNumberish, index: BigNumberish, transferUnderlying: boolean, overrides?: Overrides ): Promise<ContractTransaction>; "transferOnLiquidation(address,address,uint256,uint256,bool)"( from: string, to: string, value: BigNumberish, index: BigNumberish, transferUnderlying: boolean, overrides?: Overrides ): Promise<ContractTransaction>; transferUnderlyingTo( user: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "transferUnderlyingTo(address,uint256)"( user: string, amount: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; unlockSubBalance( provider: string, scaledAmount: BigNumberish, transferTo: string, overrides?: Overrides ): Promise<ContractTransaction>; "unlockSubBalance(address,uint256,address)"( provider: string, scaledAmount: BigNumberish, transferTo: string, overrides?: Overrides ): Promise<ContractTransaction>; updateBaseline( baseline: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; "updateBaseline(uint256)"( baseline: BigNumberish, overrides?: Overrides ): Promise<ContractTransaction>; updatePool(overrides?: Overrides): Promise<ContractTransaction>; "updatePool()"(overrides?: Overrides): Promise<ContractTransaction>; updateTreasury(overrides?: Overrides): Promise<ContractTransaction>; "updateTreasury()"(overrides?: Overrides): Promise<ContractTransaction>; callStatic: { POOL(overrides?: CallOverrides): Promise<string>; "POOL()"(overrides?: CallOverrides): Promise<string>; UNDERLYING_ASSET_ADDRESS(overrides?: CallOverrides): Promise<string>; "UNDERLYING_ASSET_ADDRESS()"(overrides?: CallOverrides): Promise<string>; addRewardProvider( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<void>; "addRewardProvider(address,address)"( arg0: string, arg1: string, overrides?: CallOverrides ): Promise<void>; addStakeOperator(addr: string, overrides?: CallOverrides): Promise<void>; "addStakeOperator(address)"( addr: string, overrides?: CallOverrides ): Promise<void>; addSubBalanceOperator( addr: string, overrides?: CallOverrides ): Promise<void>; "addSubBalanceOperator(address)"( addr: string, overrides?: CallOverrides ): Promise<void>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; "allowance(address,address)"( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; "approve(address,uint256)"( spender: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; attachedToRewardController(overrides?: CallOverrides): Promise<BigNumber>; "attachedToRewardController()"( overrides?: CallOverrides ): Promise<BigNumber>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; "balanceOf(address)"( account: string, overrides?: CallOverrides ): Promise<BigNumber>; burn( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: CallOverrides ): Promise<void>; "burn(address,address,uint256,uint256)"( user: string, receiverOfUnderlying: string, amount: BigNumberish, index: BigNumberish, overrides?: CallOverrides ): Promise<void>; calcRewardFor( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; "calcRewardFor(address,uint32)"( holder: string, at: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; 0: BigNumber; 1: BigNumber; 2: number; }>; claimRewardFor( holder: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: number; 2: boolean; }>; "claimRewardFor(address)"( holder: string, overrides?: CallOverrides ): Promise<{ 0: BigNumber; 1: number; 2: boolean; }>; claimRewardWithLimitFor( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; keepPull: boolean; newLimit: BigNumber; 0: BigNumber; 1: number; 2: boolean; 3: BigNumber; }>; "claimRewardWithLimitFor(address,uint256,uint256,uint16)"( holder: string, baseAmount: BigNumberish, limit: BigNumberish, minPct: BigNumberish, overrides?: CallOverrides ): Promise<{ amount: BigNumber; since: number; keepPull: boolean; newLimit: BigNumber; 0: BigNumber; 1: number; 2: boolean; 3: BigNumber; }>; collateralBalanceOf( user: string, overrides?: CallOverrides ): Promise<BigNumber>; "collateralBalanceOf(address)"( user: string, overrides?: CallOverrides ): Promise<BigNumber>; decimals(overrides?: CallOverrides): Promise<number>; "decimals()"(overrides?: CallOverrides): Promise<number>; detachedFromRewardController(overrides?: CallOverrides): Promise<BigNumber>; "detachedFromRewardController()"( overrides?: CallOverrides ): Promise<BigNumber>; getBaselinePercentage(overrides?: CallOverrides): Promise<number>; "getBaselinePercentage()"(overrides?: CallOverrides): Promise<number>; getIncentivesController(overrides?: CallOverrides): Promise<string>; "getIncentivesController()"(overrides?: CallOverrides): Promise<string>; getOwner(overrides?: CallOverrides): Promise<string>; "getOwner()"(overrides?: CallOverrid