UNPKG

@sfpro/sdk

Version:

TypeScript SDK for Superfluid Protocol - stream money every second

30 lines (26 loc) 626 B
// TODO: add documentation import type { TimeUnit } from "./constant.js"; export function calculateCurrentBalance({ flowRate, balance, balanceTimestamp, // Unix timestamp currentTimestamp = new Date().getTime(), }: { flowRate: bigint; balance: bigint; balanceTimestamp: number; currentTimestamp?: number; }) { const timeElapsed = currentTimestamp - balanceTimestamp; const amountFlowed = BigInt(timeElapsed) * flowRate; return balance + amountFlowed; } export function calculateFlowratePerSecond({ amountWei, timeUnit, }: { amountWei: bigint; timeUnit: TimeUnit; }) { return amountWei / BigInt(timeUnit); }