diff --git a/packages/web3/index.d.ts b/packages/web3/index.d.ts index c8e825c62b0..9eecfb1333d 100644 --- a/packages/web3/index.d.ts +++ b/packages/web3/index.d.ts @@ -25,4 +25,4 @@ declare class Web3 { } -export = Web3 \ No newline at end of file +export default Web3 diff --git a/packages/web3/types.d.ts b/packages/web3/types.d.ts index a11dc79ade5..163a43ecb2a 100644 --- a/packages/web3/types.d.ts +++ b/packages/web3/types.d.ts @@ -1,4 +1,4 @@ -import { BigNumber } from 'bignumber.js' // TODO change to BN +import { BigNumber } from 'bn.js' import * as us from 'underscore' @@ -18,9 +18,6 @@ export declare interface JsonRPCResponse { type Callback = (error: Error, result: T) => void type ABIDataTypes = "uint256" | "boolean" | "string" | "bytes" | string // TODO complete list -export declare interface Provider { - send(payload: JsonRPCRequest, callback: (e: Error, val: JsonRPCResponse) => void) -} type PromiEventType = "transactionHash" | "receipt" | "confirmation" | "error" export declare interface PromiEvent extends Promise { once(type: "transactionHash", handler: (receipt: string) => void): PromiEvent @@ -232,9 +229,44 @@ export declare interface Tx { gasPrice?: string | number } -export declare interface WebsocketProvider extends Provider { } -export declare interface HttpProvider extends Provider { } -export declare interface IpcProvider extends Provider { } +export declare interface IProvider { + send(payload: JsonRPCRequest, callback: (e: Error, val: JsonRPCResponse) => void) +} +export declare interface WebsocketProvider extends IProvider { + responseCallbacks: object + notificationCallbacks: [() => any] + connection: { + onclose(e: any): void, + onmessage(e: any): void, + onerror(e?: any): void + } + addDefaultEvents: () => void + on(type: string, callback: () => any): void + removeListener(type: string, callback: () => any): void + removeAllListeners(type: string): void + reset(): void +} +export declare interface HttpProvider extends IProvider { + responseCallbacks: undefined + notificationCallbacks: undefined + connection: undefined + addDefaultEvents: undefined + on(type: string, callback: () => any): undefined + removeListener(type: string, callback: () => any): undefined + removeAllListeners(type: string): undefined + reset(): undefined +} +export declare interface IpcProvider extends IProvider { + responseCallbacks: undefined + notificationCallbacks: undefined + connection: undefined + addDefaultEvents: undefined + on(type: string, callback: () => any): undefined + removeListener(type: string, callback: () => any): undefined + removeAllListeners(type: string): undefined + reset(): undefined +} +export type Provider = WebsocketProvider | IpcProvider | HttpProvider; type Unit = "kwei" | "femtoether" | "babbage" | "mwei" | "picoether" | "lovelace" | "qwei" | "nanoether" | "shannon" | "microether" | "szabo" | "nano" | "micro" | "milliether" | "finney" | "milli" | "ether" | "kether" | "grand" | "mether" | "gether" | "tether" export type BlockType = "latest" | "pending" | "genesis" | number export declare interface Iban { } @@ -422,4 +454,3 @@ export declare class BatchRequest { add(request: Request): void // execute(): void } -