import * as BorrowingFeeV2 from "./types"; /** * @dev Maximum borrowing rate per second (1,000% APR) */ export declare const MAX_BORROWING_RATE_PER_SECOND = 0.0317097; /** * @dev Precision constants for borrowing v2 calculations */ export declare const BORROWING_V2_PRECISION: { readonly RATE_PER_SECOND: 10000000000; readonly ACC_FEE: 100000000000000000000; readonly PERCENTAGE: 100; }; /** * @dev Calculates pending accumulated borrowing fees for a pair * @param params Borrowing fee parameters for the pair * @param data Current borrowing fee data for the pair * @param currentPairPrice Current price of the trading pair * @param currentTimestamp Current timestamp (defaults to now) * @returns Updated accumulated borrowing fee (1e20 precision) */ export declare const getPairPendingAccBorrowingFees: (params: BorrowingFeeV2.BorrowingFeeParams, data: BorrowingFeeV2.PairBorrowingFeeData, currentPairPrice: number, currentTimestamp?: number) => number; /** * @dev Calculates borrowing fees owed by a specific trade * @param input Trade borrowing fee calculation input (without pairIndex) * @param context Pair-specific borrowing context * @returns Borrowing fees in collateral tokens */ export declare const getTradeBorrowingFeesCollateral: (input: Omit, context: BorrowingFeeV2.GetPairBorrowingFeeV2Context) => number; /** * @dev Utility function to get pending accumulated borrowing fees for a pair using context * @param input Pair borrowing fee calculation input * @param context Context containing borrowing parameters and data * @returns Updated accumulated borrowing fee (1e20 precision) */ export declare const getPairBorrowingFees: (input: BorrowingFeeV2.PairBorrowingFeeInput, context: BorrowingFeeV2.GetBorrowingFeeV2Context) => number; /** * @dev Utility functions for working with borrowing v2 fees */ export declare const borrowingFeeV2Utils: { getPairPendingAccBorrowingFees: (params: BorrowingFeeV2.BorrowingFeeParams, data: BorrowingFeeV2.PairBorrowingFeeData, currentPairPrice: number, currentTimestamp?: number) => number; getTradeBorrowingFeesCollateral: (input: Omit, context: BorrowingFeeV2.GetPairBorrowingFeeV2Context) => number; getPairBorrowingFees: (input: BorrowingFeeV2.PairBorrowingFeeInput, context: BorrowingFeeV2.GetBorrowingFeeV2Context) => number; }; export * as BorrowingFeeV2 from "./types"; export { GetPairBorrowingFeeV2Context } from "./types"; export * from "./converter"; export * from "./fetcher";