UNPKG

@ledgerhq/coin-algorand

Version:
24 lines 967 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ALGORAND_MIN_ACCOUNT_BALANCE = void 0; exports.computeMinimumBalance = computeMinimumBalance; exports.computeMaxSpendable = computeMaxSpendable; exports.ALGORAND_MIN_ACCOUNT_BALANCE = 100000n; // 0.1 ALGO in microAlgos /** * Compute minimum balance required for an Algorand account * Base: 0.1 ALGO + 0.1 ALGO per asset */ function computeMinimumBalance(nbAssets, isOptingIn = false) { const base = 100000n; // 0.1 algo = 100000 microalgos const newAsset = isOptingIn ? 1n : 0n; return base * (1n + BigInt(nbAssets) + newAsset); } /** * Compute max spendable balance for an Algorand account */ function computeMaxSpendable(balance, nbAssets, isOptingIn = false) { const minBalance = computeMinimumBalance(nbAssets, isOptingIn); const maxSpendable = balance - minBalance; return maxSpendable > 0n ? maxSpendable : 0n; } //# sourceMappingURL=common.js.map