'use client'; import type { DashboardStatsResponseDTO } from '@/lib/types/generated/DashboardStatsResponseDTO'; import type { AdminDashboardViewData } from '@/lib/view-data/AdminDashboardViewData'; import type { ViewDataBuilder } from '@/lib/contracts/builders/ViewDataBuilder'; export class AdminDashboardViewDataBuilder { public static build(apiDto: DashboardStatsResponseDTO): AdminDashboardViewData { return { stats: { totalUsers: apiDto.totalUsers, activeUsers: apiDto.activeUsers, suspendedUsers: apiDto.suspendedUsers, deletedUsers: apiDto.deletedUsers, systemAdmins: apiDto.systemAdmins, recentLogins: apiDto.recentLogins, newUsersToday: apiDto.newUsersToday, }, }; } } AdminDashboardViewDataBuilder satisfies ViewDataBuilder;