/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, 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 type ForceWithdrawalInputStruct = { tranche: string; user: string; sharesToWithdraw: BigNumberish; }; export type ForceWithdrawalInputStructOutput = [string, string, BigNumber] & { tranche: string; user: string; sharesToWithdraw: BigNumber; }; export type CreateTrancheConfigStruct = { ratio: BigNumberish; interestRate: BigNumberish; minDepositAmount: BigNumberish; maxDepositAmount: BigNumberish; }; export type CreateTrancheConfigStructOutput = [ BigNumber, BigNumber, BigNumber, BigNumber ] & { ratio: BigNumber; interestRate: BigNumber; minDepositAmount: BigNumber; maxDepositAmount: BigNumber; }; export type CreatePoolConfigStruct = { poolName: string; poolSymbol: string; targetExcessLiquidityPercentage: BigNumberish; minExcessLiquidityPercentage: BigNumberish; tranches: CreateTrancheConfigStruct[]; poolAdmin: string; drawRecipient: string; desiredDrawAmount: BigNumberish; }; export type CreatePoolConfigStructOutput = [ string, string, BigNumber, BigNumber, CreateTrancheConfigStructOutput[], string, string, BigNumber ] & { poolName: string; poolSymbol: string; targetExcessLiquidityPercentage: BigNumber; minExcessLiquidityPercentage: BigNumber; tranches: CreateTrancheConfigStructOutput[]; poolAdmin: string; drawRecipient: string; desiredDrawAmount: BigNumber; }; export type LendingPoolDeploymentStruct = { lendingPool: string; pendingPool: string; tranches: string[]; }; export type LendingPoolDeploymentStructOutput = [string, string, string[]] & { lendingPool: string; pendingPool: string; tranches: string[]; }; export type ClearingConfigurationStruct = { drawAmount: BigNumberish; trancheDesiredRatios: BigNumberish[]; maxExcessPercentage: BigNumberish; minExcessPercentage: BigNumberish; }; export type ClearingConfigurationStructOutput = [ BigNumber, BigNumber[], BigNumber, BigNumber ] & { drawAmount: BigNumber; trancheDesiredRatios: BigNumber[]; maxExcessPercentage: BigNumber; minExcessPercentage: BigNumber; }; export type KycDataStruct = { blockExpiration: BigNumberish; signature: BytesLike; }; export type KycDataStructOutput = [BigNumber, string] & { blockExpiration: BigNumber; signature: string; }; export type LendingPoolWithdrawalConfigurationStruct = { requestEpochsInAdvance: BigNumberish; cancelRequestEpochsInAdvance: BigNumberish; }; export type LendingPoolWithdrawalConfigurationStructOutput = [ BigNumber, BigNumber ] & { requestEpochsInAdvance: BigNumber; cancelRequestEpochsInAdvance: BigNumber; }; export interface ILendingPoolManagerAbiInterface extends utils.Interface { functions: { "addLendingPoolTrancheFixedTermDeposit(address,address,uint256,uint256,bool)": FunctionFragment; "batchForceWithdrawals(address,(address,address,uint256)[])": FunctionFragment; "cancelDepositRequest(address,uint256)": FunctionFragment; "cancelFixedTermDepositWithdrawalRequest(address,uint256)": FunctionFragment; "cancelWithdrawalRequest(address,uint256)": FunctionFragment; "claimRepaidLoss(address,address,uint256)": FunctionFragment; "createPool((string,string,uint256,uint256,(uint256,uint256,uint256,uint256)[],address,address,uint256))": FunctionFragment; "depositFirstLossCapital(address,uint256)": FunctionFragment; "doClearing(address,uint256,uint256,uint256,uint256,(uint256,uint256[],uint256,uint256),bool)": FunctionFragment; "endFixedTermDeposit(address,uint256,uint256)": FunctionFragment; "forceCancelDepositRequest(address,uint256)": FunctionFragment; "forceCancelWithdrawalRequest(address,uint256)": FunctionFragment; "forceImmediateWithdrawal(address,address,address,uint256)": FunctionFragment; "initialize(address,address,address,address)": FunctionFragment; "isLendingPool(address)": FunctionFragment; "lendingPools(address)": FunctionFragment; "lockDepositForFixedTerm(address,address,uint256,uint256)": FunctionFragment; "repayLoss(address,address,uint256,uint256)": FunctionFragment; "repayOwedFunds(address,uint256,address)": FunctionFragment; "reportLoss(address,uint256,bool)": FunctionFragment; "requestDeposit(address,address,uint256,bytes,uint256,bytes)": FunctionFragment; "requestDepositWithKyc(address,address,uint256,bytes,uint256,bytes,(uint256,bytes))": FunctionFragment; "requestFixedTermDepositWithdrawal(address,uint256)": FunctionFragment; "requestWithdrawal(address,address,uint256)": FunctionFragment; "stopLendingPool(address)": FunctionFragment; "updateDesiredDrawAmount(address,uint256)": FunctionFragment; "updateDrawRecipient(address,address)": FunctionFragment; "updateFixedTermDepositAllowlist(address,uint256,address[],bool[])": FunctionFragment; "updateLendingPoolTrancheFixedInterestStatus(address,uint256,uint8)": FunctionFragment; "updateLendingPoolWithdrawalConfiguration(address,(uint128,uint128))": FunctionFragment; "updateMaximumDepositAmount(address,address,uint256)": FunctionFragment; "updateMinimumDepositAmount(address,address,uint256)": FunctionFragment; "updateMinimumExcessLiquidityPercentage(address,uint256)": FunctionFragment; "updateTargetExcessLiquidityPercentage(address,uint256)": FunctionFragment; "updateTrancheDesiredRatios(address,uint256[])": FunctionFragment; "updateTrancheInterestRate(address,address,uint256)": FunctionFragment; "updateTrancheInterestRateChangeEpochDelay(address,uint256)": FunctionFragment; "withdrawFirstLossCapital(address,uint256,address)": FunctionFragment; }; getFunction( nameOrSignatureOrTopic: | "addLendingPoolTrancheFixedTermDeposit" | "batchForceWithdrawals" | "cancelDepositRequest" | "cancelFixedTermDepositWithdrawalRequest" | "cancelWithdrawalRequest" | "claimRepaidLoss" | "createPool" | "depositFirstLossCapital" | "doClearing" | "endFixedTermDeposit" | "forceCancelDepositRequest" | "forceCancelWithdrawalRequest" | "forceImmediateWithdrawal" | "initialize" | "isLendingPool" | "lendingPools" | "lockDepositForFixedTerm" | "repayLoss" | "repayOwedFunds" | "reportLoss" | "requestDeposit" | "requestDepositWithKyc" | "requestFixedTermDepositWithdrawal" | "requestWithdrawal" | "stopLendingPool" | "updateDesiredDrawAmount" | "updateDrawRecipient" | "updateFixedTermDepositAllowlist" | "updateLendingPoolTrancheFixedInterestStatus" | "updateLendingPoolWithdrawalConfiguration" | "updateMaximumDepositAmount" | "updateMinimumDepositAmount" | "updateMinimumExcessLiquidityPercentage" | "updateTargetExcessLiquidityPercentage" | "updateTrancheDesiredRatios" | "updateTrancheInterestRate" | "updateTrancheInterestRateChangeEpochDelay" | "withdrawFirstLossCapital" ): FunctionFragment; encodeFunctionData( functionFragment: "addLendingPoolTrancheFixedTermDeposit", values: [string, string, BigNumberish, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "batchForceWithdrawals", values: [string, ForceWithdrawalInputStruct[]] ): string; encodeFunctionData( functionFragment: "cancelDepositRequest", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "cancelFixedTermDepositWithdrawalRequest", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "cancelWithdrawalRequest", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "claimRepaidLoss", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "createPool", values: [CreatePoolConfigStruct] ): string; encodeFunctionData( functionFragment: "depositFirstLossCapital", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "doClearing", values: [ string, BigNumberish, BigNumberish, BigNumberish, BigNumberish, ClearingConfigurationStruct, boolean ] ): string; encodeFunctionData( functionFragment: "endFixedTermDeposit", values: [string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "forceCancelDepositRequest", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "forceCancelWithdrawalRequest", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "forceImmediateWithdrawal", values: [string, string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "initialize", values: [string, string, string, string] ): string; encodeFunctionData( functionFragment: "isLendingPool", values: [string] ): string; encodeFunctionData( functionFragment: "lendingPools", values: [string] ): string; encodeFunctionData( functionFragment: "lockDepositForFixedTerm", values: [string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "repayLoss", values: [string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "repayOwedFunds", values: [string, BigNumberish, string] ): string; encodeFunctionData( functionFragment: "reportLoss", values: [string, BigNumberish, boolean] ): string; encodeFunctionData( functionFragment: "requestDeposit", values: [string, string, BigNumberish, BytesLike, BigNumberish, BytesLike] ): string; encodeFunctionData( functionFragment: "requestDepositWithKyc", values: [ string, string, BigNumberish, BytesLike, BigNumberish, BytesLike, KycDataStruct ] ): string; encodeFunctionData( functionFragment: "requestFixedTermDepositWithdrawal", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "requestWithdrawal", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "stopLendingPool", values: [string] ): string; encodeFunctionData( functionFragment: "updateDesiredDrawAmount", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateDrawRecipient", values: [string, string] ): string; encodeFunctionData( functionFragment: "updateFixedTermDepositAllowlist", values: [string, BigNumberish, string[], boolean[]] ): string; encodeFunctionData( functionFragment: "updateLendingPoolTrancheFixedInterestStatus", values: [string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateLendingPoolWithdrawalConfiguration", values: [string, LendingPoolWithdrawalConfigurationStruct] ): string; encodeFunctionData( functionFragment: "updateMaximumDepositAmount", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateMinimumDepositAmount", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateMinimumExcessLiquidityPercentage", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateTargetExcessLiquidityPercentage", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateTrancheDesiredRatios", values: [string, BigNumberish[]] ): string; encodeFunctionData( functionFragment: "updateTrancheInterestRate", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateTrancheInterestRateChangeEpochDelay", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "withdrawFirstLossCapital", values: [string, BigNumberish, string] ): string; decodeFunctionResult( functionFragment: "addLendingPoolTrancheFixedTermDeposit", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "batchForceWithdrawals", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "cancelDepositRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "cancelFixedTermDepositWithdrawalRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "cancelWithdrawalRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimRepaidLoss", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "createPool", data: BytesLike): Result; decodeFunctionResult( functionFragment: "depositFirstLossCapital", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "doClearing", data: BytesLike): Result; decodeFunctionResult( functionFragment: "endFixedTermDeposit", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "forceCancelDepositRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "forceCancelWithdrawalRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "forceImmediateWithdrawal", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "isLendingPool", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "lendingPools", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "lockDepositForFixedTerm", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "repayLoss", data: BytesLike): Result; decodeFunctionResult( functionFragment: "repayOwedFunds", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "reportLoss", data: BytesLike): Result; decodeFunctionResult( functionFragment: "requestDeposit", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestDepositWithKyc", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestFixedTermDepositWithdrawal", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestWithdrawal", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "stopLendingPool", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateDesiredDrawAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateDrawRecipient", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateFixedTermDepositAllowlist", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateLendingPoolTrancheFixedInterestStatus", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateLendingPoolWithdrawalConfiguration", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateMaximumDepositAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateMinimumDepositAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateMinimumExcessLiquidityPercentage", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateTargetExcessLiquidityPercentage", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateTrancheDesiredRatios", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateTrancheInterestRate", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateTrancheInterestRateChangeEpochDelay", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "withdrawFirstLossCapital", data: BytesLike ): Result; events: { "DepositDataAdded(address,uint256,bytes)": EventFragment; "Initialized(uint64)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "DepositDataAdded"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; } export interface DepositDataAddedEventObject { lendingPool: string; dNftID: BigNumber; data: string; } export type DepositDataAddedEvent = TypedEvent< [string, BigNumber, string], DepositDataAddedEventObject >; export type DepositDataAddedEventFilter = TypedEventFilter; export interface InitializedEventObject { version: BigNumber; } export type InitializedEvent = TypedEvent<[BigNumber], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface ILendingPoolManagerAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ILendingPoolManagerAbiInterface; 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: { addLendingPoolTrancheFixedTermDeposit( lendingPool: string, tranche: string, epochLockDuration: BigNumberish, epochInterestRate: BigNumberish, whitelistedOnly: boolean, overrides?: Overrides & { from?: string } ): Promise; batchForceWithdrawals( lendingPool: string, input: ForceWithdrawalInputStruct[], overrides?: Overrides & { from?: string } ): Promise; cancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelFixedTermDepositWithdrawalRequest( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; claimRepaidLoss( lendingPool: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; createPool( createPoolConfig: CreatePoolConfigStruct, overrides?: Overrides & { from?: string } ): Promise; depositFirstLossCapital( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; doClearing( lendingPool: string, targetEpoch: BigNumberish, fixedTermDepositBatchSize: BigNumberish, priorityCalculationBatchSize: BigNumberish, acceptRequestsBatchSize: BigNumberish, clearingConfigOverride: ClearingConfigurationStruct, isConfigOverridden: boolean, overrides?: Overrides & { from?: string } ): Promise; endFixedTermDeposit( lendingPool: string, fixedTermDepositId: BigNumberish, arrayIndex: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceImmediateWithdrawal( lendingPool: string, tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; initialize( lendingPoolFactory_: string, kasuAllowList_: string, userManager_: string, clearingCoordinator_: string, overrides?: Overrides & { from?: string } ): Promise; isLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise<[boolean]>; lendingPools( arg0: string, overrides?: CallOverrides ): Promise<[string, string] & { lendingPool: string; pendingPool: string }>; lockDepositForFixedTerm( lendingPool: string, tranche: string, amount: BigNumberish, fixedTermConfigId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayLoss( lendingPool: string, tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayOwedFunds( lendingPool: string, amount: BigNumberish, repaymentAddress: string, overrides?: Overrides & { from?: string } ): Promise; reportLoss( lendingPool: string, amount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & { from?: string } ): Promise; requestDeposit( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, overrides?: PayableOverrides & { from?: string } ): Promise; requestDepositWithKyc( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, kycData: KycDataStruct, overrides?: PayableOverrides & { from?: string } ): Promise; requestFixedTermDepositWithdrawal( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; requestWithdrawal( lendingPool: string, tranche: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; stopLendingPool( lendingPool: string, overrides?: Overrides & { from?: string } ): Promise; updateDesiredDrawAmount( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateDrawRecipient( lendingPool: string, drawRecipient: string, overrides?: Overrides & { from?: string } ): Promise; updateFixedTermDepositAllowlist( lendingPool: string, configId: BigNumberish, users: string[], isAllowedList: boolean[], overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolTrancheFixedInterestStatus( lendingPool: string, fixedTermConfigId: BigNumberish, fixedTermDepositStatus: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolWithdrawalConfiguration( lendingPool: string, withdrawalConfiguration: LendingPoolWithdrawalConfigurationStruct, overrides?: Overrides & { from?: string } ): Promise; updateMaximumDepositAmount( lendingPool: string, tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumDepositAmount( lendingPool: string, tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumExcessLiquidityPercentage( lendingPool: string, minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTargetExcessLiquidityPercentage( lendingPool: string, targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheDesiredRatios( lendingPool: string, desiredRatios: BigNumberish[], overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRate( lendingPool: string, tranche: string, interestRate: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRateChangeEpochDelay( lendingPool: string, epochDelay: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; withdrawFirstLossCapital( lendingPool: string, withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & { from?: string } ): Promise; }; addLendingPoolTrancheFixedTermDeposit( lendingPool: string, tranche: string, epochLockDuration: BigNumberish, epochInterestRate: BigNumberish, whitelistedOnly: boolean, overrides?: Overrides & { from?: string } ): Promise; batchForceWithdrawals( lendingPool: string, input: ForceWithdrawalInputStruct[], overrides?: Overrides & { from?: string } ): Promise; cancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelFixedTermDepositWithdrawalRequest( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; claimRepaidLoss( lendingPool: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; createPool( createPoolConfig: CreatePoolConfigStruct, overrides?: Overrides & { from?: string } ): Promise; depositFirstLossCapital( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; doClearing( lendingPool: string, targetEpoch: BigNumberish, fixedTermDepositBatchSize: BigNumberish, priorityCalculationBatchSize: BigNumberish, acceptRequestsBatchSize: BigNumberish, clearingConfigOverride: ClearingConfigurationStruct, isConfigOverridden: boolean, overrides?: Overrides & { from?: string } ): Promise; endFixedTermDeposit( lendingPool: string, fixedTermDepositId: BigNumberish, arrayIndex: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceImmediateWithdrawal( lendingPool: string, tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; initialize( lendingPoolFactory_: string, kasuAllowList_: string, userManager_: string, clearingCoordinator_: string, overrides?: Overrides & { from?: string } ): Promise; isLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise; lendingPools( arg0: string, overrides?: CallOverrides ): Promise<[string, string] & { lendingPool: string; pendingPool: string }>; lockDepositForFixedTerm( lendingPool: string, tranche: string, amount: BigNumberish, fixedTermConfigId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayLoss( lendingPool: string, tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayOwedFunds( lendingPool: string, amount: BigNumberish, repaymentAddress: string, overrides?: Overrides & { from?: string } ): Promise; reportLoss( lendingPool: string, amount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & { from?: string } ): Promise; requestDeposit( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, overrides?: PayableOverrides & { from?: string } ): Promise; requestDepositWithKyc( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, kycData: KycDataStruct, overrides?: PayableOverrides & { from?: string } ): Promise; requestFixedTermDepositWithdrawal( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; requestWithdrawal( lendingPool: string, tranche: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; stopLendingPool( lendingPool: string, overrides?: Overrides & { from?: string } ): Promise; updateDesiredDrawAmount( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateDrawRecipient( lendingPool: string, drawRecipient: string, overrides?: Overrides & { from?: string } ): Promise; updateFixedTermDepositAllowlist( lendingPool: string, configId: BigNumberish, users: string[], isAllowedList: boolean[], overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolTrancheFixedInterestStatus( lendingPool: string, fixedTermConfigId: BigNumberish, fixedTermDepositStatus: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolWithdrawalConfiguration( lendingPool: string, withdrawalConfiguration: LendingPoolWithdrawalConfigurationStruct, overrides?: Overrides & { from?: string } ): Promise; updateMaximumDepositAmount( lendingPool: string, tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumDepositAmount( lendingPool: string, tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumExcessLiquidityPercentage( lendingPool: string, minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTargetExcessLiquidityPercentage( lendingPool: string, targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheDesiredRatios( lendingPool: string, desiredRatios: BigNumberish[], overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRate( lendingPool: string, tranche: string, interestRate: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRateChangeEpochDelay( lendingPool: string, epochDelay: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; withdrawFirstLossCapital( lendingPool: string, withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & { from?: string } ): Promise; callStatic: { addLendingPoolTrancheFixedTermDeposit( lendingPool: string, tranche: string, epochLockDuration: BigNumberish, epochInterestRate: BigNumberish, whitelistedOnly: boolean, overrides?: CallOverrides ): Promise; batchForceWithdrawals( lendingPool: string, input: ForceWithdrawalInputStruct[], overrides?: CallOverrides ): Promise; cancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: CallOverrides ): Promise; cancelFixedTermDepositWithdrawalRequest( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: CallOverrides ): Promise; cancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: CallOverrides ): Promise; claimRepaidLoss( lendingPool: string, tranche: string, lossId: BigNumberish, overrides?: CallOverrides ): Promise; createPool( createPoolConfig: CreatePoolConfigStruct, overrides?: CallOverrides ): Promise; depositFirstLossCapital( lendingPool: string, amount: BigNumberish, overrides?: CallOverrides ): Promise; doClearing( lendingPool: string, targetEpoch: BigNumberish, fixedTermDepositBatchSize: BigNumberish, priorityCalculationBatchSize: BigNumberish, acceptRequestsBatchSize: BigNumberish, clearingConfigOverride: ClearingConfigurationStruct, isConfigOverridden: boolean, overrides?: CallOverrides ): Promise; endFixedTermDeposit( lendingPool: string, fixedTermDepositId: BigNumberish, arrayIndex: BigNumberish, overrides?: CallOverrides ): Promise; forceCancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: CallOverrides ): Promise; forceCancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: CallOverrides ): Promise; forceImmediateWithdrawal( lendingPool: string, tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: CallOverrides ): Promise; initialize( lendingPoolFactory_: string, kasuAllowList_: string, userManager_: string, clearingCoordinator_: string, overrides?: CallOverrides ): Promise; isLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise; lendingPools( arg0: string, overrides?: CallOverrides ): Promise<[string, string] & { lendingPool: string; pendingPool: string }>; lockDepositForFixedTerm( lendingPool: string, tranche: string, amount: BigNumberish, fixedTermConfigId: BigNumberish, overrides?: CallOverrides ): Promise; repayLoss( lendingPool: string, tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: CallOverrides ): Promise; repayOwedFunds( lendingPool: string, amount: BigNumberish, repaymentAddress: string, overrides?: CallOverrides ): Promise; reportLoss( lendingPool: string, amount: BigNumberish, doMintLossTokens: boolean, overrides?: CallOverrides ): Promise; requestDeposit( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, overrides?: CallOverrides ): Promise; requestDepositWithKyc( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, kycData: KycDataStruct, overrides?: CallOverrides ): Promise; requestFixedTermDepositWithdrawal( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: CallOverrides ): Promise; requestWithdrawal( lendingPool: string, tranche: string, amount: BigNumberish, overrides?: CallOverrides ): Promise; stopLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise; updateDesiredDrawAmount( lendingPool: string, amount: BigNumberish, overrides?: CallOverrides ): Promise; updateDrawRecipient( lendingPool: string, drawRecipient: string, overrides?: CallOverrides ): Promise; updateFixedTermDepositAllowlist( lendingPool: string, configId: BigNumberish, users: string[], isAllowedList: boolean[], overrides?: CallOverrides ): Promise; updateLendingPoolTrancheFixedInterestStatus( lendingPool: string, fixedTermConfigId: BigNumberish, fixedTermDepositStatus: BigNumberish, overrides?: CallOverrides ): Promise; updateLendingPoolWithdrawalConfiguration( lendingPool: string, withdrawalConfiguration: LendingPoolWithdrawalConfigurationStruct, overrides?: CallOverrides ): Promise; updateMaximumDepositAmount( lendingPool: string, tranche: string, maximumDepositAmount: BigNumberish, overrides?: CallOverrides ): Promise; updateMinimumDepositAmount( lendingPool: string, tranche: string, minimumDepositAmount: BigNumberish, overrides?: CallOverrides ): Promise; updateMinimumExcessLiquidityPercentage( lendingPool: string, minimumExcessLiquidityPercentage: BigNumberish, overrides?: CallOverrides ): Promise; updateTargetExcessLiquidityPercentage( lendingPool: string, targetExcessLiquidityPercentage: BigNumberish, overrides?: CallOverrides ): Promise; updateTrancheDesiredRatios( lendingPool: string, desiredRatios: BigNumberish[], overrides?: CallOverrides ): Promise; updateTrancheInterestRate( lendingPool: string, tranche: string, interestRate: BigNumberish, overrides?: CallOverrides ): Promise; updateTrancheInterestRateChangeEpochDelay( lendingPool: string, epochDelay: BigNumberish, overrides?: CallOverrides ): Promise; withdrawFirstLossCapital( lendingPool: string, withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: CallOverrides ): Promise; }; filters: { "DepositDataAdded(address,uint256,bytes)"( lendingPool?: string | null, dNftID?: BigNumberish | null, data?: null ): DepositDataAddedEventFilter; DepositDataAdded( lendingPool?: string | null, dNftID?: BigNumberish | null, data?: null ): DepositDataAddedEventFilter; "Initialized(uint64)"(version?: null): InitializedEventFilter; Initialized(version?: null): InitializedEventFilter; }; estimateGas: { addLendingPoolTrancheFixedTermDeposit( lendingPool: string, tranche: string, epochLockDuration: BigNumberish, epochInterestRate: BigNumberish, whitelistedOnly: boolean, overrides?: Overrides & { from?: string } ): Promise; batchForceWithdrawals( lendingPool: string, input: ForceWithdrawalInputStruct[], overrides?: Overrides & { from?: string } ): Promise; cancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelFixedTermDepositWithdrawalRequest( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; claimRepaidLoss( lendingPool: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; createPool( createPoolConfig: CreatePoolConfigStruct, overrides?: Overrides & { from?: string } ): Promise; depositFirstLossCapital( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; doClearing( lendingPool: string, targetEpoch: BigNumberish, fixedTermDepositBatchSize: BigNumberish, priorityCalculationBatchSize: BigNumberish, acceptRequestsBatchSize: BigNumberish, clearingConfigOverride: ClearingConfigurationStruct, isConfigOverridden: boolean, overrides?: Overrides & { from?: string } ): Promise; endFixedTermDeposit( lendingPool: string, fixedTermDepositId: BigNumberish, arrayIndex: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceImmediateWithdrawal( lendingPool: string, tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; initialize( lendingPoolFactory_: string, kasuAllowList_: string, userManager_: string, clearingCoordinator_: string, overrides?: Overrides & { from?: string } ): Promise; isLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise; lendingPools(arg0: string, overrides?: CallOverrides): Promise; lockDepositForFixedTerm( lendingPool: string, tranche: string, amount: BigNumberish, fixedTermConfigId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayLoss( lendingPool: string, tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayOwedFunds( lendingPool: string, amount: BigNumberish, repaymentAddress: string, overrides?: Overrides & { from?: string } ): Promise; reportLoss( lendingPool: string, amount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & { from?: string } ): Promise; requestDeposit( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, overrides?: PayableOverrides & { from?: string } ): Promise; requestDepositWithKyc( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, kycData: KycDataStruct, overrides?: PayableOverrides & { from?: string } ): Promise; requestFixedTermDepositWithdrawal( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; requestWithdrawal( lendingPool: string, tranche: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; stopLendingPool( lendingPool: string, overrides?: Overrides & { from?: string } ): Promise; updateDesiredDrawAmount( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateDrawRecipient( lendingPool: string, drawRecipient: string, overrides?: Overrides & { from?: string } ): Promise; updateFixedTermDepositAllowlist( lendingPool: string, configId: BigNumberish, users: string[], isAllowedList: boolean[], overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolTrancheFixedInterestStatus( lendingPool: string, fixedTermConfigId: BigNumberish, fixedTermDepositStatus: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolWithdrawalConfiguration( lendingPool: string, withdrawalConfiguration: LendingPoolWithdrawalConfigurationStruct, overrides?: Overrides & { from?: string } ): Promise; updateMaximumDepositAmount( lendingPool: string, tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumDepositAmount( lendingPool: string, tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumExcessLiquidityPercentage( lendingPool: string, minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTargetExcessLiquidityPercentage( lendingPool: string, targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheDesiredRatios( lendingPool: string, desiredRatios: BigNumberish[], overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRate( lendingPool: string, tranche: string, interestRate: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRateChangeEpochDelay( lendingPool: string, epochDelay: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; withdrawFirstLossCapital( lendingPool: string, withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & { from?: string } ): Promise; }; populateTransaction: { addLendingPoolTrancheFixedTermDeposit( lendingPool: string, tranche: string, epochLockDuration: BigNumberish, epochInterestRate: BigNumberish, whitelistedOnly: boolean, overrides?: Overrides & { from?: string } ): Promise; batchForceWithdrawals( lendingPool: string, input: ForceWithdrawalInputStruct[], overrides?: Overrides & { from?: string } ): Promise; cancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelFixedTermDepositWithdrawalRequest( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; cancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; claimRepaidLoss( lendingPool: string, tranche: string, lossId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; createPool( createPoolConfig: CreatePoolConfigStruct, overrides?: Overrides & { from?: string } ): Promise; depositFirstLossCapital( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; doClearing( lendingPool: string, targetEpoch: BigNumberish, fixedTermDepositBatchSize: BigNumberish, priorityCalculationBatchSize: BigNumberish, acceptRequestsBatchSize: BigNumberish, clearingConfigOverride: ClearingConfigurationStruct, isConfigOverridden: boolean, overrides?: Overrides & { from?: string } ): Promise; endFixedTermDeposit( lendingPool: string, fixedTermDepositId: BigNumberish, arrayIndex: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelDepositRequest( lendingPool: string, dNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceCancelWithdrawalRequest( lendingPool: string, wNftID: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; forceImmediateWithdrawal( lendingPool: string, tranche: string, user: string, sharesToWithdraw: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; initialize( lendingPoolFactory_: string, kasuAllowList_: string, userManager_: string, clearingCoordinator_: string, overrides?: Overrides & { from?: string } ): Promise; isLendingPool( lendingPool: string, overrides?: CallOverrides ): Promise; lendingPools( arg0: string, overrides?: CallOverrides ): Promise; lockDepositForFixedTerm( lendingPool: string, tranche: string, amount: BigNumberish, fixedTermConfigId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayLoss( lendingPool: string, tranche: string, lossId: BigNumberish, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; repayOwedFunds( lendingPool: string, amount: BigNumberish, repaymentAddress: string, overrides?: Overrides & { from?: string } ): Promise; reportLoss( lendingPool: string, amount: BigNumberish, doMintLossTokens: boolean, overrides?: Overrides & { from?: string } ): Promise; requestDeposit( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, overrides?: PayableOverrides & { from?: string } ): Promise; requestDepositWithKyc( lendingPool: string, tranche: string, maxAmount: BigNumberish, swapData: BytesLike, fixedTermConfigId: BigNumberish, depositData: BytesLike, kycData: KycDataStruct, overrides?: PayableOverrides & { from?: string } ): Promise; requestFixedTermDepositWithdrawal( lendingPool: string, fixedTermDepositId: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; requestWithdrawal( lendingPool: string, tranche: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; stopLendingPool( lendingPool: string, overrides?: Overrides & { from?: string } ): Promise; updateDesiredDrawAmount( lendingPool: string, amount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateDrawRecipient( lendingPool: string, drawRecipient: string, overrides?: Overrides & { from?: string } ): Promise; updateFixedTermDepositAllowlist( lendingPool: string, configId: BigNumberish, users: string[], isAllowedList: boolean[], overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolTrancheFixedInterestStatus( lendingPool: string, fixedTermConfigId: BigNumberish, fixedTermDepositStatus: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateLendingPoolWithdrawalConfiguration( lendingPool: string, withdrawalConfiguration: LendingPoolWithdrawalConfigurationStruct, overrides?: Overrides & { from?: string } ): Promise; updateMaximumDepositAmount( lendingPool: string, tranche: string, maximumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumDepositAmount( lendingPool: string, tranche: string, minimumDepositAmount: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateMinimumExcessLiquidityPercentage( lendingPool: string, minimumExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTargetExcessLiquidityPercentage( lendingPool: string, targetExcessLiquidityPercentage: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheDesiredRatios( lendingPool: string, desiredRatios: BigNumberish[], overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRate( lendingPool: string, tranche: string, interestRate: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; updateTrancheInterestRateChangeEpochDelay( lendingPool: string, epochDelay: BigNumberish, overrides?: Overrides & { from?: string } ): Promise; withdrawFirstLossCapital( lendingPool: string, withdrawAmount: BigNumberish, withdrawAddress: string, overrides?: Overrides & { from?: string } ): Promise; }; }