/** * BCS (Binary Canonical Serialization) Schemas for Lending Protocol * * This module defines the BCS schemas for serializing and deserializing * lending protocol data structures. BCS is used for efficient binary * encoding of complex data types for blockchain transactions and storage. */ /** * BCS schema for Sui addresses with hex transformation * Converts between hex string representation and byte arrays */ export declare const Address: import('@mysten/sui/bcs').BcsType; /** * BCS schema for incentive APY information * Contains asset ID, APY value, and supported coin types */ export declare const IncentiveAPYInfo: import('@mysten/sui/bcs').BcsStruct<{ /** Asset identifier */ asset_id: import('@mysten/sui/bcs').BcsType; /** Annual Percentage Yield as a 256-bit integer */ apy: import('@mysten/sui/bcs').BcsType; /** List of supported coin types for this incentive */ coin_types: import('@mysten/sui/bcs').BcsType & { length: number; }, string>; }, string>; /** * BCS schema for incentive pool information * Contains comprehensive details about a lending incentive pool */ export declare const IncentivePoolInfo: import('@mysten/sui/bcs').BcsStruct<{ /** Unique pool identifier */ pool_id: import('@mysten/sui/bcs').BcsType; /** Address holding the incentive funds */ funds: import('@mysten/sui/bcs').BcsType; /** Current phase of the incentive program */ phase: import('@mysten/sui/bcs').BcsType; /** Timestamp when the incentive started */ start_at: import('@mysten/sui/bcs').BcsType; /** Timestamp when the incentive ends */ end_at: import('@mysten/sui/bcs').BcsType; /** Timestamp when the incentive was closed */ closed_at: import('@mysten/sui/bcs').BcsType; /** Total supply of incentive tokens */ total_supply: import('@mysten/sui/bcs').BcsType; /** Asset identifier for the incentive */ asset_id: import('@mysten/sui/bcs').BcsType; /** Option type for the incentive */ option: import('@mysten/sui/bcs').BcsType; /** Factor used in incentive calculations */ factor: import('@mysten/sui/bcs').BcsType; /** Amount of incentives already distributed */ distributed: import('@mysten/sui/bcs').BcsType; /** Amount of incentives currently available */ available: import('@mysten/sui/bcs').BcsType; /** Total amount of incentives */ total: import('@mysten/sui/bcs').BcsType; }, string>; /** * BCS schema for incentive pool information grouped by phase * Contains phase number and list of pools in that phase */ export declare const IncentivePoolInfoByPhase: import('@mysten/sui/bcs').BcsStruct<{ /** Phase number */ phase: import('@mysten/sui/bcs').BcsType; /** List of incentive pools in this phase */ pools: import('@mysten/sui/bcs').BcsType<{ pool_id: string; funds: string; phase: string; start_at: string; end_at: string; closed_at: string; total_supply: string; asset_id: number; option: number; factor: string; distributed: string; available: string; total: string; }[], Iterable<{ pool_id: string; funds: string; phase: string | number | bigint; start_at: string | number | bigint; end_at: string | number | bigint; closed_at: string | number | bigint; total_supply: string | number | bigint; asset_id: number; option: number; factor: string | number | bigint; distributed: string | number | bigint; available: string | number | bigint; total: string | number | bigint; }> & { length: number; }, string>; }, string>; /** * BCS schema for oracle price information * Contains price data from external price feeds */ export declare const OracleInfo: import('@mysten/sui/bcs').BcsStruct<{ /** Oracle identifier */ oracle_id: import('@mysten/sui/bcs').BcsType; /** Current price as a 256-bit integer */ price: import('@mysten/sui/bcs').BcsType; /** Number of decimal places for the price */ decimals: import('@mysten/sui/bcs').BcsType; /** Whether the oracle data is valid */ valid: import('@mysten/sui/bcs').BcsType; }, string>; /** * BCS schema for flash loan asset configuration * Contains parameters for flash loan functionality */ export declare const FlashLoanAssetConfig: import('@mysten/sui/bcs').BcsStruct<{ /** Unique identifier for the flash loan asset */ id: import('@mysten/sui/bcs').BcsType; /** Asset identifier */ asset_id: import('@mysten/sui/bcs').BcsType; /** Coin type for the asset */ coin_type: import('@mysten/sui/bcs').BcsType; /** Pool identifier for the flash loan */ pool_id: import('@mysten/sui/bcs').BcsType; /** Rate paid to suppliers for flash loans */ rate_to_supplier: import('@mysten/sui/bcs').BcsType; /** Rate paid to treasury for flash loans */ rate_to_treasury: import('@mysten/sui/bcs').BcsType; /** Maximum flash loan amount */ max: import('@mysten/sui/bcs').BcsType; /** Minimum flash loan amount */ min: import('@mysten/sui/bcs').BcsType; }, string>; /** * BCS schema for reserve data information * Contains comprehensive details about a lending reserve */ export declare const ReserveDataInfo: import('@mysten/sui/bcs').BcsStruct<{ /** Reserve identifier */ id: import('@mysten/sui/bcs').BcsType; /** Oracle identifier for price feeds */ oracle_id: import('@mysten/sui/bcs').BcsType; /** Coin type for the reserve */ coin_type: import('@mysten/sui/bcs').BcsType; /** Maximum supply capacity */ supply_cap: import('@mysten/sui/bcs').BcsType; /** Maximum borrow capacity */ borrow_cap: import('@mysten/sui/bcs').BcsType; /** Current supply interest rate */ supply_rate: import('@mysten/sui/bcs').BcsType; /** Current borrow interest rate */ borrow_rate: import('@mysten/sui/bcs').BcsType; /** Current supply index for interest calculation */ supply_index: import('@mysten/sui/bcs').BcsType; /** Current borrow index for interest calculation */ borrow_index: import('@mysten/sui/bcs').BcsType; /** Total amount supplied to the reserve */ total_supply: import('@mysten/sui/bcs').BcsType; /** Total amount borrowed from the reserve */ total_borrow: import('@mysten/sui/bcs').BcsType; /** Timestamp of last update */ last_update_at: import('@mysten/sui/bcs').BcsType; /** Loan-to-Value ratio for collateral */ ltv: import('@mysten/sui/bcs').BcsType; /** Treasury factor for fee calculations */ treasury_factor: import('@mysten/sui/bcs').BcsType; /** Current treasury balance */ treasury_balance: import('@mysten/sui/bcs').BcsType; /** Base interest rate */ base_rate: import('@mysten/sui/bcs').BcsType; /** Interest rate multiplier */ multiplier: import('@mysten/sui/bcs').BcsType; /** Jump rate multiplier for high utilization */ jump_rate_multiplier: import('@mysten/sui/bcs').BcsType; /** Reserve factor for protocol fees */ reserve_factor: import('@mysten/sui/bcs').BcsType; /** Optimal utilization rate */ optimal_utilization: import('@mysten/sui/bcs').BcsType; /** Liquidation ratio threshold */ liquidation_ratio: import('@mysten/sui/bcs').BcsType; /** Liquidation bonus for liquidators */ liquidation_bonus: import('@mysten/sui/bcs').BcsType; /** Liquidation threshold */ liquidation_threshold: import('@mysten/sui/bcs').BcsType; }, string>; /** * BCS schema for user state information * Contains user's borrowing and supplying balances for an asset */ export declare const UserStateInfo: import('@mysten/sui/bcs').BcsStruct<{ /** Asset identifier */ asset_id: import('@mysten/sui/bcs').BcsType; /** User's current borrow balance */ borrow_balance: import('@mysten/sui/bcs').BcsType; /** User's current supply balance */ supply_balance: import('@mysten/sui/bcs').BcsType; }, string>; //# sourceMappingURL=bcs.d.ts.map