export interface BalanceInfo {
    index: number;
    supplyShares: bigint;
    borrowShares: bigint;
    supplyAssets: bigint;
    borrowAssets: bigint;
    collateral: bigint;
}
/**
 * Decode:
 *  [ uint16 count (2 bytes) ]
 *  then for each of `count` records:
 *    uint16  index (2 bytes),
 *    uint256 supplyShares (32 bytes),
 *    uint128 borrowShares (16 bytes),
 *    uint256 supplyAssets (32 bytes),
 *    uint256 borrowAssets (32 bytes),
 *    uint128 collateral   (16 bytes)
 */
export declare function decodePackedMorphoUserDataset(hex: string): BalanceInfo[];
export interface ListaBalanceInfo {
    index: number;
    supplyShares: bigint;
    borrowShares: bigint;
    supplyAssets: bigint;
    borrowAssets: bigint;
    collateral: bigint;
}
export interface ListaUserData {
    whitelistFlags: boolean[];
    balances: ListaBalanceInfo[];
}
/**
 * Decode Lista user data with leading whitelist flags.
 *
 * @param hex          ABI-encoded hex string
 * @param marketsCount marketsIds.length (needed to slice flags)
 */
export declare function decodePackedListaUserDataset(hex: string, marketsCount: number): ListaUserData;
//# sourceMappingURL=decoder.d.ts.map