UNPKG

@hotmeshio/hotmesh

Version:

Serverless Workflow

20 lines (19 loc) 1.29 kB
import { KeyStoreParams, KeyType } from '../../../../modules/key'; import { ILogger } from '../../../logger'; import { SubService } from '../../index'; import { SubscriptionCallback } from '../../../../types/quorum'; import { NatsClientType } from '../../../../types/nats'; import { ProviderClient, ProviderTransaction } from '../../../../types/provider'; declare class NatsSubService extends SubService<NatsClientType & ProviderClient> { private subscriptions; constructor(eventClient: NatsClientType, storeClient: NatsClientType); init(namespace: string, appId: string, engineId: string, logger: ILogger): Promise<void>; transact(): ProviderTransaction; mintKey(type: KeyType, params: KeyStoreParams): string; subscribe(keyType: KeyType.QUORUM, callback: SubscriptionCallback, appId: string, topic?: string): Promise<void>; unsubscribe(keyType: KeyType.QUORUM, appId: string, engineId?: string): Promise<void>; psubscribe(keyType: KeyType.QUORUM, callback: SubscriptionCallback, appId: string, topic?: string): Promise<void>; punsubscribe(keyType: KeyType.QUORUM, appId: string, topic?: string): Promise<void>; publish(keyType: KeyType.QUORUM, message: Record<string, any>, appId: string, topic?: string): Promise<boolean>; } export { NatsSubService };