@leancodepl/rx-pipe-client
Version:
RxJS-based client for real-time data streaming using @leancodepl/pipe
21 lines (20 loc) • 819 B
TypeScript
import { Pipe } from "@leancodepl/pipe";
/**
* Creates RxJS-based topic functions for real-time data subscriptions using "@leancodepl/pipe".
*
* @param pipe - Pipe instance from "@leancodepl/pipe"
* @returns Object containing `createTopic` method for creating typed observables
* @example
* ```typescript
* const pipe = createPipe({ url: 'wss://api.example.com/pipe' });
* const pipeClient = mkPipeClient({ pipe });
*
* const chatTopic = pipeClient.createTopic('chat');
* const messages$ = chatTopic({ roomId: 'room1' });
* ```
*/
export declare function mkPipeClient({ pipe }: {
pipe: Pipe;
}): {
createTopic<TTopic, TNotifications extends Record<string, unknown>>(topicType: string): (topic: TTopic) => import("rxjs").Observable<import("@leancodepl/pipe").NotificationsUnion<TNotifications>>;
};