1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 | import { JsonRpcApiProvider } from "./provider-jsonrpc.js";
|
12 | import type { Subscriber, Subscription } from "./abstract-provider.js";
|
13 | import type { EventFilter } from "./provider.js";
|
14 | import type { JsonRpcApiProviderOptions, JsonRpcError, JsonRpcPayload, JsonRpcResult } from "./provider-jsonrpc.js";
|
15 | import type { Networkish } from "./network.js";
|
16 |
|
17 |
|
18 |
|
19 |
|
20 | export declare class SocketSubscriber implements Subscriber {
|
21 | #private;
|
22 | |
23 |
|
24 |
|
25 | get filter(): Array<any>;
|
26 | |
27 |
|
28 |
|
29 |
|
30 | constructor(provider: SocketProvider, filter: Array<any>);
|
31 | start(): void;
|
32 | stop(): void;
|
33 | pause(dropWhilePaused?: boolean): void;
|
34 | resume(): void;
|
35 | /**
|
36 | * @_ignore:
|
37 | */
|
38 | _handleMessage(message: any): void;
|
39 | /**
|
40 | * Sub-classes **must** override this to emit the events on the
|
41 | * provider.
|
42 | */
|
43 | _emit(provider: SocketProvider, message: any): Promise<void>;
|
44 | }
|
45 | /**
|
46 | * A **SocketBlockSubscriber** listens for ``newHeads`` events and emits
|
47 | * ``"block"`` events.
|
48 | */
|
49 | export declare class SocketBlockSubscriber extends SocketSubscriber {
|
50 | |
51 |
|
52 |
|
53 | constructor(provider: SocketProvider);
|
54 | _emit(provider: SocketProvider, message: any): Promise<void>;
|
55 | }
|
56 | /**
|
57 | * A **SocketPendingSubscriber** listens for pending transacitons and emits
|
58 | * ``"pending"`` events.
|
59 | */
|
60 | export declare class SocketPendingSubscriber extends SocketSubscriber {
|
61 | |
62 |
|
63 |
|
64 | constructor(provider: SocketProvider);
|
65 | _emit(provider: SocketProvider, message: any): Promise<void>;
|
66 | }
|
67 | /**
|
68 | * A **SocketEventSubscriber** listens for event logs.
|
69 | */
|
70 | export declare class SocketEventSubscriber extends SocketSubscriber {
|
71 | #private;
|
72 | |
73 |
|
74 |
|
75 | get logFilter(): EventFilter;
|
76 | |
77 |
|
78 |
|
79 | constructor(provider: SocketProvider, filter: EventFilter);
|
80 | _emit(provider: SocketProvider, message: any): Promise<void>;
|
81 | }
|
82 | /**
|
83 | * A **SocketProvider** is backed by a long-lived connection over a
|
84 | * socket, which can subscribe and receive real-time messages over
|
85 | * its communication channel.
|
86 | */
|
87 | export declare class SocketProvider extends JsonRpcApiProvider {
|
88 | #private;
|
89 | |
90 |
|
91 |
|
92 |
|
93 |
|
94 | constructor(network?: Networkish, _options?: JsonRpcApiProviderOptions);
|
95 | _getSubscriber(sub: Subscription): Subscriber;
|
96 | /**
|
97 | * Register a new subscriber. This is used internalled by Subscribers
|
98 | * and generally is unecessary unless extending capabilities.
|
99 | */
|
100 | _register(filterId: number | string, subscriber: SocketSubscriber): void;
|
101 | _send(payload: JsonRpcPayload | Array<JsonRpcPayload>): Promise<Array<JsonRpcResult | JsonRpcError>>;
|
102 | /**
|
103 | * Sub-classes **must** call this with messages received over their
|
104 | * transport to be processed and dispatched.
|
105 | */
|
106 | _processMessage(message: string): Promise<void>;
|
107 | /**
|
108 | * Sub-classes **must** override this to send %%message%% over their
|
109 | * transport.
|
110 | */
|
111 | _write(message: string): Promise<void>;
|
112 | }
|
113 | //# sourceMappingURL=provider-socket.d.ts.map |
\ | No newline at end of file |