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, PromiseOrValue } from "../../common"; export interface IHonzonInterface extends utils.Interface { functions: { "adjustLoan(address,int128,int128)": FunctionFragment; "closeLoanByDex(address,uint256)": FunctionFragment; "getCollateralParameters(address)": FunctionFragment; "getCurrentCollateralRatio(address,address)": FunctionFragment; "getDebitExchangeRate(address)": FunctionFragment; "getPosition(address,address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "adjustLoan" | "closeLoanByDex" | "getCollateralParameters" | "getCurrentCollateralRatio" | "getDebitExchangeRate" | "getPosition"): FunctionFragment; encodeFunctionData(functionFragment: "adjustLoan", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "closeLoanByDex", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "getCollateralParameters", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "getCurrentCollateralRatio", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "getDebitExchangeRate", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "getPosition", values: [PromiseOrValue, PromiseOrValue]): string; decodeFunctionResult(functionFragment: "adjustLoan", data: BytesLike): Result; decodeFunctionResult(functionFragment: "closeLoanByDex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getCollateralParameters", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getCurrentCollateralRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDebitExchangeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPosition", data: BytesLike): Result; events: { "AdjustedLoan(address,address,int128,int128)": EventFragment; "ClosedLoanByDex(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AdjustedLoan"): EventFragment; getEvent(nameOrSignatureOrTopic: "ClosedLoanByDex"): EventFragment; } export interface AdjustedLoanEventObject { sender: string; currencyId: string; collateralAdjustment: BigNumber; debitAdjustment: BigNumber; } export declare type AdjustedLoanEvent = TypedEvent<[ string, string, BigNumber, BigNumber ], AdjustedLoanEventObject>; export declare type AdjustedLoanEventFilter = TypedEventFilter; export interface ClosedLoanByDexEventObject { sender: string; currencyId: string; } export declare type ClosedLoanByDexEvent = TypedEvent<[ string, string ], ClosedLoanByDexEventObject>; export declare type ClosedLoanByDexEventFilter = TypedEventFilter; export interface IHonzon extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IHonzonInterface; 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: { adjustLoan(currencyId: PromiseOrValue, collateralAdjustment: PromiseOrValue, debitAdjustment: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; closeLoanByDex(currencyId: PromiseOrValue, maxCollateralAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getCollateralParameters(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber[]]>; getCurrentCollateralRatio(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; getDebitExchangeRate(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; getPosition(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>; }; adjustLoan(currencyId: PromiseOrValue, collateralAdjustment: PromiseOrValue, debitAdjustment: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; closeLoanByDex(currencyId: PromiseOrValue, maxCollateralAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getCollateralParameters(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getCurrentCollateralRatio(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getDebitExchangeRate(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getPosition(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>; callStatic: { adjustLoan(currencyId: PromiseOrValue, collateralAdjustment: PromiseOrValue, debitAdjustment: PromiseOrValue, overrides?: CallOverrides): Promise; closeLoanByDex(currencyId: PromiseOrValue, maxCollateralAmount: PromiseOrValue, overrides?: CallOverrides): Promise; getCollateralParameters(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getCurrentCollateralRatio(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getDebitExchangeRate(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getPosition(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>; }; filters: { "AdjustedLoan(address,address,int128,int128)"(sender?: PromiseOrValue | null, currencyId?: PromiseOrValue | null, collateralAdjustment?: null, debitAdjustment?: null): AdjustedLoanEventFilter; AdjustedLoan(sender?: PromiseOrValue | null, currencyId?: PromiseOrValue | null, collateralAdjustment?: null, debitAdjustment?: null): AdjustedLoanEventFilter; "ClosedLoanByDex(address,address)"(sender?: PromiseOrValue | null, currencyId?: PromiseOrValue | null): ClosedLoanByDexEventFilter; ClosedLoanByDex(sender?: PromiseOrValue | null, currencyId?: PromiseOrValue | null): ClosedLoanByDexEventFilter; }; estimateGas: { adjustLoan(currencyId: PromiseOrValue, collateralAdjustment: PromiseOrValue, debitAdjustment: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; closeLoanByDex(currencyId: PromiseOrValue, maxCollateralAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getCollateralParameters(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getCurrentCollateralRatio(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getDebitExchangeRate(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getPosition(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; }; populateTransaction: { adjustLoan(currencyId: PromiseOrValue, collateralAdjustment: PromiseOrValue, debitAdjustment: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; closeLoanByDex(currencyId: PromiseOrValue, maxCollateralAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getCollateralParameters(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getCurrentCollateralRatio(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getDebitExchangeRate(currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; getPosition(who: PromiseOrValue, currencyId: PromiseOrValue, overrides?: CallOverrides): Promise; }; }