import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export interface MapleBasicStrategyAbiInterface extends utils.Interface { functions: { "HUNDRED_PERCENT()": FunctionFragment; "STRATEGY_TYPE()": FunctionFragment; "assetsUnderManagement()": FunctionFragment; "deactivateStrategy()": FunctionFragment; "factory()": FunctionFragment; "fundStrategy(uint256,uint256)": FunctionFragment; "fundsAsset()": FunctionFragment; "globals()": FunctionFragment; "governor()": FunctionFragment; "impairStrategy()": FunctionFragment; "implementation()": FunctionFragment; "lastRecordedTotalAssets()": FunctionFragment; "locked()": FunctionFragment; "migrate(address,bytes)": FunctionFragment; "pool()": FunctionFragment; "poolDelegate()": FunctionFragment; "poolManager()": FunctionFragment; "reactivateStrategy(bool)": FunctionFragment; "securityAdmin()": FunctionFragment; "setImplementation(address)": FunctionFragment; "setStrategyFeeRate(uint256)": FunctionFragment; "strategyFeeRate()": FunctionFragment; "strategyState()": FunctionFragment; "strategyVault()": FunctionFragment; "treasury()": FunctionFragment; "unrealizedLosses()": FunctionFragment; "upgrade(uint256,bytes)": FunctionFragment; "withdrawFromStrategy(uint256,uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "HUNDRED_PERCENT" | "STRATEGY_TYPE" | "assetsUnderManagement" | "deactivateStrategy" | "factory" | "fundStrategy" | "fundsAsset" | "globals" | "governor" | "impairStrategy" | "implementation" | "lastRecordedTotalAssets" | "locked" | "migrate" | "pool" | "poolDelegate" | "poolManager" | "reactivateStrategy" | "securityAdmin" | "setImplementation" | "setStrategyFeeRate" | "strategyFeeRate" | "strategyState" | "strategyVault" | "treasury" | "unrealizedLosses" | "upgrade" | "withdrawFromStrategy"): FunctionFragment; encodeFunctionData(functionFragment: "HUNDRED_PERCENT", values?: undefined): string; encodeFunctionData(functionFragment: "STRATEGY_TYPE", values?: undefined): string; encodeFunctionData(functionFragment: "assetsUnderManagement", values?: undefined): string; encodeFunctionData(functionFragment: "deactivateStrategy", values?: undefined): string; encodeFunctionData(functionFragment: "factory", values?: undefined): string; encodeFunctionData(functionFragment: "fundStrategy", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "fundsAsset", values?: undefined): string; encodeFunctionData(functionFragment: "globals", values?: undefined): string; encodeFunctionData(functionFragment: "governor", values?: undefined): string; encodeFunctionData(functionFragment: "impairStrategy", values?: undefined): string; encodeFunctionData(functionFragment: "implementation", values?: undefined): string; encodeFunctionData(functionFragment: "lastRecordedTotalAssets", values?: undefined): string; encodeFunctionData(functionFragment: "locked", values?: undefined): string; encodeFunctionData(functionFragment: "migrate", values: [string, BytesLike]): string; encodeFunctionData(functionFragment: "pool", values?: undefined): string; encodeFunctionData(functionFragment: "poolDelegate", values?: undefined): string; encodeFunctionData(functionFragment: "poolManager", values?: undefined): string; encodeFunctionData(functionFragment: "reactivateStrategy", values: [boolean]): string; encodeFunctionData(functionFragment: "securityAdmin", values?: undefined): string; encodeFunctionData(functionFragment: "setImplementation", values: [string]): string; encodeFunctionData(functionFragment: "setStrategyFeeRate", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "strategyFeeRate", values?: undefined): string; encodeFunctionData(functionFragment: "strategyState", values?: undefined): string; encodeFunctionData(functionFragment: "strategyVault", values?: undefined): string; encodeFunctionData(functionFragment: "treasury", values?: undefined): string; encodeFunctionData(functionFragment: "unrealizedLosses", values?: undefined): string; encodeFunctionData(functionFragment: "upgrade", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "withdrawFromStrategy", values: [BigNumberish, BigNumberish]): string; decodeFunctionResult(functionFragment: "HUNDRED_PERCENT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "STRATEGY_TYPE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "assetsUnderManagement", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deactivateStrategy", data: BytesLike): Result; decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "fundStrategy", data: BytesLike): Result; decodeFunctionResult(functionFragment: "fundsAsset", data: BytesLike): Result; decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "governor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "impairStrategy", data: BytesLike): Result; decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lastRecordedTotalAssets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "locked", data: BytesLike): Result; decodeFunctionResult(functionFragment: "migrate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolDelegate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "reactivateStrategy", data: BytesLike): Result; decodeFunctionResult(functionFragment: "securityAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setImplementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setStrategyFeeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "strategyFeeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "strategyState", data: BytesLike): Result; decodeFunctionResult(functionFragment: "strategyVault", data: BytesLike): Result; decodeFunctionResult(functionFragment: "treasury", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unrealizedLosses", data: BytesLike): Result; decodeFunctionResult(functionFragment: "upgrade", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawFromStrategy", data: BytesLike): Result; events: { "StrategyDeactivated()": EventFragment; "StrategyFeeRateSet(uint256)": EventFragment; "StrategyFeesCollected(uint256)": EventFragment; "StrategyFunded(uint256)": EventFragment; "StrategyFunded(uint256,uint256)": EventFragment; "StrategyImpaired()": EventFragment; "StrategyReactivated(bool)": EventFragment; "StrategyWithdrawal(uint256)": EventFragment; "StrategyWithdrawal(uint256,uint256)": EventFragment; "Upgraded(uint256,bytes)": EventFragment; "Initialized(address,address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "StrategyDeactivated"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyFeeRateSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyFeesCollected"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyFunded(uint256)"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyFunded(uint256,uint256)"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyImpaired"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyReactivated"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyWithdrawal(uint256)"): EventFragment; getEvent(nameOrSignatureOrTopic: "StrategyWithdrawal(uint256,uint256)"): EventFragment; getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; } export interface StrategyDeactivatedEventObject { } export type StrategyDeactivatedEvent = TypedEvent<[ ], StrategyDeactivatedEventObject>; export type StrategyDeactivatedEventFilter = TypedEventFilter; export interface StrategyFeeRateSetEventObject { feeRate: BigNumber; } export type StrategyFeeRateSetEvent = TypedEvent<[ BigNumber ], StrategyFeeRateSetEventObject>; export type StrategyFeeRateSetEventFilter = TypedEventFilter; export interface StrategyFeesCollectedEventObject { fees: BigNumber; } export type StrategyFeesCollectedEvent = TypedEvent<[ BigNumber ], StrategyFeesCollectedEventObject>; export type StrategyFeesCollectedEventFilter = TypedEventFilter; export interface StrategyFunded_uint256_EventObject { assets: BigNumber; } export type StrategyFunded_uint256_Event = TypedEvent<[ BigNumber ], StrategyFunded_uint256_EventObject>; export type StrategyFunded_uint256_EventFilter = TypedEventFilter; export interface StrategyFunded_uint256_uint256_EventObject { assets: BigNumber; shares: BigNumber; } export type StrategyFunded_uint256_uint256_Event = TypedEvent<[ BigNumber, BigNumber ], StrategyFunded_uint256_uint256_EventObject>; export type StrategyFunded_uint256_uint256_EventFilter = TypedEventFilter; export interface StrategyImpairedEventObject { } export type StrategyImpairedEvent = TypedEvent<[], StrategyImpairedEventObject>; export type StrategyImpairedEventFilter = TypedEventFilter; export interface StrategyReactivatedEventObject { updateAccounting: boolean; } export type StrategyReactivatedEvent = TypedEvent<[ boolean ], StrategyReactivatedEventObject>; export type StrategyReactivatedEventFilter = TypedEventFilter; export interface StrategyWithdrawal_uint256_EventObject { assets: BigNumber; } export type StrategyWithdrawal_uint256_Event = TypedEvent<[ BigNumber ], StrategyWithdrawal_uint256_EventObject>; export type StrategyWithdrawal_uint256_EventFilter = TypedEventFilter; export interface StrategyWithdrawal_uint256_uint256_EventObject { assets: BigNumber; shares: BigNumber; } export type StrategyWithdrawal_uint256_uint256_Event = TypedEvent<[ BigNumber, BigNumber ], StrategyWithdrawal_uint256_uint256_EventObject>; export type StrategyWithdrawal_uint256_uint256_EventFilter = TypedEventFilter; export interface UpgradedEventObject { toVersion_: BigNumber; arguments_: string; } export type UpgradedEvent = TypedEvent<[ BigNumber, string ], UpgradedEventObject>; export type UpgradedEventFilter = TypedEventFilter; export interface InitializedEventObject { pool: string; poolManager: string; strategyVault: string; } export type InitializedEvent = TypedEvent<[ string, string, string ], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface MapleBasicStrategyAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: MapleBasicStrategyAbiInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { HUNDRED_PERCENT(overrides?: CallOverrides): Promise<[BigNumber]>; STRATEGY_TYPE(overrides?: CallOverrides): Promise<[string]>; assetsUnderManagement(overrides?: CallOverrides): Promise<[BigNumber] & { assetsUnderManagement_: BigNumber; }>; deactivateStrategy(overrides?: Overrides & { from?: string; }): Promise; factory(overrides?: CallOverrides): Promise<[string] & { factory_: string; }>; fundStrategy(assetsIn_: BigNumberish, minSharesOut_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; fundsAsset(overrides?: CallOverrides): Promise<[string]>; globals(overrides?: CallOverrides): Promise<[string] & { globals_: string; }>; governor(overrides?: CallOverrides): Promise<[string] & { governor_: string; }>; impairStrategy(overrides?: Overrides & { from?: string; }): Promise; implementation(overrides?: CallOverrides): Promise<[string] & { implementation_: string; }>; lastRecordedTotalAssets(overrides?: CallOverrides): Promise<[BigNumber]>; locked(overrides?: CallOverrides): Promise<[BigNumber]>; migrate(migrator_: string, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; pool(overrides?: CallOverrides): Promise<[string]>; poolDelegate(overrides?: CallOverrides): Promise<[string] & { poolDelegate_: string; }>; poolManager(overrides?: CallOverrides): Promise<[string]>; reactivateStrategy(updateAccounting_: boolean, overrides?: Overrides & { from?: string; }): Promise; securityAdmin(overrides?: CallOverrides): Promise<[string] & { securityAdmin_: string; }>; setImplementation(implementation_: string, overrides?: Overrides & { from?: string; }): Promise; setStrategyFeeRate(strategyFeeRate_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; strategyFeeRate(overrides?: CallOverrides): Promise<[BigNumber]>; strategyState(overrides?: CallOverrides): Promise<[number]>; strategyVault(overrides?: CallOverrides): Promise<[string]>; treasury(overrides?: CallOverrides): Promise<[string] & { treasury_: string; }>; unrealizedLosses(overrides?: CallOverrides): Promise<[BigNumber] & { unrealizedLosses_: BigNumber; }>; upgrade(version_: BigNumberish, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawFromStrategy(assetsOut_: BigNumberish, maxSharesBurned_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; HUNDRED_PERCENT(overrides?: CallOverrides): Promise; STRATEGY_TYPE(overrides?: CallOverrides): Promise; assetsUnderManagement(overrides?: CallOverrides): Promise; deactivateStrategy(overrides?: Overrides & { from?: string; }): Promise; factory(overrides?: CallOverrides): Promise; fundStrategy(assetsIn_: BigNumberish, minSharesOut_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; fundsAsset(overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; governor(overrides?: CallOverrides): Promise; impairStrategy(overrides?: Overrides & { from?: string; }): Promise; implementation(overrides?: CallOverrides): Promise; lastRecordedTotalAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; migrate(migrator_: string, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; pool(overrides?: CallOverrides): Promise; poolDelegate(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; reactivateStrategy(updateAccounting_: boolean, overrides?: Overrides & { from?: string; }): Promise; securityAdmin(overrides?: CallOverrides): Promise; setImplementation(implementation_: string, overrides?: Overrides & { from?: string; }): Promise; setStrategyFeeRate(strategyFeeRate_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; strategyFeeRate(overrides?: CallOverrides): Promise; strategyState(overrides?: CallOverrides): Promise; strategyVault(overrides?: CallOverrides): Promise; treasury(overrides?: CallOverrides): Promise; unrealizedLosses(overrides?: CallOverrides): Promise; upgrade(version_: BigNumberish, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawFromStrategy(assetsOut_: BigNumberish, maxSharesBurned_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; callStatic: { HUNDRED_PERCENT(overrides?: CallOverrides): Promise; STRATEGY_TYPE(overrides?: CallOverrides): Promise; assetsUnderManagement(overrides?: CallOverrides): Promise; deactivateStrategy(overrides?: CallOverrides): Promise; factory(overrides?: CallOverrides): Promise; fundStrategy(assetsIn_: BigNumberish, minSharesOut_: BigNumberish, overrides?: CallOverrides): Promise; fundsAsset(overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; governor(overrides?: CallOverrides): Promise; impairStrategy(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; lastRecordedTotalAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; migrate(migrator_: string, arguments_: BytesLike, overrides?: CallOverrides): Promise; pool(overrides?: CallOverrides): Promise; poolDelegate(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; reactivateStrategy(updateAccounting_: boolean, overrides?: CallOverrides): Promise; securityAdmin(overrides?: CallOverrides): Promise; setImplementation(implementation_: string, overrides?: CallOverrides): Promise; setStrategyFeeRate(strategyFeeRate_: BigNumberish, overrides?: CallOverrides): Promise; strategyFeeRate(overrides?: CallOverrides): Promise; strategyState(overrides?: CallOverrides): Promise; strategyVault(overrides?: CallOverrides): Promise; treasury(overrides?: CallOverrides): Promise; unrealizedLosses(overrides?: CallOverrides): Promise; upgrade(version_: BigNumberish, arguments_: BytesLike, overrides?: CallOverrides): Promise; withdrawFromStrategy(assetsOut_: BigNumberish, maxSharesBurned_: BigNumberish, overrides?: CallOverrides): Promise; }; filters: { "StrategyDeactivated()"(): StrategyDeactivatedEventFilter; StrategyDeactivated(): StrategyDeactivatedEventFilter; "StrategyFeeRateSet(uint256)"(feeRate?: null): StrategyFeeRateSetEventFilter; StrategyFeeRateSet(feeRate?: null): StrategyFeeRateSetEventFilter; "StrategyFeesCollected(uint256)"(fees?: null): StrategyFeesCollectedEventFilter; StrategyFeesCollected(fees?: null): StrategyFeesCollectedEventFilter; "StrategyFunded(uint256)"(assets?: null): StrategyFunded_uint256_EventFilter; "StrategyFunded(uint256,uint256)"(assets?: null, shares?: null): StrategyFunded_uint256_uint256_EventFilter; "StrategyImpaired()"(): StrategyImpairedEventFilter; StrategyImpaired(): StrategyImpairedEventFilter; "StrategyReactivated(bool)"(updateAccounting?: null): StrategyReactivatedEventFilter; StrategyReactivated(updateAccounting?: null): StrategyReactivatedEventFilter; "StrategyWithdrawal(uint256)"(assets?: null): StrategyWithdrawal_uint256_EventFilter; "StrategyWithdrawal(uint256,uint256)"(assets?: null, shares?: null): StrategyWithdrawal_uint256_uint256_EventFilter; "Upgraded(uint256,bytes)"(toVersion_?: null, arguments_?: null): UpgradedEventFilter; Upgraded(toVersion_?: null, arguments_?: null): UpgradedEventFilter; "Initialized(address,address,address)"(pool?: string | null, poolManager?: string | null, strategyVault?: string | null): InitializedEventFilter; Initialized(pool?: string | null, poolManager?: string | null, strategyVault?: string | null): InitializedEventFilter; }; estimateGas: { HUNDRED_PERCENT(overrides?: CallOverrides): Promise; STRATEGY_TYPE(overrides?: CallOverrides): Promise; assetsUnderManagement(overrides?: CallOverrides): Promise; deactivateStrategy(overrides?: Overrides & { from?: string; }): Promise; factory(overrides?: CallOverrides): Promise; fundStrategy(assetsIn_: BigNumberish, minSharesOut_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; fundsAsset(overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; governor(overrides?: CallOverrides): Promise; impairStrategy(overrides?: Overrides & { from?: string; }): Promise; implementation(overrides?: CallOverrides): Promise; lastRecordedTotalAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; migrate(migrator_: string, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; pool(overrides?: CallOverrides): Promise; poolDelegate(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; reactivateStrategy(updateAccounting_: boolean, overrides?: Overrides & { from?: string; }): Promise; securityAdmin(overrides?: CallOverrides): Promise; setImplementation(implementation_: string, overrides?: Overrides & { from?: string; }): Promise; setStrategyFeeRate(strategyFeeRate_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; strategyFeeRate(overrides?: CallOverrides): Promise; strategyState(overrides?: CallOverrides): Promise; strategyVault(overrides?: CallOverrides): Promise; treasury(overrides?: CallOverrides): Promise; unrealizedLosses(overrides?: CallOverrides): Promise; upgrade(version_: BigNumberish, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawFromStrategy(assetsOut_: BigNumberish, maxSharesBurned_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { HUNDRED_PERCENT(overrides?: CallOverrides): Promise; STRATEGY_TYPE(overrides?: CallOverrides): Promise; assetsUnderManagement(overrides?: CallOverrides): Promise; deactivateStrategy(overrides?: Overrides & { from?: string; }): Promise; factory(overrides?: CallOverrides): Promise; fundStrategy(assetsIn_: BigNumberish, minSharesOut_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; fundsAsset(overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; governor(overrides?: CallOverrides): Promise; impairStrategy(overrides?: Overrides & { from?: string; }): Promise; implementation(overrides?: CallOverrides): Promise; lastRecordedTotalAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; migrate(migrator_: string, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; pool(overrides?: CallOverrides): Promise; poolDelegate(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; reactivateStrategy(updateAccounting_: boolean, overrides?: Overrides & { from?: string; }): Promise; securityAdmin(overrides?: CallOverrides): Promise; setImplementation(implementation_: string, overrides?: Overrides & { from?: string; }): Promise; setStrategyFeeRate(strategyFeeRate_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; strategyFeeRate(overrides?: CallOverrides): Promise; strategyState(overrides?: CallOverrides): Promise; strategyVault(overrides?: CallOverrides): Promise; treasury(overrides?: CallOverrides): Promise; unrealizedLosses(overrides?: CallOverrides): Promise; upgrade(version_: BigNumberish, arguments_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawFromStrategy(assetsOut_: BigNumberish, maxSharesBurned_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; }