UNPKG

@ledgerhq/hw-app-icon

Version:

Ledger Hardware Wallet ICON Application API

70 lines 2.8 kB
/******************************************************************************** * Ledger JS API for ICON * (c) 2018 ICON Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ********************************************************************************/ import type Transport from "@ledgerhq/hw-transport"; /** * ICON API * * @example * import Icx from "@ledgerhq/hw-app-icx"; * const icx = new Icx(transport) */ export default class Icx { transport: Transport; constructor(transport: Transport); /** * Returns public key and ICON address for a given BIP 32 path. * @param path a path in BIP 32 format * @option boolDisplay optionally enable or not the display * @option boolChaincode optionally enable or not the chaincode request * @return an object with a publickey(hexa string), address(string) and * (optionally) chaincode(hexa string) * @example * icx.getAddress("44'/4801368'/0'", true, true).then(o => o.address) */ getAddress(path: string, boolDisplay?: boolean, boolChaincode?: boolean): Promise<{ publicKey: string; address: string; chainCode?: string; }>; /** * Signs a transaction and returns signed message given the raw transaction * and the BIP 32 path of the account to sign * @param path a path in BIP 32 format * @param rawTxAscii raw transaction data to sign in ASCII string format * @return an object with a base64 encoded signature and hash in hexa string * @example * icx.signTransaction("44'/4801368'/0'", * "icx_sendTransaction.fee.0x2386f26fc10000." + * "from.hxc9ecad30b05a0650a337452fce031e0c60eacc3a.nonce.0x3." + * "to.hx4c5101add2caa6a920420cf951f7dd7c7df6ca24.value.0xde0b6b3a7640000") * .then(result => ...) */ signTransaction(path: string, rawTxAscii: string): Promise<{ signedRawTxBase64: string; hashHex: string; }>; /** * Returns the application configurations such as versions. * @return major/minor/patch versions of Icon application */ getAppConfiguration(): Promise<{ majorVersion: number; minorVersion: number; patchVersion: number; }>; } //# sourceMappingURL=Icon.d.ts.map