import { ChainablePromiseElement } from 'webdriverio'; import { BasePage, IPageDecorator, VSCodeLocatorMap } from '../utils.js'; import { Notification as NotificationLocators } from '../../locators/1.73.0.js'; /** * Available types of notifications * @hidden */ export declare enum NotificationType { Info = "info", Warning = "warning", Error = "error", Any = "any" } interface NotificationButton extends IPageDecorator { } /** * Notification button * * @category Workbench */ declare class NotificationButton extends BasePage { /** * @private */ locatorKey: "Notification"; private title; constructor(locators: VSCodeLocatorMap, title: string); getTitle(): string; } export interface Notification extends IPageDecorator { } /** * Abstract element representing a notification * * @category Workbench */ export declare abstract class Notification extends BasePage { /** * Get the message of the notification * @returns Promise resolving to notification message */ getMessage(): Promise; /** * Get the type of the notification * @returns Promise resolving to NotificationType */ getType(): Promise; /** * Get the source of the notification as text * @returns Promise resolving to notification source */ getSource(): Promise; /** * Find whether the notification has an active progress bar * @returns Promise resolving to true/false */ hasProgress(): Promise; /** * Dismiss the notification * @returns Promise resolving when notification is dismissed */ dismiss(): Promise; /** * Get the action buttons of the notification as an array * of NotificationButton objects * @returns Promise resolving to array of NotificationButton objects */ getActions(): Promise; /** * Click on an action button with the given title * @param title title of the action/button * @returns Promise resolving when the select button is pressed */ takeAction(title: string): Promise; /** * Expand the notification if possible */ expand(): Promise; } /** * Notification displayed on its own in the notifications-toasts container * * @category Workbench */ export declare class StandaloneNotification extends Notification { /** * @private */ locatorKey: "Notification"; constructor(locators: VSCodeLocatorMap, notification: ChainablePromiseElement); } /** * Notification displayed within the notifications center * * @category Workbench */ export declare class CenterNotification extends Notification { /** * @private */ locatorKey: "Notification"; } export {}; //# sourceMappingURL=Notification.d.ts.map