Properties
Static
LOAN_SETTLEMENT_ENCODE_TYPES
LOAN_SETTLEMENT_ENCODE_TYPES: {
name: string;
type: string;
components: ({
name: string;
type: string;
components?: undefined;
} | {
name: string;
type: string;
components: {
name: string;
internalType: string;
type: string;
}[];
})[];
}[] = ...
Type declaration
-
name: string
-
type: string
-
components: ({
name: string;
type: string;
components?: undefined;
} | {
name: string;
type: string;
components: {
name: string;
internalType: string;
type: string;
}[];
})[]
abi
abi: readonly [{
stateMutability: "nonpayable";
type: "constructor";
inputs: readonly [{
name: "currencyManager";
internalType: "address";
type: "address";
}, {
name: "collectionManager";
internalType: "address";
type: "address";
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
}, {
type: "error";
inputs: readonly [];
name: "AuctionAlreadyInProgressError";
}, {
type: "error";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "AuctionNotExistsError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionNotOverError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionOverError";
}, {
type: "error";
inputs: readonly [];
name: "CollectionNotWhitelistedError";
}, {
type: "error";
inputs: readonly [];
name: "CurrencyNotWhitelistedError";
}, {
type: "error";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "InvalidTriggerFee";
}, {
type: "error";
inputs: readonly [{
name: "_loan";
internalType: "address";
type: "address";
}];
name: "LoanNotAcceptedError";
}, {
type: "error";
inputs: readonly [{
name: "_minBid";
internalType: "uint256";
type: "uint256";
}];
name: "MinBidError";
}, {
type: "error";
inputs: readonly [{
name: "_owner";
internalType: "address";
type: "address";
}];
name: "NFTNotOwnedError";
}, {
type: "error";
inputs: readonly [];
name: "NoBidsError";
}, {
type: "error";
inputs: readonly [];
name: "ZeroAddressError";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "settler";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "AuctionSettled";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "newBidder";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "bid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "BidPlaced";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractAdded";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractRemoved";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanLiquidationStarted";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "user";
internalType: "address";
type: "address";
indexed: true;
}, {
name: "newOwner";
internalType: "address";
type: "address";
indexed: true;
}];
name: "OwnershipTransferred";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "TriggerFeeUpdated";
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MAX_TRIGGER_FEE";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MIN_INCREMENT_BPS";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "addLoanContract";
outputs: readonly [];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "getAuction";
outputs: readonly [{
name: "";
internalType: "struct AuctionLoanLiquidator.Auction";
type: "tuple";
components: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBidder";
internalType: "address";
type: "address";
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
}, {
name: "asset";
internalType: "address";
type: "address";
}, {
name: "startTime";
internalType: "uint96";
type: "uint96";
}, {
name: "originator";
internalType: "address";
type: "address";
}, {
name: "lastBidTime";
internalType: "uint96";
type: "uint96";
}];
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getTriggerFee";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getValidLoanContracts";
outputs: readonly [{
name: "";
internalType: "address[]";
type: "address[]";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_asset";
internalType: "address";
type: "address";
}, {
name: "_duration";
internalType: "uint96";
type: "uint96";
}, {
name: "_originator";
internalType: "address";
type: "address";
}];
name: "liquidateLoan";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "uint256";
type: "uint256";
}, {
name: "";
internalType: "bytes";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
name: "";
internalType: "bytes4";
type: "bytes4";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "owner";
outputs: readonly [{
name: "";
internalType: "address";
type: "address";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_bid";
internalType: "uint256";
type: "uint256";
}];
name: "placeBid";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "removeLoanContract";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_loan";
internalType: "bytes";
type: "bytes";
}];
name: "settleAuction";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "newOwner";
internalType: "address";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "updateTriggerFee";
outputs: readonly [];
}]
address
address: `0x${string}`
contract
contract: GetContractReturnType<readonly [{
stateMutability: "nonpayable";
type: "constructor";
inputs: readonly [{
name: "currencyManager";
internalType: "address";
type: "address";
}, {
name: "collectionManager";
internalType: "address";
type: "address";
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
}, {
type: "error";
inputs: readonly [];
name: "AuctionAlreadyInProgressError";
}, {
type: "error";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "AuctionNotExistsError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionNotOverError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionOverError";
}, {
type: "error";
inputs: readonly [];
name: "CollectionNotWhitelistedError";
}, {
type: "error";
inputs: readonly [];
name: "CurrencyNotWhitelistedError";
}, {
type: "error";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "InvalidTriggerFee";
}, {
type: "error";
inputs: readonly [{
name: "_loan";
internalType: "address";
type: "address";
}];
name: "LoanNotAcceptedError";
}, {
type: "error";
inputs: readonly [{
name: "_minBid";
internalType: "uint256";
type: "uint256";
}];
name: "MinBidError";
}, {
type: "error";
inputs: readonly [{
name: "_owner";
internalType: "address";
type: "address";
}];
name: "NFTNotOwnedError";
}, {
type: "error";
inputs: readonly [];
name: "NoBidsError";
}, {
type: "error";
inputs: readonly [];
name: "ZeroAddressError";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "settler";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "AuctionSettled";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "newBidder";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "bid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "BidPlaced";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractAdded";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractRemoved";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanLiquidationStarted";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "user";
internalType: "address";
type: "address";
indexed: true;
}, {
name: "newOwner";
internalType: "address";
type: "address";
indexed: true;
}];
name: "OwnershipTransferred";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "TriggerFeeUpdated";
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MAX_TRIGGER_FEE";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MIN_INCREMENT_BPS";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "addLoanContract";
outputs: readonly [];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "getAuction";
outputs: readonly [{
name: "";
internalType: "struct AuctionLoanLiquidator.Auction";
type: "tuple";
components: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBidder";
internalType: "address";
type: "address";
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
}, {
name: "asset";
internalType: "address";
type: "address";
}, {
name: "startTime";
internalType: "uint96";
type: "uint96";
}, {
name: "originator";
internalType: "address";
type: "address";
}, {
name: "lastBidTime";
internalType: "uint96";
type: "uint96";
}];
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getTriggerFee";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getValidLoanContracts";
outputs: readonly [{
name: "";
internalType: "address[]";
type: "address[]";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_asset";
internalType: "address";
type: "address";
}, {
name: "_duration";
internalType: "uint96";
type: "uint96";
}, {
name: "_originator";
internalType: "address";
type: "address";
}];
name: "liquidateLoan";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "uint256";
type: "uint256";
}, {
name: "";
internalType: "bytes";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
name: "";
internalType: "bytes4";
type: "bytes4";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "owner";
outputs: readonly [{
name: "";
internalType: "address";
type: "address";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_bid";
internalType: "uint256";
type: "uint256";
}];
name: "placeBid";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "removeLoanContract";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_loan";
internalType: "bytes";
type: "bytes";
}];
name: "settleAuction";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "newOwner";
internalType: "address";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "updateTriggerFee";
outputs: readonly [];
}], {} | {}>
safeContractWrite
safeContractWrite: {
transferOwnership: ((args, options?) => Promise<`0x${string}`>);
addLoanContract: ((args, options?) => Promise<`0x${string}`>);
liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
onERC721Received: ((args, options?) => Promise<`0x${string}`>);
placeBid: ((args, options?) => Promise<`0x${string}`>);
removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
settleAuction: ((args, options?) => Promise<`0x${string}`>);
updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
}
Type declaration
-
transferOwnership: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
addLoanContract: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [bigint, `0x${string}`, bigint, `0x${string}`, bigint, `0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
onERC721Received: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
placeBid: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`, bigint, bigint]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
removeLoanContract: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
settleAuction: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [`0x${string}`, bigint, `0x${string}`]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
-
updateTriggerFee: ((args, options?) => Promise<`0x${string}`>)
-
- (args, options?): Promise<`0x${string}`>
-
Parameters
-
args: readonly [bigint]
-
Optional
options: {
value?: bigint;
}
Returns Promise<`0x${string}`>
parseEventLogs
parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
stateMutability: "nonpayable";
type: "constructor";
inputs: readonly [{
name: "currencyManager";
internalType: "address";
type: "address";
}, {
name: "collectionManager";
internalType: "address";
type: "address";
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
}, {
type: "error";
inputs: readonly [];
name: "AuctionAlreadyInProgressError";
}, {
type: "error";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "AuctionNotExistsError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionNotOverError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionOverError";
}, {
type: "error";
inputs: readonly [];
name: "CollectionNotWhitelistedError";
}, {
type: "error";
inputs: readonly [];
name: "CurrencyNotWhitelistedError";
}, {
type: "error";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "InvalidTriggerFee";
}, {
type: "error";
inputs: readonly [{
name: "_loan";
internalType: "address";
type: "address";
}];
name: "LoanNotAcceptedError";
}, {
type: "error";
inputs: readonly [{
name: "_minBid";
internalType: "uint256";
type: "uint256";
}];
name: "MinBidError";
}, {
type: "error";
inputs: readonly [{
name: "_owner";
internalType: "address";
type: "address";
}];
name: "NFTNotOwnedError";
}, {
type: "error";
inputs: readonly [];
name: "NoBidsError";
}, {
type: "error";
inputs: readonly [];
name: "ZeroAddressError";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "settler";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "AuctionSettled";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "newBidder";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "bid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "BidPlaced";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractAdded";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractRemoved";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanLiquidationStarted";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "user";
internalType: "address";
type: "address";
indexed: true;
}, {
name: "newOwner";
internalType: "address";
type: "address";
indexed: true;
}];
name: "OwnershipTransferred";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "TriggerFeeUpdated";
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MAX_TRIGGER_FEE";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MIN_INCREMENT_BPS";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "addLoanContract";
outputs: readonly [];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "getAuction";
outputs: readonly [{
name: "";
internalType: "struct AuctionLoanLiquidator.Auction";
type: "tuple";
components: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBidder";
internalType: "address";
type: "address";
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
}, {
name: "asset";
internalType: "address";
type: "address";
}, {
name: "startTime";
internalType: "uint96";
type: "uint96";
}, {
name: "originator";
internalType: "address";
type: "address";
}, {
name: "lastBidTime";
internalType: "uint96";
type: "uint96";
}];
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getTriggerFee";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getValidLoanContracts";
outputs: readonly [{
name: "";
internalType: "address[]";
type: "address[]";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_asset";
internalType: "address";
type: "address";
}, {
name: "_duration";
internalType: "uint96";
type: "uint96";
}, {
name: "_originator";
internalType: "address";
type: "address";
}];
name: "liquidateLoan";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "uint256";
type: "uint256";
}, {
name: "";
internalType: "bytes";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
name: "";
internalType: "bytes4";
type: "bytes4";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "owner";
outputs: readonly [{
name: "";
internalType: "address";
type: "address";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_bid";
internalType: "uint256";
type: "uint256";
}];
name: "placeBid";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "removeLoanContract";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_loan";
internalType: "bytes";
type: "bytes";
}];
name: "settleAuction";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "newOwner";
internalType: "address";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "updateTriggerFee";
outputs: readonly [];
}], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
? TFunctionName[number]
: TFunctionName>)
Type declaration
-
- <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
stateMutability: "nonpayable";
type: "constructor";
inputs: readonly [{
name: "currencyManager";
internalType: "address";
type: "address";
}, {
name: "collectionManager";
internalType: "address";
type: "address";
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
}, {
type: "error";
inputs: readonly [];
name: "AuctionAlreadyInProgressError";
}, {
type: "error";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "AuctionNotExistsError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionNotOverError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionOverError";
}, {
type: "error";
inputs: readonly [];
name: "CollectionNotWhitelistedError";
}, {
type: "error";
inputs: readonly [];
name: "CurrencyNotWhitelistedError";
}, {
type: "error";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "InvalidTriggerFee";
}, {
type: "error";
inputs: readonly [{
name: "_loan";
internalType: "address";
type: "address";
}];
name: "LoanNotAcceptedError";
}, {
type: "error";
inputs: readonly [{
name: "_minBid";
internalType: "uint256";
type: "uint256";
}];
name: "MinBidError";
}, {
type: "error";
inputs: readonly [{
name: "_owner";
internalType: "address";
type: "address";
}];
name: "NFTNotOwnedError";
}, {
type: "error";
inputs: readonly [];
name: "NoBidsError";
}, {
type: "error";
inputs: readonly [];
name: "ZeroAddressError";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "settler";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "AuctionSettled";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "newBidder";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "bid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "BidPlaced";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractAdded";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractRemoved";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanLiquidationStarted";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "user";
internalType: "address";
type: "address";
indexed: true;
}, {
name: "newOwner";
internalType: "address";
type: "address";
indexed: true;
}];
name: "OwnershipTransferred";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "TriggerFeeUpdated";
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MAX_TRIGGER_FEE";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MIN_INCREMENT_BPS";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "addLoanContract";
outputs: readonly [];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "getAuction";
outputs: readonly [{
name: "";
internalType: "struct AuctionLoanLiquidator.Auction";
type: "tuple";
components: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBidder";
internalType: "address";
type: "address";
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
}, {
name: "asset";
internalType: "address";
type: "address";
}, {
name: "startTime";
internalType: "uint96";
type: "uint96";
}, {
name: "originator";
internalType: "address";
type: "address";
}, {
name: "lastBidTime";
internalType: "uint96";
type: "uint96";
}];
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getTriggerFee";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getValidLoanContracts";
outputs: readonly [{
name: "";
internalType: "address[]";
type: "address[]";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_asset";
internalType: "address";
type: "address";
}, {
name: "_duration";
internalType: "uint96";
type: "uint96";
}, {
name: "_originator";
internalType: "address";
type: "address";
}];
name: "liquidateLoan";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "uint256";
type: "uint256";
}, {
name: "";
internalType: "bytes";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
name: "";
internalType: "bytes4";
type: "bytes4";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "owner";
outputs: readonly [{
name: "";
internalType: "address";
type: "address";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_bid";
internalType: "uint256";
type: "uint256";
}];
name: "placeBid";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "removeLoanContract";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_loan";
internalType: "bytes";
type: "bytes";
}];
name: "settleAuction";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "newOwner";
internalType: "address";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "updateTriggerFee";
outputs: readonly [];
}], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
? TFunctionName[number]
: TFunctionName>
-
Type Parameters
-
TFunctionName extends "OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated"
Parameters
-
eventName: TFunctionName
-
logs: Log<bigint, number, false>[]
Returns ParseEventLogsReturnType<readonly [{
stateMutability: "nonpayable";
type: "constructor";
inputs: readonly [{
name: "currencyManager";
internalType: "address";
type: "address";
}, {
name: "collectionManager";
internalType: "address";
type: "address";
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
}, {
type: "error";
inputs: readonly [];
name: "AuctionAlreadyInProgressError";
}, {
type: "error";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "AuctionNotExistsError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionNotOverError";
}, {
type: "error";
inputs: readonly [{
name: "_expiration";
internalType: "uint96";
type: "uint96";
}];
name: "AuctionOverError";
}, {
type: "error";
inputs: readonly [];
name: "CollectionNotWhitelistedError";
}, {
type: "error";
inputs: readonly [];
name: "CurrencyNotWhitelistedError";
}, {
type: "error";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "InvalidTriggerFee";
}, {
type: "error";
inputs: readonly [{
name: "_loan";
internalType: "address";
type: "address";
}];
name: "LoanNotAcceptedError";
}, {
type: "error";
inputs: readonly [{
name: "_minBid";
internalType: "uint256";
type: "uint256";
}];
name: "MinBidError";
}, {
type: "error";
inputs: readonly [{
name: "_owner";
internalType: "address";
type: "address";
}];
name: "NFTNotOwnedError";
}, {
type: "error";
inputs: readonly [];
name: "NoBidsError";
}, {
type: "error";
inputs: readonly [];
name: "ZeroAddressError";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "settler";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "AuctionSettled";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "auctionContract";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "tokenId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "newBidder";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "bid";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "BidPlaced";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractAdded";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loan";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanContractRemoved";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
indexed: false;
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
indexed: false;
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
indexed: false;
}, {
name: "asset";
internalType: "address";
type: "address";
indexed: false;
}];
name: "LoanLiquidationStarted";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "user";
internalType: "address";
type: "address";
indexed: true;
}, {
name: "newOwner";
internalType: "address";
type: "address";
indexed: true;
}];
name: "OwnershipTransferred";
}, {
type: "event";
anonymous: false;
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
indexed: false;
}];
name: "TriggerFeeUpdated";
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MAX_TRIGGER_FEE";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "MIN_INCREMENT_BPS";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "addLoanContract";
outputs: readonly [];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}];
name: "getAuction";
outputs: readonly [{
name: "";
internalType: "struct AuctionLoanLiquidator.Auction";
type: "tuple";
components: readonly [{
name: "loanAddress";
internalType: "address";
type: "address";
}, {
name: "loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBid";
internalType: "uint256";
type: "uint256";
}, {
name: "highestBidder";
internalType: "address";
type: "address";
}, {
name: "duration";
internalType: "uint96";
type: "uint96";
}, {
name: "asset";
internalType: "address";
type: "address";
}, {
name: "startTime";
internalType: "uint96";
type: "uint96";
}, {
name: "originator";
internalType: "address";
type: "address";
}, {
name: "lastBidTime";
internalType: "uint96";
type: "uint96";
}];
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getTriggerFee";
outputs: readonly [{
name: "";
internalType: "uint256";
type: "uint256";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "getValidLoanContracts";
outputs: readonly [{
name: "";
internalType: "address[]";
type: "address[]";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanId";
internalType: "uint256";
type: "uint256";
}, {
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_asset";
internalType: "address";
type: "address";
}, {
name: "_duration";
internalType: "uint96";
type: "uint96";
}, {
name: "_originator";
internalType: "address";
type: "address";
}];
name: "liquidateLoan";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "address";
type: "address";
}, {
name: "";
internalType: "uint256";
type: "uint256";
}, {
name: "";
internalType: "bytes";
type: "bytes";
}];
name: "onERC721Received";
outputs: readonly [{
name: "";
internalType: "bytes4";
type: "bytes4";
}];
}, {
stateMutability: "view";
type: "function";
inputs: readonly [];
name: "owner";
outputs: readonly [{
name: "";
internalType: "address";
type: "address";
}];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_bid";
internalType: "uint256";
type: "uint256";
}];
name: "placeBid";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_loanContract";
internalType: "address";
type: "address";
}];
name: "removeLoanContract";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "_contract";
internalType: "address";
type: "address";
}, {
name: "_tokenId";
internalType: "uint256";
type: "uint256";
}, {
name: "_loan";
internalType: "bytes";
type: "bytes";
}];
name: "settleAuction";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "newOwner";
internalType: "address";
type: "address";
}];
name: "transferOwnership";
outputs: readonly [];
}, {
stateMutability: "nonpayable";
type: "function";
inputs: readonly [{
name: "triggerFee";
internalType: "uint256";
type: "uint256";
}];
name: "updateTriggerFee";
outputs: readonly [];
}], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
? TFunctionName[number]
: TFunctionName>