import type { FeeTier, Market, MarketContext, OrderbookLevel, Quote, QuoteSide, TradeType } from '@lifi/perps-types'; export declare function calculatePositionSize(marginUsd: number, leverage: number, price: number): number; export declare function calculateNotionalValue(size: number, price: number): number; export declare function calculateUnrealizedPnl(entryPrice: number, currentPrice: number, size: number): number; export declare function calculateRoe(pnl: number, margin: number): number; export declare function calculateRequiredMargin(notionalValue: number, leverage: number): number; export declare function estimateFees(sizeUsd: number, feeRate: number): number; export declare function applySlippage(price: number, slippagePercent: number, isBuy: boolean): number; export declare function liquidationDistancePercent(params: { liquidationPrice: number; currentPrice: number; }): number; export declare function effectiveLeverage(params: { positionValueUsd: number; marginUsd: number; }): number; export declare function removableMargin(params: { marginUsed: number; positionValueUsd: number; maxLeverage: number; }): number; export interface ExpectedPnl { amount: number; percent: number; } export declare function calculateExpectedPnl(triggerPrice: number, entryPrice: number, leverage: number, isLong: boolean, margin: number): ExpectedPnl | null; export declare function priceFromPercent(percent: number, entryPrice: number, leverage: number, isLong: boolean): number; export declare function percentFromPrice(price: number, entryPrice: number, leverage: number, isLong: boolean): number; export declare function calculateRealizedPnlPercent(realizedPnl: number, size: number, price: number): number; interface BookWalk { baseSize: number; filledNotional: number; vwap: number; insufficientLiquidity: boolean; } export declare function walkOrderbook(levels: OrderbookLevel[], sizeUsd: number): BookWalk; interface BuildQuoteInput { provider: string; symbol: string; type: TradeType; side: QuoteSide; sizeUsd: number; market: Market; price: MarketContext; bids: OrderbookLevel[]; asks: OrderbookLevel[]; feeTier: FeeTier; timestamp: number; } export declare function buildQuote(input: BuildQuoteInput): Quote; export {}; //# sourceMappingURL=calculations.d.ts.map