rx-nostr
Version:
A library based on RxJS, which allows Nostr applications to easily communicate with relays.
36 lines • 1.1 kB
TypeScript
import { Observable } from 'rxjs';
import { FilledRxNostrConfig } from '../config/index.js';
import { EventPacket, LazyREQ } from '../packet.js';
import { AuthProxy } from './auth.js';
import { RelayConnection } from './relay.js';
export interface FinPacket {
from: string;
subId: string;
}
export declare class SubscribeProxy {
private relay;
private authProxy;
private config;
private subs;
private authRequiredSubs;
private fin$;
private disposed;
private queue;
constructor(params: {
relay: RelayConnection;
authProxy: AuthProxy | null;
config: FilledRxNostrConfig;
});
subscribe(req: LazyREQ, autoclose: boolean): void;
unsubscribe(subId: string): void;
isOngoingOrQueued(subId: string): boolean;
getEventObservable(): Observable<EventPacket>;
getFinObservable(): Observable<FinPacket>;
getLogicalConnectionSizeObservable(): Observable<number>;
dispose(): void;
[Symbol.dispose](): void;
private sendREQ;
private sendCLOSE;
private fin;
}
//# sourceMappingURL=subscribe.d.ts.map