39 lines
775 B
TypeScript
39 lines
775 B
TypeScript
import { ViewData } from '@/lib/contracts/view-data/ViewData';
|
|
|
|
/**
|
|
* DashboardStatsViewData
|
|
*
|
|
* ViewData for DashboardStatsViewModel.
|
|
* Template-ready data structure with only primitives.
|
|
*/
|
|
|
|
export interface DashboardStatsViewData extends ViewData {
|
|
totalUsers: number;
|
|
activeUsers: number;
|
|
suspendedUsers: number;
|
|
deletedUsers: number;
|
|
systemAdmins: number;
|
|
recentLogins: number;
|
|
newUsersToday: number;
|
|
userGrowth: {
|
|
label: string;
|
|
value: number;
|
|
color: string;
|
|
}[];
|
|
roleDistribution: {
|
|
label: string;
|
|
value: number;
|
|
color: string;
|
|
}[];
|
|
statusDistribution: {
|
|
active: number;
|
|
suspended: number;
|
|
deleted: number;
|
|
};
|
|
activityTimeline: {
|
|
date: string;
|
|
newUsers: number;
|
|
logins: number;
|
|
}[];
|
|
}
|