<?php

namespace PublishPress\FuturePro\Modules\Notifications\Interfaces;

interface NotificationsModelInterface
{
    public function getUserNotifications(
        int $userId,
        ?int $limit = null,
        ?int $offset = null,
        ?string $order = 'ASC'
    ): array;

    public function getUnreadUserNotifications(int $userId): array;

    public function markNotificationsAsRead(int $userId, array $notificationIds): void;

    public function fillNotificationOptionsByEvent(array $notifications): array;
}
