opnet
Version:
The perfect library for building Bitcoin-based applications.
38 lines (37 loc) • 1.22 kB
TypeScript
import { WebSocketRequestOpcode, WebSocketResponseOpcode } from './WebSocketOpcodes.js';
export declare enum WebSocketClientEvent {
CONNECTED = "connected",
DISCONNECTED = "disconnected",
ERROR = "error",
BLOCK = "block",
EPOCH = "epoch",
MEMPOOL = "mempool"
}
export type EventHandler<T = unknown> = (data: T) => void;
export type SubscriptionHandler<T = unknown> = (data: T) => void;
export interface BlockNotification {
readonly blockNumber: bigint;
readonly blockHash: string;
readonly timestamp: bigint;
readonly txCount: number;
}
export interface EpochNotification {
readonly epochNumber: bigint;
readonly epochHash: string;
}
export interface MempoolNotification {
readonly txId: string;
readonly transactionType: string;
readonly timestamp: bigint;
}
export interface InternalPendingRequest {
readonly resolve: (value: Uint8Array) => void;
readonly reject: (error: Error) => void;
readonly timeout: ReturnType<typeof setTimeout>;
}
export interface MethodMapping {
readonly requestOpcode: WebSocketRequestOpcode;
readonly responseOpcode: WebSocketResponseOpcode;
readonly requestType: string;
readonly responseType: string;
}