aboutsummaryrefslogtreecommitdiffstats
path: root/packages/typescript-typings
diff options
context:
space:
mode:
authorAmir Bandeali <abandeali1@gmail.com>2018-06-30 03:38:57 +0800
committerAmir Bandeali <abandeali1@gmail.com>2018-06-30 08:25:56 +0800
commite58e35e098952259c0c3f59ea1132669aab7d36d (patch)
treee32c0274eaf720476f7a61e9eeea9aeaa10c4aec /packages/typescript-typings
parent654b0486027ed42662bbc907a72806046ec7697e (diff)
downloaddexon-0x-contracts-e58e35e098952259c0c3f59ea1132669aab7d36d.tar.gz
dexon-0x-contracts-e58e35e098952259c0c3f59ea1132669aab7d36d.tar.zst
dexon-0x-contracts-e58e35e098952259c0c3f59ea1132669aab7d36d.zip
Move ledgerhq module declarations to typescript-typings
Diffstat (limited to 'packages/typescript-typings')
-rw-r--r--packages/typescript-typings/CHANGELOG.json4
-rw-r--r--packages/typescript-typings/types/@ledgerhq/index.d.ts45
2 files changed, 49 insertions, 0 deletions
diff --git a/packages/typescript-typings/CHANGELOG.json b/packages/typescript-typings/CHANGELOG.json
index 25ff73274..1f397e622 100644
--- a/packages/typescript-typings/CHANGELOG.json
+++ b/packages/typescript-typings/CHANGELOG.json
@@ -9,6 +9,10 @@
{
"note": "Additional error type for `ethers.js`",
"pr": 763
+ },
+ {
+ "note": "Add @ledgerhq typings",
+ "pr": 770
}
]
},
diff --git a/packages/typescript-typings/types/@ledgerhq/index.d.ts b/packages/typescript-typings/types/@ledgerhq/index.d.ts
new file mode 100644
index 000000000..724dacb76
--- /dev/null
+++ b/packages/typescript-typings/types/@ledgerhq/index.d.ts
@@ -0,0 +1,45 @@
+// Ledgerco declarations
+interface ECSignatureString {
+ v: string;
+ r: string;
+ s: string;
+}
+interface ECSignature {
+ v: number;
+ r: string;
+ s: string;
+}
+
+interface LedgerTransport {
+ close(): Promise<void>;
+}
+
+declare module '@ledgerhq/hw-app-eth' {
+ class Eth {
+ public transport: LedgerTransport;
+ constructor(transport: LedgerTransport);
+ public getAddress(
+ path: string,
+ boolDisplay?: boolean,
+ boolChaincode?: boolean,
+ ): Promise<{ publicKey: string; address: string; chainCode: string }>;
+ public signTransaction(path: string, rawTxHex: string): Promise<ECSignatureString>;
+ public getAppConfiguration(): Promise<{ arbitraryDataEnabled: number; version: string }>;
+ public signPersonalMessage(path: string, messageHex: string): Promise<ECSignature>;
+ }
+ export default Eth;
+}
+
+declare module '@ledgerhq/hw-transport-u2f' {
+ export default class TransportU2F implements LedgerTransport {
+ public static create(): Promise<LedgerTransport>;
+ public close(): Promise<void>;
+ }
+}
+
+declare module '@ledgerhq/hw-transport-node-hid' {
+ export default class TransportNodeHid implements LedgerTransport {
+ public static create(): Promise<LedgerTransport>;
+ public close(): Promise<void>;
+ }
+}