import { ChannelType } from "../../Common/Channels/ChannelType"; export declare enum TimeRange { DAY = 1, WEEK = 7, MONTH = 30, YEAR = 365, LAST_7_DAYS = 77, LAST_30_DAYS = 3030, LAST_60_DAYS = 60, CUSTOM = 0 } export interface BodyDashboard { userId: string; timeRange: TimeRange | TimeRange.DAY; timeStart: Date | null; timeEnd: Date | null; memberId: string | null; groupId: string; ending?: string | null; /** Filters conversations by IConversation.assignment.owner.id. */ ownerUserId?: string | null; } export declare enum GeneralDashboardType { UNASSIGNED = 0, USER = 1, GROUP = 2 } export declare class GeneralDashboard { type: GeneralDashboardType | GeneralDashboardType.USER; id: string | null; userId: string | null; groupId: string | null; name: string; imageUrl: string; quantity: number; expired: number; } export declare enum RecordsDashboardType { ALL = 0, NEW = 1, IN_PROGRESS = 2, EXPIRED = 3, FINALIZED = 4, CONTACTS = 11 } export declare class RecordsDashboard { type: RecordsDashboardType | RecordsDashboardType.ALL; quantity: number; } export declare class EndingsDashboard { endingId: string; name: string; quantity: number; } export declare class DashboardGroupInfo { groupId: string; groupName: string; values: DashboardGroupValues; members: DashboardGroupUserValues[]; } export declare class DashboardGroupValues { totalConversations: number; activeConversations: number; newConversations: number; expiredConversations: number; averageFirstResponseTime: string | null; averageResponseTime: string | null; } export declare class DashboardGroupUserValues { userId: string; userName: string; userImageUrl: string; activeConversations: number; expiredConversations: number; averageFirstResponseTime: string | null; averageResponseTime: string | null; } export declare class DashboardUserValues { userId: string; userName: string; userImageUrl: string; totalConversations: number; activeConversations: number; newConversations: number; expiredConversations: number; averageFirstResponseTime: string | null; averageResponseTime: string | null; groupConversations: DashboardUserConversationsGroups[]; } export declare class DashboardUserConversationsGroups { groupId: string; groupName: string; activeConversations: number; expiredConversations: number; } export declare class ChannelsDashboard { channelType: ChannelType; quantity: number; channelName: string; } export declare class LabelsDashboard { labelId: string; name: string; quantity: number; } export declare class TimesDashboard { averageFirstResponseTime: string; finalizedTime: string; } export declare class QuantityDashboard { contactsQuantity: number; finalizedQuantity: number; onlineAgentsQuantity: number; groupAgentsQuantity: number; }