UNPKG

@towns-protocol/sdk

Version:

For more details, visit the following resources:

48 lines 2.78 kB
import { DmChannelSettingValue, GdmChannelSettingValue, GetSettingsResponse, SpaceChannelSettingValue, WebPushSubscriptionObject, PlainMessage } from '@towns-protocol/proto'; import { DescMessage, MessageShape } from '@bufbuild/protobuf'; import { SignerContext } from './signerContext'; import { RpcOptions } from './rpcCommon'; import { StreamsView } from './views/streamsView'; import { NotificationSettingsModel } from './views/streams/notificationSettings'; export interface INotificationStore { getItem<Desc extends DescMessage>(schema: Desc, key: string): MessageShape<Desc> | undefined; setItem<Desc extends DescMessage>(schema: Desc, key: string, value: MessageShape<Desc>): void; } export declare class NotificationsClient { private readonly signerContext; private readonly url; private readonly store; private readonly opts; readonly streamsView: StreamsView; get notificationSettings(): NotificationSettingsModel; private _client?; private startResponseKey; private finishResponseKey; private settingsKey; private getClientPromise; private getSettingsPromise; constructor(signerContext: SignerContext, url: string, store: INotificationStore | undefined, opts: RpcOptions | undefined, streamsView: StreamsView); get userId(): string; private getLocalStartResponse; private setLocalStartResponse; private getLocalFinishResponse; private setLocalFinishResponse; private getLocalSettings; private setLocalSettings; private updateLocalSettings; private getClient; private _getClient; private withClient; getSettings(): Promise<GetSettingsResponse | undefined>; private _getSettings; subscribeWebPush(subscription: PlainMessage<WebPushSubscriptionObject>): Promise<import("@bufbuild/protobuf").Message<"river.SubscribeWebPushResponse"> | undefined>; unsubscribeWebPush(subscription: PlainMessage<WebPushSubscriptionObject>): Promise<import("@bufbuild/protobuf").Message<"river.UnsubscribeWebPushResponse"> | undefined>; setDmGlobalSetting(value: DmChannelSettingValue): Promise<void | undefined>; setGdmGlobalSetting(value: GdmChannelSettingValue): Promise<void | undefined>; setDmChannelSetting(channelId: string, value: DmChannelSettingValue): Promise<void | undefined>; setGdmChannelSetting(channelId: string, value: GdmChannelSettingValue): Promise<void | undefined>; setSpaceSetting(spaceId: string, value: SpaceChannelSettingValue): Promise<void | undefined>; setChannelSetting(channelId: string, value: SpaceChannelSettingValue): Promise<void | undefined>; } export declare function getMutedChannelIds(settings?: PlainMessage<GetSettingsResponse>): Set<string> | undefined; //# sourceMappingURL=notificationsClient.d.ts.map