/**
 * Decoded shapes of the Exactly `Previewer.exactly(account)` aggregate view.
 * Field names/order mirror the on-chain struct (verified IDENTICAL on Optimism
 * and Base). All rates are WAD-scaled ANNUALIZED fractions (1e18 = 100%/yr),
 * `usdPrice` is 1e18-scaled USD, token amounts are raw base units.
 */
export interface ExactlyFixedPool {
    /** unix seconds */
    maturity: bigint;
    /** total fixed borrows at this maturity (raw asset units) */
    borrowed: bigint;
    /** total fixed deposits at this maturity (raw asset units) */
    supplied: bigint;
    /** borrowable liquidity at this maturity incl. floating backup (raw) */
    available: bigint;
    /** WAD fixed-pool utilization */
    utilization: bigint;
    /** WAD annualized fixed DEPOSIT rate at the current pool state */
    depositRate: bigint;
    /** WAD annualized fixed BORROW rate floor (rate for a minimal borrow) */
    minBorrowRate: bigint;
    /** deposit size that would capture the pool's unassigned earnings (raw) */
    optimalDeposit: bigint;
}
export interface ExactlyFixedPosition {
    maturity: bigint;
    /** current exit value: withdraw-now (deposits) / repay-now (borrows), raw.
     *  Includes the early-exit discount and, when overdue, the late penalty. */
    previewValue: bigint;
    position: {
        principal: bigint;
        fee: bigint;
    };
}
export interface ExactlyMarketAccount {
    market: string;
    symbol: string;
    decimals: number;
    asset: string;
    assetName: string;
    assetSymbol: string;
    usdPrice: bigint;
    /** WAD per-second late-repayment penalty rate */
    penaltyRate: bigint;
    /** WAD collateral/borrow adjust factor (multiplicative, like Dolomite premiums) */
    adjustFactor: bigint;
    maxFuturePools: number;
    reserveFactor: bigint;
    fixedPools: readonly ExactlyFixedPool[];
    /** WAD annualized floating borrow rate */
    floatingBorrowRate: bigint;
    /** WAD floating utilization */
    floatingUtilization: bigint;
    floatingAssets: bigint;
    floatingDebt: bigint;
    floatingBackupBorrowed: bigint;
    floatingAvailableAssets: bigint;
    totalFloatingBorrowAssets: bigint;
    totalFloatingDepositAssets: bigint;
    totalFloatingBorrowShares: bigint;
    totalFloatingDepositShares: bigint;
    isCollateral: boolean;
    maxBorrowAssets: bigint;
    floatingBorrowShares: bigint;
    floatingBorrowAssets: bigint;
    floatingDepositShares: bigint;
    floatingDepositAssets: bigint;
    fixedDepositPositions: readonly ExactlyFixedPosition[];
    fixedBorrowPositions: readonly ExactlyFixedPosition[];
}
/** Raw public-data batch: one Previewer pass + the Auditor liquidation bonus. */
export interface ExactlyMarketsRaw {
    markets: ExactlyMarketAccount[];
    /** WAD fractions: liquidator bonus + lenders share (null if the read failed) */
    liquidationIncentive: {
        liquidator: bigint;
        lenders: bigint;
    } | null;
}
//# sourceMappingURL=types.d.ts.map