import { CustomData } from '../main'; import { ButtonOptions } from '../controls'; import { TemplateNames } from './templates'; /** * Configuration options for constructing an updatable Notifications object, shared between all templates. */ export interface BaseUpdatableNotificationOptions { /** * A unique identifier for the notification. * * Mandatory field for Notification updates. */ id: string; /** * description of update type 'markdown', 'list' or 'custom' */ template?: T; /** * Application-defined context data that can be attached to buttons on notifications. * * When using forms, form data submitted will be written to `customData` and returned to your app by * listening to the submit {@link NotificationActionEvent|`notification-action`} with the trigger {@link ActionTrigger.SUBMIT|submit}. */ customData?: CustomData; /** * A list of buttons to display below the notification text. * * Notifications support up to four buttons. Attempting to add more than four will result in the notification * being rejected by the service. */ buttons?: ButtonOptions[]; }