Everything evaluateBorrow needs, already read from the chain.

interface EvaluateBorrowInput {
    amount: bigint;
    capacity: bigint;
    collateral: bigint;
    entireDebt: bigint;
    fee: bigint;
    isRecoveryMode: boolean;
    price: bigint;
    status: number;
    systemColl: bigint;
    systemDebt: bigint;
}

Properties

amount: bigint
capacity: bigint

getTroveMaxBorrowingCapacity.

collateral: bigint
entireDebt: bigint

Live entire debt, principal plus accrued interest.

fee: bigint

The fee the contract will actually charge, already zeroed for Recovery Mode or exemption.

isRecoveryMode: boolean
price: bigint
status: number

TroveManager.getTroveStatus. 1 is active; anything else cannot be adjusted.

systemColl: bigint
systemDebt: bigint