Ledger Hardware Wallet Helium Application API
npm install @ledgerhq/hw-app-helium
GitHub,
Ledger Devs Discord,
Developer Portal
Ledger Hardware Wallet Helium JavaScript bindings.
*
You may be using this package to communicate with the Helium Nano App.
For a smooth and quick integration:
* See the developers’ documentation on the Developer Portal and
* Go on Discord to chat with developer support and the developer community.
*
#### Table of Contents
* Helium
* Parameters
* Examples
* getVersion
* Examples
* getAddress
* Parameters
* Examples
* signPaymentV2
* Parameters
* Examples
* signTokenBurnV1
* Parameters
* Examples
* signStakeValidatorV1
* Parameters
* Examples
* signUnstakeValidatorV1
* Parameters
* Examples
* signTransferValidatorStakeV1
* Parameters
* Examples
* signSecurityExchangeV1
* Parameters
* Examples
Helium API
#### Parameters
* transport Transport a transport for sending commands to a device
* scrambleKey a scramble key (optional, default "helium_default_scramble_key")
#### Examples
``javascript`
import Helium from "@ledgerhq/hw-app-helium";
const helium = new Helium(transport);
#### getVersion
Get application version.
##### Examples
`javascript`
helium.getVersion().then(r => r.version)
Returns Promise<{version: string}> version object
#### getAddress
Get Helium address (public key) for a BIP32 path.
##### Parameters
* path string a BIP32 pathdisplay
* boolean? flag to show displayaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
helium.getAddress("44'/904'/0'/0'/0'").then(r => r.address)
Returns Promise<{index: number, address: string, publicKey: string}> an object with the address field
#### signPaymentV2
Sign a Helium PaymentV2 transaction.
##### Parameters
* txn PaymentV2 a PaymentV2 transactionaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
import { PaymentV2 } from '@helium/transactions'
const txn = new PaymentV2({ ... })
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: PaymentV2}> an object with the signed transaction and signature
#### signTokenBurnV1
Sign a Helium TokenBurnV1 transaction.
##### Parameters
* txn TokenBurnV1 a TokenBurnV1 transactionaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
import { TokenBurnV1 } from '@helium/transactions'
const txn = new TokenBurnV1({ ... })
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: TokenBurnV1}> an object with the signed transaction and signature
#### signStakeValidatorV1
Sign a Helium StakeValidatorV1 transaction.
##### Parameters
* txn StakeValidatorV1 a StakeValidatorV1 transactionaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
import { StakeValidatorV1 } from '@helium/transactions'
const txn = new StakeValidatorV1({ ... })
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: StakeValidatorV1}> an object with the signed transaction and signature
#### signUnstakeValidatorV1
Sign a Helium UnstakeValidatorV1 transaction.
##### Parameters
* txn UnstakeValidatorV1 a UnstakeValidatorV1 transactionaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
import { UnstakeValidatorV1 } from '@helium/transactions'
const txn = new UnstakeValidatorV1({ ... })
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: UnstakeValidatorV1}> an object with the signed transaction and signature
#### signTransferValidatorStakeV1
Sign a Helium TransferValidatorStakeV1 transaction.
##### Parameters
* txn TransferValidatorStakeV1 a TransferValidatorStakeV1 transactionownerType
* ("old" | "new") whether to sign as the old or new owner in the transferaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript`
import { TransferValidatorStakeV1 } from '@helium/transactions'
const txn = new TransferValidatorStakeV1({ ... }, 'old')
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: TransferValidatorStakeV1}> an object with the signed transaction and signature
#### signSecurityExchangeV1
Sign a Helium SecurityExchangeV1 transaction.
##### Parameters
* txn SecurityExchangeV1 a SecurityExchangeV1 transactionaccountIndex
* index of account address (optional, default 0)
##### Examples
`javascript``
import { SecurityExchangeV1 } from '@helium/transactions'
const txn = new SecurityExchangeV1({ ... })
helium.signTransaction(txn).then(r => r.signature)
Returns Promise<{signature: Buffer, txn: SecurityExchangeV1}> an object with the signed transaction and signature