import React, { FC } from 'react'; import { Methods } from 'penpal'; import { BoxProps, UseRadioProps, FlexProps, HeadingProps, IconButtonProps } from '@chakra-ui/react'; interface IframedContentProps { src: string; getUserToken: () => Promise | string; methods?: Methods; } declare const IframedContent: FC; declare const FullPageLoading: FC; type NotificationItemProps = { id: string; title: string; body?: string; icon?: string; senderIcon?: string; senderName?: string; createdAt: string; isUnread?: boolean; clickUrl?: string; onClick?: (id: string, clickUrl?: string) => void; }; declare const NotificationItem: FC; type NotificationsFilterProps = {}; declare const NotificationsFilter: FC<{ name: string; onChange?: (nextValue: string) => void; value: string; }>; declare const NotificationsFilterItem: FC; type NotificationsHeaderProps = {} & FlexProps; declare const NotificationsHeader: FC; type NotificationsTitleProps = {} & HeadingProps; declare const NotificationsTitle: FC; interface NotificationsTriggerTheme { color?: string; bg?: string; activeColor?: string; activeBg?: string; hoverColor?: string; hoverBg?: string; } declare const defaultNotificationsTriggerTheme: NotificationsTriggerTheme; type NotificationsTriggerProps = Omit & { theme?: NotificationsTriggerTheme; isLoading?: boolean; unreadCount?: number; }; declare const NotificationsMenuTrigger: React.ForwardRefExoticComponent & { theme?: NotificationsTriggerTheme | undefined; isLoading?: boolean | undefined; unreadCount?: number | undefined; } & React.RefAttributes>; interface NotificationsPopoverProps { buttonTheme?: NotificationsTriggerTheme; unreadCount?: number; onNotificationClick?: (id: string, clickUrl?: string) => void; closeOnNotificationClick?: boolean; buttonComponent?: React.ReactNode; } declare const NotificationsPopover: FC; type WebpushSubscriberProps = { onSubscribe?: () => void; }; declare const WebpushSubscriber: FC; interface SettingsProps { } declare const Settings: FC; type HNSProviderProps = { serviceWorkerPath?: string; publicKey?: string; children?: React.ReactNode; getUserToken: () => Promise; }; type HNSContextResult = { isWebPushSubscribed: boolean; subscribeToWebPush: () => Promise; serviceWorkerPath?: string; publicKey?: string; getUserToken: () => Promise; }; declare const HNSContext: React.Context; declare const HNSProviderInner: FC; declare const HNSProvider: FC; declare function useHNSContext(): HNSContextResult; export { FullPageLoading, HNSContext, HNSContextResult, HNSProvider, HNSProviderInner, HNSProviderProps, IframedContent, IframedContentProps, NotificationItem, NotificationItemProps, NotificationsFilter, NotificationsFilterItem, NotificationsFilterProps, NotificationsHeader, NotificationsHeaderProps, NotificationsMenuTrigger, NotificationsPopover, NotificationsPopoverProps, NotificationsTitle, NotificationsTitleProps, NotificationsTriggerProps, NotificationsTriggerTheme, Settings, SettingsProps, WebpushSubscriber, WebpushSubscriberProps, defaultNotificationsTriggerTheme, useHNSContext };