@aimee-blue/ab-service-kit
Version:
Aimee Blue Service Template
18 lines (17 loc) • 866 B
TypeScript
import * as PubSub from '@google-cloud/pubsub';
import { Observable } from 'rxjs';
import { BasicLogger } from '../logging';
export declare const pubsubClient: () => PubSub.PubSub;
export declare const getTopic: (topic: string) => PubSub.Topic;
export declare function prepareTopics(topics: string[]): Promise<void>;
export declare function publish<T>(topic: string, data: T, logger?: BasicLogger): Promise<void>;
export declare type Message = PubSub.Message;
declare type SubscribeOptions = PubSub.SubscriptionOptions & {
autoCreateTopic?: boolean;
subscriptionName?: string;
autoCreateSubscription?: boolean;
autoDeleteSubscription?: boolean;
subscriptionOptions?: PubSub.CreateSubscriptionOptions;
};
export declare function subscribe(topic: string, options?: SubscribeOptions, optLogger?: BasicLogger): Observable<PubSub.Message>;
export {};