1 | import Observable from 'zen-observable-ts';
|
2 | import { PubSubProvider, ProviderOptions } from '../types/Provider';
|
3 | import { PubSubContent } from '../types/PubSub';
|
4 | export declare abstract class AbstractPubSubProvider<T extends ProviderOptions> implements PubSubProvider {
|
5 | private _config;
|
6 | constructor(options: T);
|
7 | configure(config: T): T;
|
8 | getCategory(): string;
|
9 | abstract getProviderName(): string;
|
10 | protected get options(): T;
|
11 | abstract newClient(clientOptions: T): Promise<any>;
|
12 | abstract publish(topics: string[] | string, msg: PubSubContent, options?: T): void;
|
13 | abstract subscribe(topics: string[] | string, options?: T): Observable<PubSubContent>;
|
14 | }
|