import { NotificationsService } from './notifications.service.js';
import { QueryNotificationDto } from './dto/query-notification.dto.js';
import { BulkActionDto } from './dto/bulk-action.dto.js';
export declare class NotificationsController {
    private readonly notificationsService;
    constructor(notificationsService: NotificationsService);
    findAll(userId: string, query: QueryNotificationDto): Promise<import("../common/dto/pagination.dto.js").PaginatedResponseDto<import("./entities/notification.entity.js").Notification>>;
    getUnreadCount(userId: string): Promise<{
        count: number;
    }>;
    markAsRead(id: string, userId: string): Promise<import("./entities/notification.entity.js").Notification>;
    markAllAsRead(userId: string): Promise<{
        success: boolean;
    }>;
    bulkMarkAsRead(userId: string, bulkActionDto: BulkActionDto): Promise<{
        success: boolean;
    }>;
    remove(id: string, userId: string): Promise<{
        success: boolean;
    }>;
    bulkRemove(userId: string, bulkActionDto: BulkActionDto): Promise<{
        success: boolean;
    }>;
}
