import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, 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 MapleBitcoinStrategyInitializerAbiInterface extends utils.Interface { functions: { "controllers(address)": FunctionFragment; "feeRate()": FunctionFragment; "impairedAssets()": FunctionFragment; "locked()": FunctionFragment; "outstandingAssets()": FunctionFragment; "permissions(address)": FunctionFragment; "pool()": FunctionFragment; "poolAsset()": FunctionFragment; "poolManager()": FunctionFragment; "realizedFees()": FunctionFragment; "schedules(uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "controllers" | "feeRate" | "impairedAssets" | "locked" | "outstandingAssets" | "permissions" | "pool" | "poolAsset" | "poolManager" | "realizedFees" | "schedules"): FunctionFragment; encodeFunctionData(functionFragment: "controllers", values: [string]): string; encodeFunctionData(functionFragment: "feeRate", values?: undefined): string; encodeFunctionData(functionFragment: "impairedAssets", values?: undefined): string; encodeFunctionData(functionFragment: "locked", values?: undefined): string; encodeFunctionData(functionFragment: "outstandingAssets", values?: undefined): string; encodeFunctionData(functionFragment: "permissions", values: [string]): string; encodeFunctionData(functionFragment: "pool", values?: undefined): string; encodeFunctionData(functionFragment: "poolAsset", values?: undefined): string; encodeFunctionData(functionFragment: "poolManager", values?: undefined): string; encodeFunctionData(functionFragment: "realizedFees", values?: undefined): string; encodeFunctionData(functionFragment: "schedules", values: [BigNumberish]): string; decodeFunctionResult(functionFragment: "controllers", data: BytesLike): Result; decodeFunctionResult(functionFragment: "feeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "impairedAssets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "locked", data: BytesLike): Result; decodeFunctionResult(functionFragment: "outstandingAssets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissions", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolAsset", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "realizedFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "schedules", data: BytesLike): Result; events: { "Initialized(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; } export interface InitializedEventObject { pool: string; poolManager: string; } export type InitializedEvent = TypedEvent<[ string, string ], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface MapleBitcoinStrategyInitializerAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: MapleBitcoinStrategyInitializerAbiInterface; 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: { controllers(arg0: string, overrides?: CallOverrides): Promise<[string]>; feeRate(overrides?: CallOverrides): Promise<[BigNumber]>; impairedAssets(overrides?: CallOverrides): Promise<[BigNumber]>; locked(overrides?: CallOverrides): Promise<[BigNumber]>; outstandingAssets(overrides?: CallOverrides): Promise<[BigNumber]>; permissions(arg0: string, overrides?: CallOverrides): Promise<[ boolean, boolean, boolean ] & { canDeploy: boolean; canReconcile: boolean; canSchedule: boolean; }>; pool(overrides?: CallOverrides): Promise<[string]>; poolAsset(overrides?: CallOverrides): Promise<[string]>; poolManager(overrides?: CallOverrides): Promise<[string]>; realizedFees(overrides?: CallOverrides): Promise<[BigNumber]>; schedules(arg0: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { remainingYield: BigNumber; lastUpdated: number; remainingDuration: number; }>; }; controllers(arg0: string, overrides?: CallOverrides): Promise; feeRate(overrides?: CallOverrides): Promise; impairedAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; outstandingAssets(overrides?: CallOverrides): Promise; permissions(arg0: string, overrides?: CallOverrides): Promise<[ boolean, boolean, boolean ] & { canDeploy: boolean; canReconcile: boolean; canSchedule: boolean; }>; pool(overrides?: CallOverrides): Promise; poolAsset(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; realizedFees(overrides?: CallOverrides): Promise; schedules(arg0: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { remainingYield: BigNumber; lastUpdated: number; remainingDuration: number; }>; callStatic: { controllers(arg0: string, overrides?: CallOverrides): Promise; feeRate(overrides?: CallOverrides): Promise; impairedAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; outstandingAssets(overrides?: CallOverrides): Promise; permissions(arg0: string, overrides?: CallOverrides): Promise<[ boolean, boolean, boolean ] & { canDeploy: boolean; canReconcile: boolean; canSchedule: boolean; }>; pool(overrides?: CallOverrides): Promise; poolAsset(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; realizedFees(overrides?: CallOverrides): Promise; schedules(arg0: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { remainingYield: BigNumber; lastUpdated: number; remainingDuration: number; }>; }; filters: { "Initialized(address,address)"(pool?: string | null, poolManager?: string | null): InitializedEventFilter; Initialized(pool?: string | null, poolManager?: string | null): InitializedEventFilter; }; estimateGas: { controllers(arg0: string, overrides?: CallOverrides): Promise; feeRate(overrides?: CallOverrides): Promise; impairedAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; outstandingAssets(overrides?: CallOverrides): Promise; permissions(arg0: string, overrides?: CallOverrides): Promise; pool(overrides?: CallOverrides): Promise; poolAsset(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; realizedFees(overrides?: CallOverrides): Promise; schedules(arg0: BigNumberish, overrides?: CallOverrides): Promise; }; populateTransaction: { controllers(arg0: string, overrides?: CallOverrides): Promise; feeRate(overrides?: CallOverrides): Promise; impairedAssets(overrides?: CallOverrides): Promise; locked(overrides?: CallOverrides): Promise; outstandingAssets(overrides?: CallOverrides): Promise; permissions(arg0: string, overrides?: CallOverrides): Promise; pool(overrides?: CallOverrides): Promise; poolAsset(overrides?: CallOverrides): Promise; poolManager(overrides?: CallOverrides): Promise; realizedFees(overrides?: CallOverrides): Promise; schedules(arg0: BigNumberish, overrides?: CallOverrides): Promise; }; }