Typescript host client used to interact with Starknet Nano application
const starknetClient = require('@ledgerhq/hw-app-starknet');
// TODO: DEMONSTRATE API
Starknet API
transport
Transport
import Stark from "@ledgerhq/hw-app-starknet";
const stark = new StarknetClient(transport)
get version of Nano Starknet application
Returns Promise<ResponseVersion> an object with a major, minor, patch
get full starknet public key derived from provided derivation path
path
string a path in EIP-2645 format (https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2645.md)show
boolean (optional, defaulttrue
)
stark.getPubKey("m/2645'/579218131'/0'/0'").then(o => o.publicKey)
Returns Promise<ResponsePublicKey> an object with publicKey
get stark key derived from provided derivation path
path
string a path in EIP-2645 format (https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2645.md)show
boolean (optional, defaulttrue
)
stark.getPubKey("m/2645'/579218131'/0'/0'").then(o => o.publicKey)
Returns Promise<ResponseStarkKey> an object with publicKey
sign the given hash over the staRknet elliptic curve
Returns Promise<ResponseHashSign> an object with (r, s, v) signature
sign a Starknet Tx v3 Invoke transaction
path
string Derivation path in EIP-2645 formatcalls
Array<Call> List of calls [(to, selector, calldata), (), ...]tx
TxFields Tx fields (account address, tip, l1_gas_bounds, l2_gas_bounds, chainID, nonce, data_availability_mode)
Returns Promise<ResponseTxSign> an object with Tx hash + (r, s, v) signature
sign a Starknet Tx v1 Invoke transaction
path
string Derivation path in EIP-2645 formatcalls
Array<Call> List of calls [(to, selector, calldata), (), ...]tx
TxV1Fields Tx fields (account address, max_fee, chainID, nonce)
Returns Promise<ResponseTxSign> an object with Tx hash + (r, s, v) signature
sign a SNIP-12 encoded message
path
string Derivation path in EIP-2645 formatmessage
TypedData message to be signedaccount
string accound address to sign the message
Returns Promise<ResponseHashSign> an object with (r, s, v) signature