import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { bem } from "../bem.js";
const { b } = bem("gd-ui-ext-notifications-panel");
export const NOTIFICATIONS_PANEL_ID = "gd-ui-ext-notifications-panel-id";
/**
 * Default implementation of the NotificationsPanel component.
 *
 * @public
 */
export function DefaultNotificationsPanel({ NotificationsPanelHeader, NotificationsList, NotificationsListEmptyState, NotificationsListErrorState, Notification, NotificationSkeletonItem, activeView, changeActiveView, markNotificationAsRead, markAllNotificationsAsRead, unreadNotificationsCount, hasUnreadNotifications, activeNotifications, onNotificationClick, closeNotificationsPanel, status, error, loadNextPage, hasNextPage, itemHeight, itemsGap, itemPadding, skeletonItemsCount, maxListHeight, }) {
    return (_jsxs("div", { className: b(), id: NOTIFICATIONS_PANEL_ID, children: [
            _jsx(NotificationsPanelHeader, { activeView: activeView, changeActiveView: changeActiveView, markAllNotificationsAsRead: () => {
                    void markAllNotificationsAsRead();
                }, hasUnreadNotifications: hasUnreadNotifications, unreadNotificationsCount: unreadNotificationsCount }), _jsx(NotificationsList, { NotificationsListEmptyState: NotificationsListEmptyState, NotificationsListErrorState: NotificationsListErrorState, Notification: Notification, NotificationSkeletonItem: NotificationSkeletonItem, activeView: activeView, onNotificationClick: onNotificationClick, activeNotifications: activeNotifications, markNotificationAsRead: markNotificationAsRead, status: status, error: error, loadNextPage: loadNextPage, hasNextPage: hasNextPage, itemHeight: itemHeight, itemsGap: itemsGap, itemPadding: itemPadding, skeletonItemsCount: skeletonItemsCount, maxListHeight: maxListHeight, closeNotificationsPanel: closeNotificationsPanel })
        ] }));
}
//# sourceMappingURL=DefaultNotificationsPanel.js.map