mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-08-16 23:10:29 +00:00
add type definitions for @ledgerhq/hw-transport-webusb (#38795)
This commit is contained in:
+21
@@ -0,0 +1,21 @@
|
||||
// Type definitions for @ledgerhq/hw-transport-webusb 4.70
|
||||
// Project: https://github.com/LedgerHQ/ledgerjs/tree/master/packages/hw-transport-webusb, https://github.com/ledgerhq/ledgerjs
|
||||
// Definitions by: Joshua <https://github.com/questofiranon>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.3
|
||||
|
||||
/// <reference types="node" />
|
||||
import Transport, { DescriptorEvent, Observer, Subscription } from '@ledgerhq/hw-transport';
|
||||
|
||||
declare class TransportWebUSB extends Transport {
|
||||
constructor(device: string);
|
||||
|
||||
static listen(observer: Observer<DescriptorEvent<string>>): Subscription;
|
||||
|
||||
static request(): Promise<TransportWebUSB>;
|
||||
static openConnection(): Promise<TransportWebUSB>;
|
||||
|
||||
static open(device: string): Promise<TransportWebUSB>;
|
||||
}
|
||||
|
||||
export default TransportWebUSB;
|
||||
@@ -0,0 +1,23 @@
|
||||
import TransportWebUSB from '@ledgerhq/hw-transport-webusb';
|
||||
|
||||
// $ExpectType Promise<boolean>
|
||||
TransportWebUSB.isSupported();
|
||||
// $ExpectType Promise<ReadonlyArray<string>>
|
||||
TransportWebUSB.list();
|
||||
// $ExpectType Promise<TransportWebUSB>
|
||||
TransportWebUSB.request();
|
||||
// $ExpectType Promise<TransportWebUSB>
|
||||
TransportWebUSB.open('test');
|
||||
// $ExpectType Promise<TransportWebUSB>
|
||||
TransportWebUSB.openConnection();
|
||||
|
||||
const test = TransportWebUSB.open('test').then(transport => {
|
||||
// $ExpectType void
|
||||
transport.setScrambleKey('BTC');
|
||||
|
||||
// $ExpectType Promise<Buffer>
|
||||
transport.exchange(Buffer.from('test', 'hex'));
|
||||
|
||||
// $ExpectType Promise<void>
|
||||
transport.close();
|
||||
});
|
||||
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": ["es6"],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"baseUrl": "../",
|
||||
"typeRoots": ["../"],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"paths": {
|
||||
"@ledgerhq/hw-transport": ["ledgerhq__hw-transport"],
|
||||
"@ledgerhq/hw-transport-webusb": ["ledgerhq__hw-transport-webusb"]
|
||||
}
|
||||
},
|
||||
"files": ["index.d.ts", "ledgerhq__hw-transport-webusb-tests.ts"]
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"extends": "dtslint/dt.json"
|
||||
}
|
||||
Reference in New Issue
Block a user