diff options
author | Fabio Berger <me@fabioberger.com> | 2017-12-06 05:45:35 +0800 |
---|---|---|
committer | Fabio Berger <me@fabioberger.com> | 2017-12-06 05:45:35 +0800 |
commit | 038668efdfdd2eac85c30206e17128b0af2b48ce (patch) | |
tree | dd89073024f6fc89ac6306629d4bd14cd1ac5e5e /packages/subproviders/src/globals.d.ts | |
parent | 47789d770d08c20f33dbd839fcbd7bfa23d252a3 (diff) | |
download | dexon-sol-tools-038668efdfdd2eac85c30206e17128b0af2b48ce.tar.gz dexon-sol-tools-038668efdfdd2eac85c30206e17128b0af2b48ce.tar.zst dexon-sol-tools-038668efdfdd2eac85c30206e17128b0af2b48ce.zip |
Port subproviders over to mono repo, refactor LedgerSubprovider to no longer rely on hookedWalletSubprovider. Added unit and integration tests.
Diffstat (limited to 'packages/subproviders/src/globals.d.ts')
-rw-r--r-- | packages/subproviders/src/globals.d.ts | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/packages/subproviders/src/globals.d.ts b/packages/subproviders/src/globals.d.ts new file mode 100644 index 000000000..1f9c6e8a6 --- /dev/null +++ b/packages/subproviders/src/globals.d.ts @@ -0,0 +1,68 @@ +/// <reference types='chai-typescript-typings' /> +/// <reference types='chai-as-promised-typescript-typings' /> +declare module 'bn.js'; +declare module 'dirty-chai'; +declare module 'ledgerco'; +declare module 'ethereumjs-tx'; +declare module 'es6-promisify'; +declare module 'ethereum-address'; +declare module 'debug'; + +// tslint:disable:max-classes-per-file +// tslint:disable:class-name +// tslint:disable:completed-docs +declare module 'ledgerco' { + interface comm { + close_async: Promise<void>; + create_async: Promise<void>; + } + export class comm_node implements comm { + public create_async: Promise<void>; + public close_async: Promise<void>; + } + export class comm_u2f implements comm { + public create_async: Promise<void>; + public close_async: Promise<void>; + } +} + +// Semaphore-async-await declarations +declare module 'semaphore-async-await' { + class Semaphore { + constructor(permits: number); + public wait(): void; + public signal(): void; + } + export default Semaphore; +} + +// web3-provider-engine declarations +declare module 'web3-provider-engine/subproviders/subprovider' { + class Subprovider {} + export = Subprovider; +} +declare module 'web3-provider-engine/subproviders/rpc' { + import * as Web3 from 'web3'; + class RpcSubprovider { + constructor(options: {rpcUrl: string}); + public handleRequest( + payload: Web3.JSONRPCRequestPayload, next: () => void, end: (err: Error|null, data?: any) => void, + ): void; + } + export = RpcSubprovider; +} + +declare module 'web3-provider-engine' { + class Web3ProviderEngine { + public on(event: string, handler: () => void): void; + public send(payload: any): void; + public sendAsync(payload: any, callback: (error: any, response: any) => void): void; + public addProvider(provider: any): void; + public start(): void; + public stop(): void; + } + export = Web3ProviderEngine; +} +// tslint:enable:max-classes-per-file +// tslint:enable:class-name +// tslint:enable:completed-docs |