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 LoanFactoryAbiInterface extends utils.Interface { functions: { "CL_FACTORY()": FunctionFragment; "FL_FACTORY()": FunctionFragment; "INTEREST_CALC_TYPE()": FunctionFragment; "LATEFEE_CALC_TYPE()": FunctionFragment; "PREMIUM_CALC_TYPE()": FunctionFragment; "createLoan(address,address,address,address,uint256[5],address[3])": FunctionFragment; "globals()": FunctionFragment; "isLoan(address)": FunctionFragment; "loanFactoryAdmins(address)": FunctionFragment; "loans(uint256)": FunctionFragment; "loansCreated()": FunctionFragment; "pause()": FunctionFragment; "paused()": FunctionFragment; "setGlobals(address)": FunctionFragment; "setLoanFactoryAdmin(address,bool)": FunctionFragment; "unpause()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "CL_FACTORY" | "FL_FACTORY" | "INTEREST_CALC_TYPE" | "LATEFEE_CALC_TYPE" | "PREMIUM_CALC_TYPE" | "createLoan" | "globals" | "isLoan" | "loanFactoryAdmins" | "loans" | "loansCreated" | "pause" | "paused" | "setGlobals" | "setLoanFactoryAdmin" | "unpause"): FunctionFragment; encodeFunctionData(functionFragment: "CL_FACTORY", values?: undefined): string; encodeFunctionData(functionFragment: "FL_FACTORY", values?: undefined): string; encodeFunctionData(functionFragment: "INTEREST_CALC_TYPE", values?: undefined): string; encodeFunctionData(functionFragment: "LATEFEE_CALC_TYPE", values?: undefined): string; encodeFunctionData(functionFragment: "PREMIUM_CALC_TYPE", values?: undefined): string; encodeFunctionData(functionFragment: "createLoan", values: [ string, string, string, string, [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], [ string, string, string ] ]): string; encodeFunctionData(functionFragment: "globals", values?: undefined): string; encodeFunctionData(functionFragment: "isLoan", values: [string]): string; encodeFunctionData(functionFragment: "loanFactoryAdmins", values: [string]): string; encodeFunctionData(functionFragment: "loans", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "loansCreated", values?: undefined): string; encodeFunctionData(functionFragment: "pause", values?: undefined): string; encodeFunctionData(functionFragment: "paused", values?: undefined): string; encodeFunctionData(functionFragment: "setGlobals", values: [string]): string; encodeFunctionData(functionFragment: "setLoanFactoryAdmin", values: [string, boolean]): string; encodeFunctionData(functionFragment: "unpause", values?: undefined): string; decodeFunctionResult(functionFragment: "CL_FACTORY", data: BytesLike): Result; decodeFunctionResult(functionFragment: "FL_FACTORY", data: BytesLike): Result; decodeFunctionResult(functionFragment: "INTEREST_CALC_TYPE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "LATEFEE_CALC_TYPE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "PREMIUM_CALC_TYPE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createLoan", data: BytesLike): Result; decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isLoan", data: BytesLike): Result; decodeFunctionResult(functionFragment: "loanFactoryAdmins", data: BytesLike): Result; decodeFunctionResult(functionFragment: "loans", data: BytesLike): Result; decodeFunctionResult(functionFragment: "loansCreated", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; decodeFunctionResult(functionFragment: "paused", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setGlobals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLoanFactoryAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; events: { "LoanCreated(address,address,address,address,address,address,uint256[5],address[3],string,string)": EventFragment; "LoanFactoryAdminSet(address,bool)": EventFragment; "Paused(address)": EventFragment; "Unpaused(address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "LoanCreated"): EventFragment; getEvent(nameOrSignatureOrTopic: "LoanFactoryAdminSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "Paused"): EventFragment; getEvent(nameOrSignatureOrTopic: "Unpaused"): EventFragment; } export interface LoanCreatedEventObject { loan: string; borrower: string; liquidityAsset: string; collateralAsset: string; collateralLocker: string; fundingLocker: string; specs: [BigNumber, BigNumber, BigNumber, BigNumber, BigNumber]; calcs: [string, string, string]; name: string; symbol: string; } export type LoanCreatedEvent = TypedEvent<[ string, string, string, string, string, string, [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber ], [ string, string, string ], string, string ], LoanCreatedEventObject>; export type LoanCreatedEventFilter = TypedEventFilter; export interface LoanFactoryAdminSetEventObject { loanFactoryAdmin: string; allowed: boolean; } export type LoanFactoryAdminSetEvent = TypedEvent<[ string, boolean ], LoanFactoryAdminSetEventObject>; export type LoanFactoryAdminSetEventFilter = TypedEventFilter; export interface PausedEventObject { account: string; } export type PausedEvent = TypedEvent<[string], PausedEventObject>; export type PausedEventFilter = TypedEventFilter; export interface UnpausedEventObject { account: string; } export type UnpausedEvent = TypedEvent<[string], UnpausedEventObject>; export type UnpausedEventFilter = TypedEventFilter; export interface LoanFactoryAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: LoanFactoryAbiInterface; 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: { CL_FACTORY(overrides?: CallOverrides): Promise<[number]>; FL_FACTORY(overrides?: CallOverrides): Promise<[number]>; INTEREST_CALC_TYPE(overrides?: CallOverrides): Promise<[number]>; LATEFEE_CALC_TYPE(overrides?: CallOverrides): Promise<[number]>; PREMIUM_CALC_TYPE(overrides?: CallOverrides): Promise<[number]>; createLoan(liquidityAsset: string, collateralAsset: string, flFactory: string, clFactory: string, specs: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], calcs: [string, string, string], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise<[string]>; isLoan(arg0: string, overrides?: CallOverrides): Promise<[boolean]>; loanFactoryAdmins(arg0: string, overrides?: CallOverrides): Promise<[boolean]>; loans(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]>; loansCreated(overrides?: CallOverrides): Promise<[BigNumber]>; pause(overrides?: Overrides & { from?: string; }): Promise; paused(overrides?: CallOverrides): Promise<[boolean]>; setGlobals(newGlobals: string, overrides?: Overrides & { from?: string; }): Promise; setLoanFactoryAdmin(loanFactoryAdmin: string, allowed: boolean, overrides?: Overrides & { from?: string; }): Promise; unpause(overrides?: Overrides & { from?: string; }): Promise; }; CL_FACTORY(overrides?: CallOverrides): Promise; FL_FACTORY(overrides?: CallOverrides): Promise; INTEREST_CALC_TYPE(overrides?: CallOverrides): Promise; LATEFEE_CALC_TYPE(overrides?: CallOverrides): Promise; PREMIUM_CALC_TYPE(overrides?: CallOverrides): Promise; createLoan(liquidityAsset: string, collateralAsset: string, flFactory: string, clFactory: string, specs: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], calcs: [string, string, string], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; isLoan(arg0: string, overrides?: CallOverrides): Promise; loanFactoryAdmins(arg0: string, overrides?: CallOverrides): Promise; loans(arg0: BigNumberish, overrides?: CallOverrides): Promise; loansCreated(overrides?: CallOverrides): Promise; pause(overrides?: Overrides & { from?: string; }): Promise; paused(overrides?: CallOverrides): Promise; setGlobals(newGlobals: string, overrides?: Overrides & { from?: string; }): Promise; setLoanFactoryAdmin(loanFactoryAdmin: string, allowed: boolean, overrides?: Overrides & { from?: string; }): Promise; unpause(overrides?: Overrides & { from?: string; }): Promise; callStatic: { CL_FACTORY(overrides?: CallOverrides): Promise; FL_FACTORY(overrides?: CallOverrides): Promise; INTEREST_CALC_TYPE(overrides?: CallOverrides): Promise; LATEFEE_CALC_TYPE(overrides?: CallOverrides): Promise; PREMIUM_CALC_TYPE(overrides?: CallOverrides): Promise; createLoan(liquidityAsset: string, collateralAsset: string, flFactory: string, clFactory: string, specs: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], calcs: [string, string, string], overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; isLoan(arg0: string, overrides?: CallOverrides): Promise; loanFactoryAdmins(arg0: string, overrides?: CallOverrides): Promise; loans(arg0: BigNumberish, overrides?: CallOverrides): Promise; loansCreated(overrides?: CallOverrides): Promise; pause(overrides?: CallOverrides): Promise; paused(overrides?: CallOverrides): Promise; setGlobals(newGlobals: string, overrides?: CallOverrides): Promise; setLoanFactoryAdmin(loanFactoryAdmin: string, allowed: boolean, overrides?: CallOverrides): Promise; unpause(overrides?: CallOverrides): Promise; }; filters: { "LoanCreated(address,address,address,address,address,address,uint256[5],address[3],string,string)"(loan?: null, borrower?: string | null, liquidityAsset?: string | null, collateralAsset?: null, collateralLocker?: null, fundingLocker?: null, specs?: null, calcs?: null, name?: null, symbol?: null): LoanCreatedEventFilter; LoanCreated(loan?: null, borrower?: string | null, liquidityAsset?: string | null, collateralAsset?: null, collateralLocker?: null, fundingLocker?: null, specs?: null, calcs?: null, name?: null, symbol?: null): LoanCreatedEventFilter; "LoanFactoryAdminSet(address,bool)"(loanFactoryAdmin?: string | null, allowed?: null): LoanFactoryAdminSetEventFilter; LoanFactoryAdminSet(loanFactoryAdmin?: string | null, allowed?: null): LoanFactoryAdminSetEventFilter; "Paused(address)"(account?: null): PausedEventFilter; Paused(account?: null): PausedEventFilter; "Unpaused(address)"(account?: null): UnpausedEventFilter; Unpaused(account?: null): UnpausedEventFilter; }; estimateGas: { CL_FACTORY(overrides?: CallOverrides): Promise; FL_FACTORY(overrides?: CallOverrides): Promise; INTEREST_CALC_TYPE(overrides?: CallOverrides): Promise; LATEFEE_CALC_TYPE(overrides?: CallOverrides): Promise; PREMIUM_CALC_TYPE(overrides?: CallOverrides): Promise; createLoan(liquidityAsset: string, collateralAsset: string, flFactory: string, clFactory: string, specs: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], calcs: [string, string, string], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; isLoan(arg0: string, overrides?: CallOverrides): Promise; loanFactoryAdmins(arg0: string, overrides?: CallOverrides): Promise; loans(arg0: BigNumberish, overrides?: CallOverrides): Promise; loansCreated(overrides?: CallOverrides): Promise; pause(overrides?: Overrides & { from?: string; }): Promise; paused(overrides?: CallOverrides): Promise; setGlobals(newGlobals: string, overrides?: Overrides & { from?: string; }): Promise; setLoanFactoryAdmin(loanFactoryAdmin: string, allowed: boolean, overrides?: Overrides & { from?: string; }): Promise; unpause(overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { CL_FACTORY(overrides?: CallOverrides): Promise; FL_FACTORY(overrides?: CallOverrides): Promise; INTEREST_CALC_TYPE(overrides?: CallOverrides): Promise; LATEFEE_CALC_TYPE(overrides?: CallOverrides): Promise; PREMIUM_CALC_TYPE(overrides?: CallOverrides): Promise; createLoan(liquidityAsset: string, collateralAsset: string, flFactory: string, clFactory: string, specs: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ], calcs: [string, string, string], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; isLoan(arg0: string, overrides?: CallOverrides): Promise; loanFactoryAdmins(arg0: string, overrides?: CallOverrides): Promise; loans(arg0: BigNumberish, overrides?: CallOverrides): Promise; loansCreated(overrides?: CallOverrides): Promise; pause(overrides?: Overrides & { from?: string; }): Promise; paused(overrides?: CallOverrides): Promise; setGlobals(newGlobals: string, overrides?: Overrides & { from?: string; }): Promise; setLoanFactoryAdmin(loanFactoryAdmin: string, allowed: boolean, overrides?: Overrides & { from?: string; }): Promise; unpause(overrides?: Overrides & { from?: string; }): Promise; }; }