@parifi/sdk
Version:
Parifi SDK with common utility functions
43 lines (40 loc) • 1.71 kB
text/typescript
import Decimal__default from 'decimal.js';
import { Position, CollateralDeposit } from '../interfaces/sdkTypes.mjs';
import '../interfaces/subgraphTypes.mjs';
declare class Perps {
constructor();
getProfitOrLossInUsd: (marketPrice: number, avgPrice: number, positionSize: number) => Decimal__default;
calculateSizeFromCollateralAndLeverage: ({ collateralValueInUsd, leverage, marketPrice, }: {
collateralValueInUsd: number;
leverage: number;
marketPrice: number;
}) => Decimal__default;
calculateCollateralFromSizeAndLeverage: ({ sizeInUsd, leverage, collateralPrice, }: {
sizeInUsd: number;
leverage: number;
collateralPrice: number;
}) => Decimal__default;
calculateLeverageFromCollateralAndSize: ({ collateralValueInUsd, sizeInUsd, }: {
collateralValueInUsd: number;
sizeInUsd: number;
}) => number;
calculateUnrealizedPnlForPositions: (positions: Position[], priceData: {
id: string;
price: number;
}[]) => Decimal__default;
calculateUsdValueOfCollateralDeposits: (collateralDeposits: CollateralDeposit[], priceData: {
id: string;
price: number;
}[]) => Decimal__default;
getPriceFromPriceArray: (priceData: {
id: string;
price: number;
}[], priceId?: string | undefined, tokenSymbol?: string | undefined) => number;
calculateLiquidationPriceOffchain: ({ availableMarginInUsd, marginBufferInUsd, formattedPositionSize, formattedMarketPrice, }: {
availableMarginInUsd: number;
marginBufferInUsd: number;
formattedPositionSize: number;
formattedMarketPrice: number;
}) => number;
}
export { Perps };