import { NotificationLinkType } from './notification-link-type'; import { NotificationState } from './notification-state'; /** * Type definition of Client Notification. */ export declare enum ClientNotificationType { /** * Display at the notification center. Using the ID, it can update the single notification. */ NotificationCenter = 0, /** * @deprecated * * All notification should go through NotificationCenter * Display as alert bar. ID will be ignored, and doesn't retain the notification instance and state. */ AlertBar = 1 } /** * The notification produced by the client code as instant notification. */ export interface ClientNotification { /** * @deprecated * There is no longer a distinction between NotificationCenter and AlertBar notifications */ type?: ClientNotificationType; /** * The session id (or instance id). */ id: string; /** * The state of notification. */ state: NotificationState; /** * The title of work item to display user. (localized) */ title: string; /** * @deprecated * * This field can be removed */ description?: string; /** * The message. (localized) */ message: string; /** * Possible solution to address error. (localized) */ solutionMessage?: string; /** * The success link to navigate to the object view. (optional) * At default, it brings to the home page of the module. * The path is relative to from the manifest opened point unless linkType is specified */ link?: string; /** * The text to show up on the notification link text ex: "Go to on sme-xyz.domain.com" * By default the text will be the auto detected source name like "Files" */ linkText?: string; /** * the type of notification link. Default behavior is RelativeToTool */ linkType?: NotificationLinkType; }