// SPDX-FileCopyrightText: © 2024 LEDGER SAS // SPDX-License-Identifier: Apache-2.0 import type { SendTransactionIntent, StakingTransactionIntent, TransactionIntent } from './api' import BigNumber from 'bignumber.js' export function fromBigNumberToBigInt(bigNumber: BigNumber | undefined): bigint | undefined export function fromBigNumberToBigInt( bigNumber: BigNumber | undefined, defaultValue: bigint ): bigint export function fromBigNumberToBigInt( bigNumber: BigNumber | undefined, defaultValue?: bigint ): bigint | undefined { if (BigNumber.isBigNumber(bigNumber)) { return BigInt(bigNumber.toFixed()) } return defaultValue } export function isSendTransactionIntent(tx: TransactionIntent): tx is SendTransactionIntent { return tx.intentType === 'transaction' } export function isStakingTransactionIntent(tx: TransactionIntent): tx is StakingTransactionIntent { return tx.intentType === 'staking' }