UNPKG

send-crypto

Version:

A minimal JavaScript library / wallet for sending crypto assets

35 lines (34 loc) 1.32 kB
/// <reference types="node" /> /** * @file PromiEvent.js * @author Fabian Vogelsteller <fabian@ethereum.org>, Samuel Furter <samuel@ethereum.org> * @date 2018 */ import { EventEmitter } from "events"; declare class InternalPromiEvent<T> { readonly [Symbol.toStringTag]: "Promise"; readonly promise: Promise<T>; resolve: (value?: T) => void; reject: (reason?: any) => void; readonly eventEmitter: EventEmitter; readonly emit: EventEmitter["emit"]; readonly removeListener: EventEmitter["removeListener"]; readonly on: (event: string, callback: (...values: readonly any[]) => void | Promise<void>) => this; readonly once: (event: string, callback: (...values: readonly any[]) => void | Promise<void>) => this; readonly then: Promise<T>["then"]; readonly catch: Promise<T>["catch"]; readonly finally: Promise<T>["finally"]; readonly listeners: EventEmitter["listeners"]; readonly eventNames: EventEmitter["eventNames"]; /** * @constructor */ constructor(); /** * Proxy handler to call the promise or eventEmitter methods */ proxyHandler(target: PromiEvent<T>, name: string): any; } export declare type PromiEvent<T> = InternalPromiEvent<T> & Promise<T>; export declare const newPromiEvent: <T>() => PromiEvent<T>; export {};