/** * Notification types */ import React from "react"; import { ViewMode, SelectionMode } from "./constants"; import { INotification, IMuteFilter, INotificationHistoryOptions, IFilter } from "../../../platform/services/notification/types"; import { SpawnParams } from "../../../platform/services/window/types"; export interface Control { action: string; label: string; run?: Function; } export interface NotificationCenterControlsProps { controls: Array; active?: Control["action"]; } export interface INotificationCenterProps { controls?: NotificationCenterControlsProps; notificationCard?: React.ComponentType; notificationHeaderRow?: React.ComponentType; notificationListRow?: React.ComponentType; title?: string; } export interface INotificationToastsProps { notificationCard?: React.ComponentType; title?: string; } export interface INotificationDetailProps { notification: INotification; } export type NotificationListViewProps = { notifications: INotification[]; notificationListRow?: React.ComponentType; notificationHeaderRow?: React.ComponentType; }; export type NotificationCardViewProps = { notifications: INotification[]; notificationCard?: React.ComponentType; }; export type NotificationsContextType = { viewMode: ViewMode; setViewMode: React.Dispatch>; selectionMode: SelectionMode; setSelectionMode: React.Dispatch>; isSelectAll: boolean; setSelectAll: React.Dispatch>; drawerControlProps: NotificationCenterControlsProps; setDrawerControlProps: React.Dispatch>; selectedNotification: INotification | null; setSelectedNotification: React.Dispatch>; searchString: string; setSearchString: React.Dispatch>; filteredNotifications: INotification[]; checkedNotifications: INotification[]; setCheckedNotifications: React.Dispatch>; setFilteredNotifications: React.Dispatch>; muteFilters: IMuteFilter[]; setMuteFilters: React.Dispatch>; }; export interface NotificationsConfig { filter?: { include?: []; exclude?: []; }; position?: {}; animation?: { displayDuration: number; animateIn: string; animateOut: string; }; isTransparent?: boolean; notificationsHistory?: { since?: string; filter?: IFilter; options?: INotificationHistoryOptions; } | boolean; applyMuteFilters?: boolean; windowName: string; } export interface WindowConfig { window: SpawnParams & NotificationsConfig; } export type ContextMenuAction = { id?: string; name: string; icon: React.ReactElement; action?: (name: any) => void; label: string; display: boolean; }; //# sourceMappingURL=types.d.ts.map