UNPKG

haystack-nclient

Version:

Project Haystack Network Client

67 lines (66 loc) 2.21 kB
import { HDict, HNum, HRef, HStr } from 'haystack-core'; import { ClientServiceConfig } from '../ClientServiceConfig'; export interface TopicSetting extends HDict { topic: HStr; dis?: HStr; description?: HStr; } export interface UserViewSetting extends HDict { topic: HStr; kind: HStr; filter?: HStr; } export interface SystemPurgeSetting extends HDict { kind: HStr; purgeInterval: HNum; } /** * An implementation of the FIN Settings Notification service. */ export declare class NotificationSettingsService { #private; /** * Constructs a new notifications service object. * * @param serviceConfig Service configuration. */ constructor(serviceConfig: ClientServiceConfig); /** * Get all the notification settings topics * * @returns The result of the read operation. */ readTopics(): Promise<TopicSetting[]>; /** * Adds or updates a topic description. * Note: Setting role descriptions is an operation that requires a super user role. * * @param topicDescription The topic description object * @returns Returns the id of the topic description that was either created or updated. */ setTopicSetting(topicSetting: TopicSetting): Promise<HRef>; /** * Get the view notifications settings for the current user. * * @returns Returns the view settings for the current users. */ readUserViews(): Promise<UserViewSetting[]>; /** * Sets a notification view setting for the current user. * @param viewSetting The setting object * @returns Returns the id of the setting that was either created or updated. */ setUserViewSetting(userViewSetting: UserViewSetting): Promise<HRef>; /** * Get the system wide purge notifications settings. * * @returns Returns the system purge settings. */ readPurgeSettings(): Promise<SystemPurgeSetting[]>; /** * Sets a notification purge setting. * @param purgeSetting The setting object * @returns Returns the id of the setting that was either created or updated. */ setPurgeSettings(systemPurgeSetting: SystemPurgeSetting): Promise<HRef>; }