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 FixedTermLoanV6InitializerAbiInterface extends utils.Interface { functions: { "decodeArguments(bytes)": FunctionFragment; "encodeArguments(address,address,address,address[2],uint256[3],uint256[3],uint256[4],uint256[2])": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "decodeArguments" | "encodeArguments"): FunctionFragment; encodeFunctionData(functionFragment: "decodeArguments", values: [BytesLike]): string; encodeFunctionData(functionFragment: "encodeArguments", values: [ string, string, string, [ string, string ], [ BigNumberish, BigNumberish, BigNumberish ], [ BigNumberish, BigNumberish, BigNumberish ], [ BigNumberish, BigNumberish, BigNumberish, BigNumberish ], [ BigNumberish, BigNumberish ] ]): string; decodeFunctionResult(functionFragment: "decodeArguments", data: BytesLike): Result; decodeFunctionResult(functionFragment: "encodeArguments", data: BytesLike): Result; events: { "BorrowerAccepted(address)": EventFragment; "CollateralPosted(uint256)": EventFragment; "CollateralRemoved(uint256,address)": EventFragment; "Funded(address,uint256,uint256)": EventFragment; "FundsClaimed(uint256,address)": EventFragment; "FundsDrawnDown(uint256,address)": EventFragment; "FundsReturned(uint256)": EventFragment; "ImpairmentRemoved(uint256)": EventFragment; "Initialized(address,address,address,address[2],uint256[3],uint256[3],uint256[4],uint256[2])": EventFragment; "LenderAccepted(address)": EventFragment; "LoanClosed(uint256,uint256,uint256)": EventFragment; "LoanImpaired(uint256)": EventFragment; "LoanTermsAccepted()": EventFragment; "NewTermsAccepted(bytes32,address,uint256,bytes[])": EventFragment; "NewTermsProposed(bytes32,address,uint256,bytes[])": EventFragment; "NewTermsRejected(bytes32,address,uint256,bytes[])": EventFragment; "PaymentMade(uint256,uint256,uint256)": EventFragment; "PendingBorrowerSet(address)": EventFragment; "PendingLenderSet(address)": EventFragment; "Repossessed(uint256,uint256,address)": EventFragment; "Skimmed(address,uint256,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "BorrowerAccepted"): EventFragment; getEvent(nameOrSignatureOrTopic: "CollateralPosted"): EventFragment; getEvent(nameOrSignatureOrTopic: "CollateralRemoved"): EventFragment; getEvent(nameOrSignatureOrTopic: "Funded"): EventFragment; getEvent(nameOrSignatureOrTopic: "FundsClaimed"): EventFragment; getEvent(nameOrSignatureOrTopic: "FundsDrawnDown"): EventFragment; getEvent(nameOrSignatureOrTopic: "FundsReturned"): EventFragment; getEvent(nameOrSignatureOrTopic: "ImpairmentRemoved"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "LenderAccepted"): EventFragment; getEvent(nameOrSignatureOrTopic: "LoanClosed"): EventFragment; getEvent(nameOrSignatureOrTopic: "LoanImpaired"): EventFragment; getEvent(nameOrSignatureOrTopic: "LoanTermsAccepted"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewTermsAccepted"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewTermsProposed"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewTermsRejected"): EventFragment; getEvent(nameOrSignatureOrTopic: "PaymentMade"): EventFragment; getEvent(nameOrSignatureOrTopic: "PendingBorrowerSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "PendingLenderSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "Repossessed"): EventFragment; getEvent(nameOrSignatureOrTopic: "Skimmed"): EventFragment; } export interface BorrowerAcceptedEventObject { borrower_: string; } export type BorrowerAcceptedEvent = TypedEvent<[ string ], BorrowerAcceptedEventObject>; export type BorrowerAcceptedEventFilter = TypedEventFilter; export interface CollateralPostedEventObject { amount_: BigNumber; } export type CollateralPostedEvent = TypedEvent<[ BigNumber ], CollateralPostedEventObject>; export type CollateralPostedEventFilter = TypedEventFilter; export interface CollateralRemovedEventObject { amount_: BigNumber; destination_: string; } export type CollateralRemovedEvent = TypedEvent<[ BigNumber, string ], CollateralRemovedEventObject>; export type CollateralRemovedEventFilter = TypedEventFilter; export interface FundedEventObject { lender_: string; amount_: BigNumber; nextPaymentDueDate_: BigNumber; } export type FundedEvent = TypedEvent<[ string, BigNumber, BigNumber ], FundedEventObject>; export type FundedEventFilter = TypedEventFilter; export interface FundsClaimedEventObject { amount_: BigNumber; destination_: string; } export type FundsClaimedEvent = TypedEvent<[ BigNumber, string ], FundsClaimedEventObject>; export type FundsClaimedEventFilter = TypedEventFilter; export interface FundsDrawnDownEventObject { amount_: BigNumber; destination_: string; } export type FundsDrawnDownEvent = TypedEvent<[ BigNumber, string ], FundsDrawnDownEventObject>; export type FundsDrawnDownEventFilter = TypedEventFilter; export interface FundsReturnedEventObject { amount_: BigNumber; } export type FundsReturnedEvent = TypedEvent<[ BigNumber ], FundsReturnedEventObject>; export type FundsReturnedEventFilter = TypedEventFilter; export interface ImpairmentRemovedEventObject { nextPaymentDueDate_: BigNumber; } export type ImpairmentRemovedEvent = TypedEvent<[ BigNumber ], ImpairmentRemovedEventObject>; export type ImpairmentRemovedEventFilter = TypedEventFilter; export interface InitializedEventObject { borrower_: string; lender_: string; feeManager_: string; assets_: [string, string]; termDetails_: [BigNumber, BigNumber, BigNumber]; amounts_: [BigNumber, BigNumber, BigNumber]; rates_: [BigNumber, BigNumber, BigNumber, BigNumber]; fees_: [BigNumber, BigNumber]; } export type InitializedEvent = TypedEvent<[ string, string, string, [ string, string ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber ] ], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface LenderAcceptedEventObject { lender_: string; } export type LenderAcceptedEvent = TypedEvent<[ string ], LenderAcceptedEventObject>; export type LenderAcceptedEventFilter = TypedEventFilter; export interface LoanClosedEventObject { principalPaid_: BigNumber; interestPaid_: BigNumber; feesPaid_: BigNumber; } export type LoanClosedEvent = TypedEvent<[ BigNumber, BigNumber, BigNumber ], LoanClosedEventObject>; export type LoanClosedEventFilter = TypedEventFilter; export interface LoanImpairedEventObject { nextPaymentDueDate_: BigNumber; } export type LoanImpairedEvent = TypedEvent<[ BigNumber ], LoanImpairedEventObject>; export type LoanImpairedEventFilter = TypedEventFilter; export interface LoanTermsAcceptedEventObject { } export type LoanTermsAcceptedEvent = TypedEvent<[ ], LoanTermsAcceptedEventObject>; export type LoanTermsAcceptedEventFilter = TypedEventFilter; export interface NewTermsAcceptedEventObject { refinanceCommitment_: string; refinancer_: string; deadline_: BigNumber; calls_: string[]; } export type NewTermsAcceptedEvent = TypedEvent<[ string, string, BigNumber, string[] ], NewTermsAcceptedEventObject>; export type NewTermsAcceptedEventFilter = TypedEventFilter; export interface NewTermsProposedEventObject { refinanceCommitment_: string; refinancer_: string; deadline_: BigNumber; calls_: string[]; } export type NewTermsProposedEvent = TypedEvent<[ string, string, BigNumber, string[] ], NewTermsProposedEventObject>; export type NewTermsProposedEventFilter = TypedEventFilter; export interface NewTermsRejectedEventObject { refinanceCommitment_: string; refinancer_: string; deadline_: BigNumber; calls_: string[]; } export type NewTermsRejectedEvent = TypedEvent<[ string, string, BigNumber, string[] ], NewTermsRejectedEventObject>; export type NewTermsRejectedEventFilter = TypedEventFilter; export interface PaymentMadeEventObject { principalPaid_: BigNumber; interestPaid_: BigNumber; fees_: BigNumber; } export type PaymentMadeEvent = TypedEvent<[ BigNumber, BigNumber, BigNumber ], PaymentMadeEventObject>; export type PaymentMadeEventFilter = TypedEventFilter; export interface PendingBorrowerSetEventObject { pendingBorrower_: string; } export type PendingBorrowerSetEvent = TypedEvent<[ string ], PendingBorrowerSetEventObject>; export type PendingBorrowerSetEventFilter = TypedEventFilter; export interface PendingLenderSetEventObject { pendingLender_: string; } export type PendingLenderSetEvent = TypedEvent<[ string ], PendingLenderSetEventObject>; export type PendingLenderSetEventFilter = TypedEventFilter; export interface RepossessedEventObject { collateralRepossessed_: BigNumber; fundsRepossessed_: BigNumber; destination_: string; } export type RepossessedEvent = TypedEvent<[ BigNumber, BigNumber, string ], RepossessedEventObject>; export type RepossessedEventFilter = TypedEventFilter; export interface SkimmedEventObject { token_: string; amount_: BigNumber; destination_: string; } export type SkimmedEvent = TypedEvent<[ string, BigNumber, string ], SkimmedEventObject>; export type SkimmedEventFilter = TypedEventFilter; export interface FixedTermLoanV6InitializerAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: FixedTermLoanV6InitializerAbiInterface; 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: { decodeArguments(encodedArguments_: BytesLike, overrides?: CallOverrides): Promise<[ string, string, string, [ string, string ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber ] ] & { borrower_: string; lender_: string; feeManager_: string; assets_: [string, string]; termDetails_: [BigNumber, BigNumber, BigNumber]; amounts_: [BigNumber, BigNumber, BigNumber]; rates_: [BigNumber, BigNumber, BigNumber, BigNumber]; fees_: [BigNumber, BigNumber]; }>; encodeArguments(borrower_: string, lender_: string, feeManager_: string, assets_: [string, string], termDetails_: [BigNumberish, BigNumberish, BigNumberish], amounts_: [BigNumberish, BigNumberish, BigNumberish], rates_: [BigNumberish, BigNumberish, BigNumberish, BigNumberish], fees_: [BigNumberish, BigNumberish], overrides?: CallOverrides): Promise<[string] & { encodedArguments_: string; }>; }; decodeArguments(encodedArguments_: BytesLike, overrides?: CallOverrides): Promise<[ string, string, string, [ string, string ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber ] ] & { borrower_: string; lender_: string; feeManager_: string; assets_: [string, string]; termDetails_: [BigNumber, BigNumber, BigNumber]; amounts_: [BigNumber, BigNumber, BigNumber]; rates_: [BigNumber, BigNumber, BigNumber, BigNumber]; fees_: [BigNumber, BigNumber]; }>; encodeArguments(borrower_: string, lender_: string, feeManager_: string, assets_: [string, string], termDetails_: [BigNumberish, BigNumberish, BigNumberish], amounts_: [BigNumberish, BigNumberish, BigNumberish], rates_: [BigNumberish, BigNumberish, BigNumberish, BigNumberish], fees_: [BigNumberish, BigNumberish], overrides?: CallOverrides): Promise; callStatic: { decodeArguments(encodedArguments_: BytesLike, overrides?: CallOverrides): Promise<[ string, string, string, [ string, string ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber, BigNumber, BigNumber ], [ BigNumber, BigNumber ] ] & { borrower_: string; lender_: string; feeManager_: string; assets_: [string, string]; termDetails_: [BigNumber, BigNumber, BigNumber]; amounts_: [BigNumber, BigNumber, BigNumber]; rates_: [BigNumber, BigNumber, BigNumber, BigNumber]; fees_: [BigNumber, BigNumber]; }>; encodeArguments(borrower_: string, lender_: string, feeManager_: string, assets_: [string, string], termDetails_: [BigNumberish, BigNumberish, BigNumberish], amounts_: [BigNumberish, BigNumberish, BigNumberish], rates_: [BigNumberish, BigNumberish, BigNumberish, BigNumberish], fees_: [BigNumberish, BigNumberish], overrides?: CallOverrides): Promise; }; filters: { "BorrowerAccepted(address)"(borrower_?: string | null): BorrowerAcceptedEventFilter; BorrowerAccepted(borrower_?: string | null): BorrowerAcceptedEventFilter; "CollateralPosted(uint256)"(amount_?: null): CollateralPostedEventFilter; CollateralPosted(amount_?: null): CollateralPostedEventFilter; "CollateralRemoved(uint256,address)"(amount_?: null, destination_?: string | null): CollateralRemovedEventFilter; CollateralRemoved(amount_?: null, destination_?: string | null): CollateralRemovedEventFilter; "Funded(address,uint256,uint256)"(lender_?: string | null, amount_?: null, nextPaymentDueDate_?: null): FundedEventFilter; Funded(lender_?: string | null, amount_?: null, nextPaymentDueDate_?: null): FundedEventFilter; "FundsClaimed(uint256,address)"(amount_?: null, destination_?: string | null): FundsClaimedEventFilter; FundsClaimed(amount_?: null, destination_?: string | null): FundsClaimedEventFilter; "FundsDrawnDown(uint256,address)"(amount_?: null, destination_?: string | null): FundsDrawnDownEventFilter; FundsDrawnDown(amount_?: null, destination_?: string | null): FundsDrawnDownEventFilter; "FundsReturned(uint256)"(amount_?: null): FundsReturnedEventFilter; FundsReturned(amount_?: null): FundsReturnedEventFilter; "ImpairmentRemoved(uint256)"(nextPaymentDueDate_?: null): ImpairmentRemovedEventFilter; ImpairmentRemoved(nextPaymentDueDate_?: null): ImpairmentRemovedEventFilter; "Initialized(address,address,address,address[2],uint256[3],uint256[3],uint256[4],uint256[2])"(borrower_?: string | null, lender_?: string | null, feeManager_?: string | null, assets_?: null, termDetails_?: null, amounts_?: null, rates_?: null, fees_?: null): InitializedEventFilter; Initialized(borrower_?: string | null, lender_?: string | null, feeManager_?: string | null, assets_?: null, termDetails_?: null, amounts_?: null, rates_?: null, fees_?: null): InitializedEventFilter; "LenderAccepted(address)"(lender_?: string | null): LenderAcceptedEventFilter; LenderAccepted(lender_?: string | null): LenderAcceptedEventFilter; "LoanClosed(uint256,uint256,uint256)"(principalPaid_?: null, interestPaid_?: null, feesPaid_?: null): LoanClosedEventFilter; LoanClosed(principalPaid_?: null, interestPaid_?: null, feesPaid_?: null): LoanClosedEventFilter; "LoanImpaired(uint256)"(nextPaymentDueDate_?: null): LoanImpairedEventFilter; LoanImpaired(nextPaymentDueDate_?: null): LoanImpairedEventFilter; "LoanTermsAccepted()"(): LoanTermsAcceptedEventFilter; LoanTermsAccepted(): LoanTermsAcceptedEventFilter; "NewTermsAccepted(bytes32,address,uint256,bytes[])"(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsAcceptedEventFilter; NewTermsAccepted(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsAcceptedEventFilter; "NewTermsProposed(bytes32,address,uint256,bytes[])"(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsProposedEventFilter; NewTermsProposed(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsProposedEventFilter; "NewTermsRejected(bytes32,address,uint256,bytes[])"(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsRejectedEventFilter; NewTermsRejected(refinanceCommitment_?: null, refinancer_?: null, deadline_?: null, calls_?: null): NewTermsRejectedEventFilter; "PaymentMade(uint256,uint256,uint256)"(principalPaid_?: null, interestPaid_?: null, fees_?: null): PaymentMadeEventFilter; PaymentMade(principalPaid_?: null, interestPaid_?: null, fees_?: null): PaymentMadeEventFilter; "PendingBorrowerSet(address)"(pendingBorrower_?: null): PendingBorrowerSetEventFilter; PendingBorrowerSet(pendingBorrower_?: null): PendingBorrowerSetEventFilter; "PendingLenderSet(address)"(pendingLender_?: null): PendingLenderSetEventFilter; PendingLenderSet(pendingLender_?: null): PendingLenderSetEventFilter; "Repossessed(uint256,uint256,address)"(collateralRepossessed_?: null, fundsRepossessed_?: null, destination_?: string | null): RepossessedEventFilter; Repossessed(collateralRepossessed_?: null, fundsRepossessed_?: null, destination_?: string | null): RepossessedEventFilter; "Skimmed(address,uint256,address)"(token_?: string | null, amount_?: null, destination_?: string | null): SkimmedEventFilter; Skimmed(token_?: string | null, amount_?: null, destination_?: string | null): SkimmedEventFilter; }; estimateGas: { decodeArguments(encodedArguments_: BytesLike, overrides?: CallOverrides): Promise; encodeArguments(borrower_: string, lender_: string, feeManager_: string, assets_: [string, string], termDetails_: [BigNumberish, BigNumberish, BigNumberish], amounts_: [BigNumberish, BigNumberish, BigNumberish], rates_: [BigNumberish, BigNumberish, BigNumberish, BigNumberish], fees_: [BigNumberish, BigNumberish], overrides?: CallOverrides): Promise; }; populateTransaction: { decodeArguments(encodedArguments_: BytesLike, overrides?: CallOverrides): Promise; encodeArguments(borrower_: string, lender_: string, feeManager_: string, assets_: [string, string], termDetails_: [BigNumberish, BigNumberish, BigNumberish], amounts_: [BigNumberish, BigNumberish, BigNumberish], rates_: [BigNumberish, BigNumberish, BigNumberish, BigNumberish], fees_: [BigNumberish, BigNumberish], overrides?: CallOverrides): Promise; }; }