@renproject/ren
Version:
Official Ren JavaScript SDK for bridging crypto assets cross-chain.
31 lines • 1.45 kB
TypeScript
/// <reference types="node" />
import { EventEmitter } from "events";
import { EventEmitterTyped } from "@renproject/utils";
import { GatewayTransaction } from "../gatewayTransaction";
export declare class TransactionEmitter<ToPayload extends {
chain: string;
txConfig?: any;
} = any> extends EventEmitter implements EventEmitterTyped<{
transaction: [GatewayTransaction<ToPayload>];
}> {
private getTransactions;
constructor(getTransactions: () => Array<GatewayTransaction<ToPayload>>);
addListener: <Event_1 extends "transaction">(event: Event_1, callback: Event_1 extends "transaction" ? (deposit: GatewayTransaction<ToPayload>) => void : never) => this;
/**
* `on` creates a new listener to `"transaction"` events, returning
* [[GatewayTransaction]] instances.
*
* `on` extends `EventEmitter.on`, modifying it to immediately return all
* previous `"transaction"` events, in addition to new events, when a new
* listener is created.
*
* @category Main
*/
on: <Event_1 extends "transaction">(event: Event_1, callback: (...values: {
transaction: [GatewayTransaction<ToPayload>];
}[Event_1]) => void | Promise<void>) => this;
once: <Event_1 extends "transaction">(event: Event_1, callback: (...values: {
transaction: [GatewayTransaction<ToPayload>];
}[Event_1]) => void | Promise<void>) => this;
}
//# sourceMappingURL=transactionEmitter.d.ts.map