@dakkitor/api-contracts 1.1.138 → 1.1.139
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abilities/abilities.contract.d.ts +2 -0
- package/dist/abilities/abilities.contract.d.ts.map +1 -1
- package/dist/abilities/abilities.contract.js +4 -1
- package/dist/abilities/cron-scheduler.abilities.json +10 -0
- package/dist/abilities/first-agent.abilities.json +12 -1
- package/dist/abilities/second-agent.abilities.json +14 -1
- package/dist/actives/actives.contract.d.ts +13693 -7831
- package/dist/actives/actives.contract.d.ts.map +1 -1
- package/dist/actives/actives.contract.js +290 -2
- package/dist/bookings/bookings.contract.d.ts +31994 -65342
- package/dist/bookings/bookings.contract.d.ts.map +1 -1
- package/dist/bookings/bookings.contract.js +223 -8
- package/dist/cron-executions/cron-executions.contract.d.ts +157 -33
- package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -1
- package/dist/cron-executions/cron-executions.contract.js +14 -0
- package/dist/dashboards/dashboard-widgets.contract.d.ts +688 -164
- package/dist/dashboards/dashboard-widgets.contract.d.ts.map +1 -1
- package/dist/dashboards/dashboard-widgets.contract.js +140 -7
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -3
- package/dist/jobs/jobs.contract.d.ts +6264 -3810
- package/dist/jobs/jobs.contract.d.ts.map +1 -1
- package/dist/jobs/jobs.contract.js +77 -1
- package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +434 -300
- package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -1
- package/dist/lead-distribution/agent-lead-distribution.contract.js +7 -1
- package/dist/workers/workers.contract.d.ts +1086 -602
- package/dist/workers/workers.contract.d.ts.map +1 -1
- package/dist/workers/workers.contract.js +63 -2
- package/package.json +1 -1
|
@@ -53,11 +53,11 @@ export declare const FaPipelineWidgetSchema: z.ZodObject<{
|
|
|
53
53
|
recentCount: z.ZodNumber;
|
|
54
54
|
}, "strip", z.ZodTypeAny, {
|
|
55
55
|
total: number;
|
|
56
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
56
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
57
57
|
recentCount: number;
|
|
58
58
|
}, {
|
|
59
59
|
total: number;
|
|
60
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
60
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
61
61
|
recentCount: number;
|
|
62
62
|
}>;
|
|
63
63
|
summary: z.ZodObject<{
|
|
@@ -77,7 +77,7 @@ export declare const FaPipelineWidgetSchema: z.ZodObject<{
|
|
|
77
77
|
};
|
|
78
78
|
collaborations: {
|
|
79
79
|
total: number;
|
|
80
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
80
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
81
81
|
recentCount: number;
|
|
82
82
|
};
|
|
83
83
|
}, {
|
|
@@ -87,7 +87,7 @@ export declare const FaPipelineWidgetSchema: z.ZodObject<{
|
|
|
87
87
|
};
|
|
88
88
|
collaborations: {
|
|
89
89
|
total: number;
|
|
90
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
90
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
91
91
|
recentCount: number;
|
|
92
92
|
};
|
|
93
93
|
}>;
|
|
@@ -101,12 +101,12 @@ export declare const FaClientsWidgetSchema: z.ZodObject<{
|
|
|
101
101
|
pendingVerification: z.ZodNumber;
|
|
102
102
|
}, "strip", z.ZodTypeAny, {
|
|
103
103
|
total: number;
|
|
104
|
-
byStatus: Partial<Record<"
|
|
104
|
+
byStatus: Partial<Record<"APPROVED" | "PENDING_VERIFICATION" | "BLACKLISTED", number>>;
|
|
105
105
|
recentlyAdded: number;
|
|
106
106
|
pendingVerification: number;
|
|
107
107
|
}, {
|
|
108
108
|
total: number;
|
|
109
|
-
byStatus: Partial<Record<"
|
|
109
|
+
byStatus: Partial<Record<"APPROVED" | "PENDING_VERIFICATION" | "BLACKLISTED", number>>;
|
|
110
110
|
recentlyAdded: number;
|
|
111
111
|
pendingVerification: number;
|
|
112
112
|
}>;
|
|
@@ -135,13 +135,12 @@ export declare const FaCheckingsWidgetSchema: z.ZodObject<{
|
|
|
135
135
|
export declare const FaCallHistoryWidgetSchema: z.ZodObject<{
|
|
136
136
|
totalCalls: z.ZodNumber;
|
|
137
137
|
callsToday: z.ZodNumber;
|
|
138
|
-
callsThisWeek: z.ZodNumber;
|
|
139
138
|
averageRatingToday: z.ZodNumber;
|
|
140
139
|
efficientCallsToday: z.ZodNumber;
|
|
141
140
|
conversionRate: z.ZodNumber;
|
|
142
141
|
performanceScore: z.ZodNumber;
|
|
143
142
|
performanceTier: z.ZodEnum<["high", "medium", "low", "new"]>;
|
|
144
|
-
ratingBreakdown: z.ZodRecord<z.
|
|
143
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<typeof import("../common/call-rating.schema").CallRating>, z.ZodNumber>;
|
|
145
144
|
assignmentCalls: z.ZodNumber;
|
|
146
145
|
followUpCalls: z.ZodNumber;
|
|
147
146
|
callbackCalls: z.ZodNumber;
|
|
@@ -150,15 +149,14 @@ export declare const FaCallHistoryWidgetSchema: z.ZodObject<{
|
|
|
150
149
|
ownResearchLeadsExistingInSystem: z.ZodNumber;
|
|
151
150
|
ownResearchLeadsNew: z.ZodNumber;
|
|
152
151
|
}, "strip", z.ZodTypeAny, {
|
|
153
|
-
conversionRate: number;
|
|
154
152
|
totalCalls: number;
|
|
155
|
-
performanceScore: number;
|
|
156
|
-
performanceTier: "high" | "medium" | "low" | "new";
|
|
157
153
|
callsToday: number;
|
|
158
|
-
callsThisWeek: number;
|
|
159
154
|
averageRatingToday: number;
|
|
160
155
|
efficientCallsToday: number;
|
|
161
|
-
|
|
156
|
+
conversionRate: number;
|
|
157
|
+
performanceScore: number;
|
|
158
|
+
performanceTier: "high" | "medium" | "low" | "new";
|
|
159
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
162
160
|
assignmentCalls: number;
|
|
163
161
|
followUpCalls: number;
|
|
164
162
|
callbackCalls: number;
|
|
@@ -167,15 +165,14 @@ export declare const FaCallHistoryWidgetSchema: z.ZodObject<{
|
|
|
167
165
|
ownResearchLeadsExistingInSystem: number;
|
|
168
166
|
ownResearchLeadsNew: number;
|
|
169
167
|
}, {
|
|
170
|
-
conversionRate: number;
|
|
171
168
|
totalCalls: number;
|
|
172
|
-
performanceScore: number;
|
|
173
|
-
performanceTier: "high" | "medium" | "low" | "new";
|
|
174
169
|
callsToday: number;
|
|
175
|
-
callsThisWeek: number;
|
|
176
170
|
averageRatingToday: number;
|
|
177
171
|
efficientCallsToday: number;
|
|
178
|
-
|
|
172
|
+
conversionRate: number;
|
|
173
|
+
performanceScore: number;
|
|
174
|
+
performanceTier: "high" | "medium" | "low" | "new";
|
|
175
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
179
176
|
assignmentCalls: number;
|
|
180
177
|
followUpCalls: number;
|
|
181
178
|
callbackCalls: number;
|
|
@@ -197,12 +194,12 @@ export declare const AllAgentsCallHistoryQuerySchema: z.ZodObject<{
|
|
|
197
194
|
limit: number;
|
|
198
195
|
page: number;
|
|
199
196
|
date?: string | undefined;
|
|
200
|
-
view?: "
|
|
197
|
+
view?: "FA" | "SA" | undefined;
|
|
201
198
|
}, {
|
|
199
|
+
date?: string | undefined;
|
|
202
200
|
limit?: number | undefined;
|
|
203
201
|
page?: number | undefined;
|
|
204
|
-
|
|
205
|
-
view?: "SA" | "FA" | undefined;
|
|
202
|
+
view?: "FA" | "SA" | undefined;
|
|
206
203
|
}>;
|
|
207
204
|
/**
|
|
208
205
|
* FA Actives Widget - Today's active workers (FA perspective)
|
|
@@ -213,20 +210,20 @@ export declare const FaActivesWidgetSchema: z.ZodObject<{
|
|
|
213
210
|
byStatusFa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
214
211
|
}, "strip", z.ZodTypeAny, {
|
|
215
212
|
total: number;
|
|
216
|
-
byStatusFa: Partial<Record<"
|
|
213
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
217
214
|
}, {
|
|
218
215
|
total: number;
|
|
219
|
-
byStatusFa: Partial<Record<"
|
|
216
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
220
217
|
}>;
|
|
221
218
|
}, "strip", z.ZodTypeAny, {
|
|
222
219
|
today: {
|
|
223
220
|
total: number;
|
|
224
|
-
byStatusFa: Partial<Record<"
|
|
221
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
225
222
|
};
|
|
226
223
|
}, {
|
|
227
224
|
today: {
|
|
228
225
|
total: number;
|
|
229
|
-
byStatusFa: Partial<Record<"
|
|
226
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
230
227
|
};
|
|
231
228
|
}>;
|
|
232
229
|
/**
|
|
@@ -263,21 +260,12 @@ export declare const FaBookingsWidgetSchema: z.ZodObject<{
|
|
|
263
260
|
export declare const SaWorkersWidgetSchema: z.ZodObject<{
|
|
264
261
|
total: z.ZodNumber;
|
|
265
262
|
addedToday: z.ZodNumber;
|
|
266
|
-
addedThisWeek: z.ZodNumber;
|
|
267
|
-
addedThisMonth: z.ZodNumber;
|
|
268
|
-
byAvailability: z.ZodOptional<z.ZodRecord<z.ZodEnum<["AVAILABLE", "PARTIALLY_AVAILABLE", "UNAVAILABLE"]>, z.ZodNumber>>;
|
|
269
263
|
}, "strip", z.ZodTypeAny, {
|
|
270
264
|
total: number;
|
|
271
265
|
addedToday: number;
|
|
272
|
-
addedThisWeek: number;
|
|
273
|
-
addedThisMonth: number;
|
|
274
|
-
byAvailability?: Partial<Record<"AVAILABLE" | "PARTIALLY_AVAILABLE" | "UNAVAILABLE", number>> | undefined;
|
|
275
266
|
}, {
|
|
276
267
|
total: number;
|
|
277
268
|
addedToday: number;
|
|
278
|
-
addedThisWeek: number;
|
|
279
|
-
addedThisMonth: number;
|
|
280
|
-
byAvailability?: Partial<Record<"AVAILABLE" | "PARTIALLY_AVAILABLE" | "UNAVAILABLE", number>> | undefined;
|
|
281
269
|
}>;
|
|
282
270
|
/**
|
|
283
271
|
* SA Bookings Widget - Booking management (SA perspective)
|
|
@@ -316,20 +304,266 @@ export declare const SaActivesWidgetSchema: z.ZodObject<{
|
|
|
316
304
|
byStatusSa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
317
305
|
}, "strip", z.ZodTypeAny, {
|
|
318
306
|
total: number;
|
|
319
|
-
byStatusSa: Partial<Record<"
|
|
307
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
320
308
|
}, {
|
|
321
309
|
total: number;
|
|
322
|
-
byStatusSa: Partial<Record<"
|
|
310
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
323
311
|
}>;
|
|
324
312
|
}, "strip", z.ZodTypeAny, {
|
|
325
313
|
today: {
|
|
326
314
|
total: number;
|
|
327
|
-
byStatusSa: Partial<Record<"
|
|
315
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
328
316
|
};
|
|
329
317
|
}, {
|
|
330
318
|
today: {
|
|
331
319
|
total: number;
|
|
332
|
-
byStatusSa: Partial<Record<"
|
|
320
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
321
|
+
};
|
|
322
|
+
}>;
|
|
323
|
+
/**
|
|
324
|
+
* Admin FA Aggregate Widget - Summed FA stats across all agents for a date
|
|
325
|
+
*/
|
|
326
|
+
export declare const AdminFaAggregateSchema: z.ZodObject<{
|
|
327
|
+
actives: z.ZodObject<{
|
|
328
|
+
/** Flat structure (unlike per-agent FaActivesWidgetSchema which nests under 'today') */
|
|
329
|
+
total: z.ZodNumber;
|
|
330
|
+
byStatusFa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
331
|
+
}, "strip", z.ZodTypeAny, {
|
|
332
|
+
total: number;
|
|
333
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
334
|
+
}, {
|
|
335
|
+
total: number;
|
|
336
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
337
|
+
}>;
|
|
338
|
+
bookings: z.ZodObject<{
|
|
339
|
+
totalToday: z.ZodNumber;
|
|
340
|
+
byStatus: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingType>, z.ZodNumber>;
|
|
341
|
+
byCategory: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingCategory>, z.ZodNumber>;
|
|
342
|
+
ongoingBookings: z.ZodNumber;
|
|
343
|
+
startingToday: z.ZodNumber;
|
|
344
|
+
pendingConfirmation: z.ZodNumber;
|
|
345
|
+
upcomingStarts: z.ZodNumber;
|
|
346
|
+
}, "strip", z.ZodTypeAny, {
|
|
347
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
348
|
+
totalToday: number;
|
|
349
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
350
|
+
ongoingBookings: number;
|
|
351
|
+
startingToday: number;
|
|
352
|
+
pendingConfirmation: number;
|
|
353
|
+
upcomingStarts: number;
|
|
354
|
+
}, {
|
|
355
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
356
|
+
totalToday: number;
|
|
357
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
358
|
+
ongoingBookings: number;
|
|
359
|
+
startingToday: number;
|
|
360
|
+
pendingConfirmation: number;
|
|
361
|
+
upcomingStarts: number;
|
|
362
|
+
}>;
|
|
363
|
+
callMetrics: z.ZodObject<{
|
|
364
|
+
/**
|
|
365
|
+
* Aggregate metrics across all FA agents.
|
|
366
|
+
* Note: `performanceTier` from FaCallHistoryWidgetSchema is omitted — it is not
|
|
367
|
+
* meaningful as an aggregate. `performanceScore` is renamed to `averagePerformanceScore`
|
|
368
|
+
* to make clear it is an average across agents.
|
|
369
|
+
*/
|
|
370
|
+
totalCalls: z.ZodNumber;
|
|
371
|
+
callsToday: z.ZodNumber;
|
|
372
|
+
averageRatingToday: z.ZodNumber;
|
|
373
|
+
efficientCallsToday: z.ZodNumber;
|
|
374
|
+
conversionRate: z.ZodNumber;
|
|
375
|
+
averagePerformanceScore: z.ZodNumber;
|
|
376
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<typeof import("../common/call-rating.schema").CallRating>, z.ZodNumber>;
|
|
377
|
+
assignmentCalls: z.ZodNumber;
|
|
378
|
+
followUpCalls: z.ZodNumber;
|
|
379
|
+
callbackCalls: z.ZodNumber;
|
|
380
|
+
ownResearchCalls: z.ZodNumber;
|
|
381
|
+
ownResearchLeadsAdded: z.ZodNumber;
|
|
382
|
+
ownResearchLeadsExistingInSystem: z.ZodNumber;
|
|
383
|
+
ownResearchLeadsNew: z.ZodNumber;
|
|
384
|
+
}, "strip", z.ZodTypeAny, {
|
|
385
|
+
totalCalls: number;
|
|
386
|
+
callsToday: number;
|
|
387
|
+
averageRatingToday: number;
|
|
388
|
+
efficientCallsToday: number;
|
|
389
|
+
conversionRate: number;
|
|
390
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
391
|
+
assignmentCalls: number;
|
|
392
|
+
followUpCalls: number;
|
|
393
|
+
callbackCalls: number;
|
|
394
|
+
ownResearchCalls: number;
|
|
395
|
+
ownResearchLeadsAdded: number;
|
|
396
|
+
ownResearchLeadsExistingInSystem: number;
|
|
397
|
+
ownResearchLeadsNew: number;
|
|
398
|
+
averagePerformanceScore: number;
|
|
399
|
+
}, {
|
|
400
|
+
totalCalls: number;
|
|
401
|
+
callsToday: number;
|
|
402
|
+
averageRatingToday: number;
|
|
403
|
+
efficientCallsToday: number;
|
|
404
|
+
conversionRate: number;
|
|
405
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
406
|
+
assignmentCalls: number;
|
|
407
|
+
followUpCalls: number;
|
|
408
|
+
callbackCalls: number;
|
|
409
|
+
ownResearchCalls: number;
|
|
410
|
+
ownResearchLeadsAdded: number;
|
|
411
|
+
ownResearchLeadsExistingInSystem: number;
|
|
412
|
+
ownResearchLeadsNew: number;
|
|
413
|
+
averagePerformanceScore: number;
|
|
414
|
+
}>;
|
|
415
|
+
agentCount: z.ZodNumber;
|
|
416
|
+
}, "strip", z.ZodTypeAny, {
|
|
417
|
+
bookings: {
|
|
418
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
419
|
+
totalToday: number;
|
|
420
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
421
|
+
ongoingBookings: number;
|
|
422
|
+
startingToday: number;
|
|
423
|
+
pendingConfirmation: number;
|
|
424
|
+
upcomingStarts: number;
|
|
425
|
+
};
|
|
426
|
+
actives: {
|
|
427
|
+
total: number;
|
|
428
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
429
|
+
};
|
|
430
|
+
callMetrics: {
|
|
431
|
+
totalCalls: number;
|
|
432
|
+
callsToday: number;
|
|
433
|
+
averageRatingToday: number;
|
|
434
|
+
efficientCallsToday: number;
|
|
435
|
+
conversionRate: number;
|
|
436
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
437
|
+
assignmentCalls: number;
|
|
438
|
+
followUpCalls: number;
|
|
439
|
+
callbackCalls: number;
|
|
440
|
+
ownResearchCalls: number;
|
|
441
|
+
ownResearchLeadsAdded: number;
|
|
442
|
+
ownResearchLeadsExistingInSystem: number;
|
|
443
|
+
ownResearchLeadsNew: number;
|
|
444
|
+
averagePerformanceScore: number;
|
|
445
|
+
};
|
|
446
|
+
agentCount: number;
|
|
447
|
+
}, {
|
|
448
|
+
bookings: {
|
|
449
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
450
|
+
totalToday: number;
|
|
451
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
452
|
+
ongoingBookings: number;
|
|
453
|
+
startingToday: number;
|
|
454
|
+
pendingConfirmation: number;
|
|
455
|
+
upcomingStarts: number;
|
|
456
|
+
};
|
|
457
|
+
actives: {
|
|
458
|
+
total: number;
|
|
459
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
460
|
+
};
|
|
461
|
+
callMetrics: {
|
|
462
|
+
totalCalls: number;
|
|
463
|
+
callsToday: number;
|
|
464
|
+
averageRatingToday: number;
|
|
465
|
+
efficientCallsToday: number;
|
|
466
|
+
conversionRate: number;
|
|
467
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
468
|
+
assignmentCalls: number;
|
|
469
|
+
followUpCalls: number;
|
|
470
|
+
callbackCalls: number;
|
|
471
|
+
ownResearchCalls: number;
|
|
472
|
+
ownResearchLeadsAdded: number;
|
|
473
|
+
ownResearchLeadsExistingInSystem: number;
|
|
474
|
+
ownResearchLeadsNew: number;
|
|
475
|
+
averagePerformanceScore: number;
|
|
476
|
+
};
|
|
477
|
+
agentCount: number;
|
|
478
|
+
}>;
|
|
479
|
+
/**
|
|
480
|
+
* Admin SA Aggregate Widget - Summed SA stats across all agents for a date
|
|
481
|
+
*/
|
|
482
|
+
export declare const AdminSaAggregateSchema: z.ZodObject<{
|
|
483
|
+
actives: z.ZodObject<{
|
|
484
|
+
/** Flat structure (unlike per-agent SaActivesWidgetSchema which nests under 'today') */
|
|
485
|
+
total: z.ZodNumber;
|
|
486
|
+
byStatusSa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
487
|
+
}, "strip", z.ZodTypeAny, {
|
|
488
|
+
total: number;
|
|
489
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
490
|
+
}, {
|
|
491
|
+
total: number;
|
|
492
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
493
|
+
}>;
|
|
494
|
+
bookings: z.ZodObject<{
|
|
495
|
+
totalToday: z.ZodNumber;
|
|
496
|
+
byStatus: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingType>, z.ZodNumber>;
|
|
497
|
+
byCategory: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingCategory>, z.ZodNumber>;
|
|
498
|
+
ongoingBookings: z.ZodNumber;
|
|
499
|
+
startingToday: z.ZodNumber;
|
|
500
|
+
waitingForConfirmation: z.ZodNumber;
|
|
501
|
+
upcomingStarts: z.ZodNumber;
|
|
502
|
+
}, "strip", z.ZodTypeAny, {
|
|
503
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
504
|
+
totalToday: number;
|
|
505
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
506
|
+
ongoingBookings: number;
|
|
507
|
+
startingToday: number;
|
|
508
|
+
upcomingStarts: number;
|
|
509
|
+
waitingForConfirmation: number;
|
|
510
|
+
}, {
|
|
511
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
512
|
+
totalToday: number;
|
|
513
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
514
|
+
ongoingBookings: number;
|
|
515
|
+
startingToday: number;
|
|
516
|
+
upcomingStarts: number;
|
|
517
|
+
waitingForConfirmation: number;
|
|
518
|
+
}>;
|
|
519
|
+
workers: z.ZodObject<{
|
|
520
|
+
total: z.ZodNumber;
|
|
521
|
+
addedToday: z.ZodNumber;
|
|
522
|
+
}, "strip", z.ZodTypeAny, {
|
|
523
|
+
total: number;
|
|
524
|
+
addedToday: number;
|
|
525
|
+
}, {
|
|
526
|
+
total: number;
|
|
527
|
+
addedToday: number;
|
|
528
|
+
}>;
|
|
529
|
+
agentCount: z.ZodNumber;
|
|
530
|
+
}, "strip", z.ZodTypeAny, {
|
|
531
|
+
bookings: {
|
|
532
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
533
|
+
totalToday: number;
|
|
534
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
535
|
+
ongoingBookings: number;
|
|
536
|
+
startingToday: number;
|
|
537
|
+
upcomingStarts: number;
|
|
538
|
+
waitingForConfirmation: number;
|
|
539
|
+
};
|
|
540
|
+
actives: {
|
|
541
|
+
total: number;
|
|
542
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
543
|
+
};
|
|
544
|
+
agentCount: number;
|
|
545
|
+
workers: {
|
|
546
|
+
total: number;
|
|
547
|
+
addedToday: number;
|
|
548
|
+
};
|
|
549
|
+
}, {
|
|
550
|
+
bookings: {
|
|
551
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
552
|
+
totalToday: number;
|
|
553
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
554
|
+
ongoingBookings: number;
|
|
555
|
+
startingToday: number;
|
|
556
|
+
upcomingStarts: number;
|
|
557
|
+
waitingForConfirmation: number;
|
|
558
|
+
};
|
|
559
|
+
actives: {
|
|
560
|
+
total: number;
|
|
561
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
562
|
+
};
|
|
563
|
+
agentCount: number;
|
|
564
|
+
workers: {
|
|
565
|
+
total: number;
|
|
566
|
+
addedToday: number;
|
|
333
567
|
};
|
|
334
568
|
}>;
|
|
335
569
|
/**
|
|
@@ -343,11 +577,11 @@ export declare const ActivesTrendSchema: z.ZodObject<{
|
|
|
343
577
|
}, "strip", z.ZodTypeAny, {
|
|
344
578
|
date: string;
|
|
345
579
|
total: number;
|
|
346
|
-
byStatus: Partial<Record<"
|
|
580
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
347
581
|
}, {
|
|
348
582
|
date: string;
|
|
349
583
|
total: number;
|
|
350
|
-
byStatus: Partial<Record<"
|
|
584
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
351
585
|
}>, "many">;
|
|
352
586
|
summary: z.ZodObject<{
|
|
353
587
|
averageDaily: z.ZodNumber;
|
|
@@ -363,27 +597,27 @@ export declare const ActivesTrendSchema: z.ZodObject<{
|
|
|
363
597
|
peakValue: number;
|
|
364
598
|
}>;
|
|
365
599
|
}, "strip", z.ZodTypeAny, {
|
|
600
|
+
data: {
|
|
601
|
+
date: string;
|
|
602
|
+
total: number;
|
|
603
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
604
|
+
}[];
|
|
366
605
|
summary: {
|
|
367
606
|
averageDaily: number;
|
|
368
607
|
peakDay: string | null;
|
|
369
608
|
peakValue: number;
|
|
370
609
|
};
|
|
610
|
+
}, {
|
|
371
611
|
data: {
|
|
372
612
|
date: string;
|
|
373
613
|
total: number;
|
|
374
|
-
byStatus: Partial<Record<"
|
|
614
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
375
615
|
}[];
|
|
376
|
-
}, {
|
|
377
616
|
summary: {
|
|
378
617
|
averageDaily: number;
|
|
379
618
|
peakDay: string | null;
|
|
380
619
|
peakValue: number;
|
|
381
620
|
};
|
|
382
|
-
data: {
|
|
383
|
-
date: string;
|
|
384
|
-
total: number;
|
|
385
|
-
byStatus: Partial<Record<"ACTIVE" | "PENDING" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
386
|
-
}[];
|
|
387
621
|
}>;
|
|
388
622
|
/**
|
|
389
623
|
* Bookings trend data for charts
|
|
@@ -413,25 +647,25 @@ export declare const BookingsTrendSchema: z.ZodObject<{
|
|
|
413
647
|
totalCreated: number;
|
|
414
648
|
}>;
|
|
415
649
|
}, "strip", z.ZodTypeAny, {
|
|
416
|
-
summary: {
|
|
417
|
-
averageDaily: number;
|
|
418
|
-
totalCreated: number;
|
|
419
|
-
};
|
|
420
650
|
data: {
|
|
421
651
|
date: string;
|
|
422
652
|
total: number;
|
|
423
653
|
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
424
654
|
}[];
|
|
425
|
-
}, {
|
|
426
655
|
summary: {
|
|
427
656
|
averageDaily: number;
|
|
428
657
|
totalCreated: number;
|
|
429
658
|
};
|
|
659
|
+
}, {
|
|
430
660
|
data: {
|
|
431
661
|
date: string;
|
|
432
662
|
total: number;
|
|
433
663
|
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
434
664
|
}[];
|
|
665
|
+
summary: {
|
|
666
|
+
averageDaily: number;
|
|
667
|
+
totalCreated: number;
|
|
668
|
+
};
|
|
435
669
|
}>;
|
|
436
670
|
/**
|
|
437
671
|
* Call performance trend data for charts
|
|
@@ -445,14 +679,14 @@ export declare const CallPerformanceTrendSchema: z.ZodObject<{
|
|
|
445
679
|
performanceScore: z.ZodNumber;
|
|
446
680
|
}, "strip", z.ZodTypeAny, {
|
|
447
681
|
date: string;
|
|
448
|
-
conversionRate: number;
|
|
449
682
|
totalCalls: number;
|
|
683
|
+
conversionRate: number;
|
|
450
684
|
performanceScore: number;
|
|
451
685
|
averageRating: number;
|
|
452
686
|
}, {
|
|
453
687
|
date: string;
|
|
454
|
-
conversionRate: number;
|
|
455
688
|
totalCalls: number;
|
|
689
|
+
conversionRate: number;
|
|
456
690
|
performanceScore: number;
|
|
457
691
|
averageRating: number;
|
|
458
692
|
}>, "many">;
|
|
@@ -470,31 +704,31 @@ export declare const CallPerformanceTrendSchema: z.ZodObject<{
|
|
|
470
704
|
overallAverageRating: number;
|
|
471
705
|
}>;
|
|
472
706
|
}, "strip", z.ZodTypeAny, {
|
|
473
|
-
summary: {
|
|
474
|
-
averageDailyCalls: number;
|
|
475
|
-
overallConversionRate: number;
|
|
476
|
-
overallAverageRating: number;
|
|
477
|
-
};
|
|
478
707
|
data: {
|
|
479
708
|
date: string;
|
|
480
|
-
conversionRate: number;
|
|
481
709
|
totalCalls: number;
|
|
710
|
+
conversionRate: number;
|
|
482
711
|
performanceScore: number;
|
|
483
712
|
averageRating: number;
|
|
484
713
|
}[];
|
|
485
|
-
}, {
|
|
486
714
|
summary: {
|
|
487
715
|
averageDailyCalls: number;
|
|
488
716
|
overallConversionRate: number;
|
|
489
717
|
overallAverageRating: number;
|
|
490
718
|
};
|
|
719
|
+
}, {
|
|
491
720
|
data: {
|
|
492
721
|
date: string;
|
|
493
|
-
conversionRate: number;
|
|
494
722
|
totalCalls: number;
|
|
723
|
+
conversionRate: number;
|
|
495
724
|
performanceScore: number;
|
|
496
725
|
averageRating: number;
|
|
497
726
|
}[];
|
|
727
|
+
summary: {
|
|
728
|
+
averageDailyCalls: number;
|
|
729
|
+
overallConversionRate: number;
|
|
730
|
+
overallAverageRating: number;
|
|
731
|
+
};
|
|
498
732
|
}>;
|
|
499
733
|
/**
|
|
500
734
|
* Workers trend data for charts (SA only)
|
|
@@ -524,25 +758,25 @@ export declare const WorkersTrendSchema: z.ZodObject<{
|
|
|
524
758
|
averagePerDay: number;
|
|
525
759
|
}>;
|
|
526
760
|
}, "strip", z.ZodTypeAny, {
|
|
527
|
-
summary: {
|
|
528
|
-
totalAdded: number;
|
|
529
|
-
averagePerDay: number;
|
|
530
|
-
};
|
|
531
761
|
data: {
|
|
532
762
|
date: string;
|
|
533
763
|
added: number;
|
|
534
764
|
cumulativeTotal: number;
|
|
535
765
|
}[];
|
|
536
|
-
}, {
|
|
537
766
|
summary: {
|
|
538
767
|
totalAdded: number;
|
|
539
768
|
averagePerDay: number;
|
|
540
769
|
};
|
|
770
|
+
}, {
|
|
541
771
|
data: {
|
|
542
772
|
date: string;
|
|
543
773
|
added: number;
|
|
544
774
|
cumulativeTotal: number;
|
|
545
775
|
}[];
|
|
776
|
+
summary: {
|
|
777
|
+
totalAdded: number;
|
|
778
|
+
averagePerDay: number;
|
|
779
|
+
};
|
|
546
780
|
}>;
|
|
547
781
|
/**
|
|
548
782
|
* Collaborations trend data for charts (FA only)
|
|
@@ -554,11 +788,11 @@ export declare const CollaborationsTrendSchema: z.ZodObject<{
|
|
|
554
788
|
byStatus: z.ZodRecord<z.ZodEnum<["ACTIVE", "INACTIVE", "PENDING_APPROVAL", "REJECTED", "APPROVED", "CHANGED_COMPANY", "CHANGED_AGENT", "CHANGED_COMPANY_AND_AGENT"]>, z.ZodNumber>;
|
|
555
789
|
}, "strip", z.ZodTypeAny, {
|
|
556
790
|
date: string;
|
|
557
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
791
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
558
792
|
created: number;
|
|
559
793
|
}, {
|
|
560
794
|
date: string;
|
|
561
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
795
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
562
796
|
created: number;
|
|
563
797
|
}>, "many">;
|
|
564
798
|
summary: z.ZodObject<{
|
|
@@ -572,25 +806,25 @@ export declare const CollaborationsTrendSchema: z.ZodObject<{
|
|
|
572
806
|
activeCount: number;
|
|
573
807
|
}>;
|
|
574
808
|
}, "strip", z.ZodTypeAny, {
|
|
575
|
-
summary: {
|
|
576
|
-
totalCreated: number;
|
|
577
|
-
activeCount: number;
|
|
578
|
-
};
|
|
579
809
|
data: {
|
|
580
810
|
date: string;
|
|
581
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
811
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
582
812
|
created: number;
|
|
583
813
|
}[];
|
|
584
|
-
}, {
|
|
585
814
|
summary: {
|
|
586
815
|
totalCreated: number;
|
|
587
816
|
activeCount: number;
|
|
588
817
|
};
|
|
818
|
+
}, {
|
|
589
819
|
data: {
|
|
590
820
|
date: string;
|
|
591
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
821
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
592
822
|
created: number;
|
|
593
823
|
}[];
|
|
824
|
+
summary: {
|
|
825
|
+
totalCreated: number;
|
|
826
|
+
activeCount: number;
|
|
827
|
+
};
|
|
594
828
|
}>;
|
|
595
829
|
export declare const dashboardWidgetsContract: {
|
|
596
830
|
getFaPipeline: {
|
|
@@ -613,11 +847,11 @@ export declare const dashboardWidgetsContract: {
|
|
|
613
847
|
recentCount: z.ZodNumber;
|
|
614
848
|
}, "strip", z.ZodTypeAny, {
|
|
615
849
|
total: number;
|
|
616
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
850
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
617
851
|
recentCount: number;
|
|
618
852
|
}, {
|
|
619
853
|
total: number;
|
|
620
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
854
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
621
855
|
recentCount: number;
|
|
622
856
|
}>;
|
|
623
857
|
summary: z.ZodObject<{
|
|
@@ -637,7 +871,7 @@ export declare const dashboardWidgetsContract: {
|
|
|
637
871
|
};
|
|
638
872
|
collaborations: {
|
|
639
873
|
total: number;
|
|
640
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
874
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
641
875
|
recentCount: number;
|
|
642
876
|
};
|
|
643
877
|
}, {
|
|
@@ -647,7 +881,7 @@ export declare const dashboardWidgetsContract: {
|
|
|
647
881
|
};
|
|
648
882
|
collaborations: {
|
|
649
883
|
total: number;
|
|
650
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
884
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
651
885
|
recentCount: number;
|
|
652
886
|
};
|
|
653
887
|
}>;
|
|
@@ -673,12 +907,12 @@ export declare const dashboardWidgetsContract: {
|
|
|
673
907
|
pendingVerification: z.ZodNumber;
|
|
674
908
|
}, "strip", z.ZodTypeAny, {
|
|
675
909
|
total: number;
|
|
676
|
-
byStatus: Partial<Record<"
|
|
910
|
+
byStatus: Partial<Record<"APPROVED" | "PENDING_VERIFICATION" | "BLACKLISTED", number>>;
|
|
677
911
|
recentlyAdded: number;
|
|
678
912
|
pendingVerification: number;
|
|
679
913
|
}, {
|
|
680
914
|
total: number;
|
|
681
|
-
byStatus: Partial<Record<"
|
|
915
|
+
byStatus: Partial<Record<"APPROVED" | "PENDING_VERIFICATION" | "BLACKLISTED", number>>;
|
|
682
916
|
recentlyAdded: number;
|
|
683
917
|
pendingVerification: number;
|
|
684
918
|
}>;
|
|
@@ -731,13 +965,12 @@ export declare const dashboardWidgetsContract: {
|
|
|
731
965
|
200: z.ZodObject<{
|
|
732
966
|
totalCalls: z.ZodNumber;
|
|
733
967
|
callsToday: z.ZodNumber;
|
|
734
|
-
callsThisWeek: z.ZodNumber;
|
|
735
968
|
averageRatingToday: z.ZodNumber;
|
|
736
969
|
efficientCallsToday: z.ZodNumber;
|
|
737
970
|
conversionRate: z.ZodNumber;
|
|
738
971
|
performanceScore: z.ZodNumber;
|
|
739
972
|
performanceTier: z.ZodEnum<["high", "medium", "low", "new"]>;
|
|
740
|
-
ratingBreakdown: z.ZodRecord<z.
|
|
973
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<typeof import("../common/call-rating.schema").CallRating>, z.ZodNumber>;
|
|
741
974
|
assignmentCalls: z.ZodNumber;
|
|
742
975
|
followUpCalls: z.ZodNumber;
|
|
743
976
|
callbackCalls: z.ZodNumber;
|
|
@@ -746,15 +979,14 @@ export declare const dashboardWidgetsContract: {
|
|
|
746
979
|
ownResearchLeadsExistingInSystem: z.ZodNumber;
|
|
747
980
|
ownResearchLeadsNew: z.ZodNumber;
|
|
748
981
|
}, "strip", z.ZodTypeAny, {
|
|
749
|
-
conversionRate: number;
|
|
750
982
|
totalCalls: number;
|
|
751
|
-
performanceScore: number;
|
|
752
|
-
performanceTier: "high" | "medium" | "low" | "new";
|
|
753
983
|
callsToday: number;
|
|
754
|
-
callsThisWeek: number;
|
|
755
984
|
averageRatingToday: number;
|
|
756
985
|
efficientCallsToday: number;
|
|
757
|
-
|
|
986
|
+
conversionRate: number;
|
|
987
|
+
performanceScore: number;
|
|
988
|
+
performanceTier: "high" | "medium" | "low" | "new";
|
|
989
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
758
990
|
assignmentCalls: number;
|
|
759
991
|
followUpCalls: number;
|
|
760
992
|
callbackCalls: number;
|
|
@@ -763,15 +995,14 @@ export declare const dashboardWidgetsContract: {
|
|
|
763
995
|
ownResearchLeadsExistingInSystem: number;
|
|
764
996
|
ownResearchLeadsNew: number;
|
|
765
997
|
}, {
|
|
766
|
-
conversionRate: number;
|
|
767
998
|
totalCalls: number;
|
|
768
|
-
performanceScore: number;
|
|
769
|
-
performanceTier: "high" | "medium" | "low" | "new";
|
|
770
999
|
callsToday: number;
|
|
771
|
-
callsThisWeek: number;
|
|
772
1000
|
averageRatingToday: number;
|
|
773
1001
|
efficientCallsToday: number;
|
|
774
|
-
|
|
1002
|
+
conversionRate: number;
|
|
1003
|
+
performanceScore: number;
|
|
1004
|
+
performanceTier: "high" | "medium" | "low" | "new";
|
|
1005
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
775
1006
|
assignmentCalls: number;
|
|
776
1007
|
followUpCalls: number;
|
|
777
1008
|
callbackCalls: number;
|
|
@@ -801,20 +1032,20 @@ export declare const dashboardWidgetsContract: {
|
|
|
801
1032
|
byStatusFa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
802
1033
|
}, "strip", z.ZodTypeAny, {
|
|
803
1034
|
total: number;
|
|
804
|
-
byStatusFa: Partial<Record<"
|
|
1035
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
805
1036
|
}, {
|
|
806
1037
|
total: number;
|
|
807
|
-
byStatusFa: Partial<Record<"
|
|
1038
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
808
1039
|
}>;
|
|
809
1040
|
}, "strip", z.ZodTypeAny, {
|
|
810
1041
|
today: {
|
|
811
1042
|
total: number;
|
|
812
|
-
byStatusFa: Partial<Record<"
|
|
1043
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
813
1044
|
};
|
|
814
1045
|
}, {
|
|
815
1046
|
today: {
|
|
816
1047
|
total: number;
|
|
817
|
-
byStatusFa: Partial<Record<"
|
|
1048
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
818
1049
|
};
|
|
819
1050
|
}>;
|
|
820
1051
|
};
|
|
@@ -875,21 +1106,12 @@ export declare const dashboardWidgetsContract: {
|
|
|
875
1106
|
200: z.ZodObject<{
|
|
876
1107
|
total: z.ZodNumber;
|
|
877
1108
|
addedToday: z.ZodNumber;
|
|
878
|
-
addedThisWeek: z.ZodNumber;
|
|
879
|
-
addedThisMonth: z.ZodNumber;
|
|
880
|
-
byAvailability: z.ZodOptional<z.ZodRecord<z.ZodEnum<["AVAILABLE", "PARTIALLY_AVAILABLE", "UNAVAILABLE"]>, z.ZodNumber>>;
|
|
881
1109
|
}, "strip", z.ZodTypeAny, {
|
|
882
1110
|
total: number;
|
|
883
1111
|
addedToday: number;
|
|
884
|
-
addedThisWeek: number;
|
|
885
|
-
addedThisMonth: number;
|
|
886
|
-
byAvailability?: Partial<Record<"AVAILABLE" | "PARTIALLY_AVAILABLE" | "UNAVAILABLE", number>> | undefined;
|
|
887
1112
|
}, {
|
|
888
1113
|
total: number;
|
|
889
1114
|
addedToday: number;
|
|
890
|
-
addedThisWeek: number;
|
|
891
|
-
addedThisMonth: number;
|
|
892
|
-
byAvailability?: Partial<Record<"AVAILABLE" | "PARTIALLY_AVAILABLE" | "UNAVAILABLE", number>> | undefined;
|
|
893
1115
|
}>;
|
|
894
1116
|
};
|
|
895
1117
|
};
|
|
@@ -952,20 +1174,20 @@ export declare const dashboardWidgetsContract: {
|
|
|
952
1174
|
byStatusSa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
953
1175
|
}, "strip", z.ZodTypeAny, {
|
|
954
1176
|
total: number;
|
|
955
|
-
byStatusSa: Partial<Record<"
|
|
1177
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
956
1178
|
}, {
|
|
957
1179
|
total: number;
|
|
958
|
-
byStatusSa: Partial<Record<"
|
|
1180
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
959
1181
|
}>;
|
|
960
1182
|
}, "strip", z.ZodTypeAny, {
|
|
961
1183
|
today: {
|
|
962
1184
|
total: number;
|
|
963
|
-
byStatusSa: Partial<Record<"
|
|
1185
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
964
1186
|
};
|
|
965
1187
|
}, {
|
|
966
1188
|
today: {
|
|
967
1189
|
total: number;
|
|
968
|
-
byStatusSa: Partial<Record<"
|
|
1190
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
969
1191
|
};
|
|
970
1192
|
}>;
|
|
971
1193
|
};
|
|
@@ -982,12 +1204,12 @@ export declare const dashboardWidgetsContract: {
|
|
|
982
1204
|
limit: number;
|
|
983
1205
|
page: number;
|
|
984
1206
|
date?: string | undefined;
|
|
985
|
-
view?: "
|
|
1207
|
+
view?: "FA" | "SA" | undefined;
|
|
986
1208
|
}, {
|
|
1209
|
+
date?: string | undefined;
|
|
987
1210
|
limit?: number | undefined;
|
|
988
1211
|
page?: number | undefined;
|
|
989
|
-
|
|
990
|
-
view?: "SA" | "FA" | undefined;
|
|
1212
|
+
view?: "FA" | "SA" | undefined;
|
|
991
1213
|
}>;
|
|
992
1214
|
summary: "Get daily stats for all agents (Admin)";
|
|
993
1215
|
method: "GET";
|
|
@@ -1019,6 +1241,11 @@ export declare const dashboardWidgetsContract: {
|
|
|
1019
1241
|
totalCalls: z.ZodNumber;
|
|
1020
1242
|
averageRating: z.ZodNumber;
|
|
1021
1243
|
conversionRate: z.ZodNumber;
|
|
1244
|
+
callsOnDate: z.ZodNumber;
|
|
1245
|
+
efficientCalls: z.ZodNumber;
|
|
1246
|
+
conversionsOnDate: z.ZodNumber;
|
|
1247
|
+
dailyConversionRate: z.ZodNumber;
|
|
1248
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<typeof import("../common/call-rating.schema").CallRating>, z.ZodNumber>;
|
|
1022
1249
|
performanceScore: z.ZodNumber;
|
|
1023
1250
|
assignmentCalls: z.ZodNumber;
|
|
1024
1251
|
followUpCalls: z.ZodNumber;
|
|
@@ -1029,9 +1256,10 @@ export declare const dashboardWidgetsContract: {
|
|
|
1029
1256
|
ownResearchLeadsNew: z.ZodNumber;
|
|
1030
1257
|
}, "strip", z.ZodTypeAny, {
|
|
1031
1258
|
agentId: string;
|
|
1032
|
-
conversionRate: number;
|
|
1033
1259
|
totalCalls: number;
|
|
1260
|
+
conversionRate: number;
|
|
1034
1261
|
performanceScore: number;
|
|
1262
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1035
1263
|
assignmentCalls: number;
|
|
1036
1264
|
followUpCalls: number;
|
|
1037
1265
|
callbackCalls: number;
|
|
@@ -1043,15 +1271,19 @@ export declare const dashboardWidgetsContract: {
|
|
|
1043
1271
|
agentName: string;
|
|
1044
1272
|
agentEmail: string;
|
|
1045
1273
|
activesFaTotal: number;
|
|
1046
|
-
activesFaByStatus: Partial<Record<"
|
|
1274
|
+
activesFaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1047
1275
|
activesSaTotal: number;
|
|
1048
|
-
activesSaByStatus: Partial<Record<"
|
|
1276
|
+
activesSaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1049
1277
|
bookingsFaTotal: number;
|
|
1050
1278
|
bookingsFaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1051
1279
|
bookingsFaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1052
1280
|
bookingsSaTotal: number;
|
|
1053
1281
|
bookingsSaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1054
1282
|
bookingsSaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1283
|
+
callsOnDate: number;
|
|
1284
|
+
efficientCalls: number;
|
|
1285
|
+
conversionsOnDate: number;
|
|
1286
|
+
dailyConversionRate: number;
|
|
1055
1287
|
bookingsFaOngoing?: number | undefined;
|
|
1056
1288
|
bookingsFaStartingToday?: number | undefined;
|
|
1057
1289
|
bookingsFaPendingConfirmation?: number | undefined;
|
|
@@ -1062,9 +1294,10 @@ export declare const dashboardWidgetsContract: {
|
|
|
1062
1294
|
bookingsSaUpcomingStarts?: number | undefined;
|
|
1063
1295
|
}, {
|
|
1064
1296
|
agentId: string;
|
|
1065
|
-
conversionRate: number;
|
|
1066
1297
|
totalCalls: number;
|
|
1298
|
+
conversionRate: number;
|
|
1067
1299
|
performanceScore: number;
|
|
1300
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1068
1301
|
assignmentCalls: number;
|
|
1069
1302
|
followUpCalls: number;
|
|
1070
1303
|
callbackCalls: number;
|
|
@@ -1076,15 +1309,19 @@ export declare const dashboardWidgetsContract: {
|
|
|
1076
1309
|
agentName: string;
|
|
1077
1310
|
agentEmail: string;
|
|
1078
1311
|
activesFaTotal: number;
|
|
1079
|
-
activesFaByStatus: Partial<Record<"
|
|
1312
|
+
activesFaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1080
1313
|
activesSaTotal: number;
|
|
1081
|
-
activesSaByStatus: Partial<Record<"
|
|
1314
|
+
activesSaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1082
1315
|
bookingsFaTotal: number;
|
|
1083
1316
|
bookingsFaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1084
1317
|
bookingsFaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1085
1318
|
bookingsSaTotal: number;
|
|
1086
1319
|
bookingsSaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1087
1320
|
bookingsSaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1321
|
+
callsOnDate: number;
|
|
1322
|
+
efficientCalls: number;
|
|
1323
|
+
conversionsOnDate: number;
|
|
1324
|
+
dailyConversionRate: number;
|
|
1088
1325
|
bookingsFaOngoing?: number | undefined;
|
|
1089
1326
|
bookingsFaStartingToday?: number | undefined;
|
|
1090
1327
|
bookingsFaPendingConfirmation?: number | undefined;
|
|
@@ -1103,9 +1340,10 @@ export declare const dashboardWidgetsContract: {
|
|
|
1103
1340
|
limit: number;
|
|
1104
1341
|
items: {
|
|
1105
1342
|
agentId: string;
|
|
1106
|
-
conversionRate: number;
|
|
1107
1343
|
totalCalls: number;
|
|
1344
|
+
conversionRate: number;
|
|
1108
1345
|
performanceScore: number;
|
|
1346
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1109
1347
|
assignmentCalls: number;
|
|
1110
1348
|
followUpCalls: number;
|
|
1111
1349
|
callbackCalls: number;
|
|
@@ -1117,15 +1355,19 @@ export declare const dashboardWidgetsContract: {
|
|
|
1117
1355
|
agentName: string;
|
|
1118
1356
|
agentEmail: string;
|
|
1119
1357
|
activesFaTotal: number;
|
|
1120
|
-
activesFaByStatus: Partial<Record<"
|
|
1358
|
+
activesFaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1121
1359
|
activesSaTotal: number;
|
|
1122
|
-
activesSaByStatus: Partial<Record<"
|
|
1360
|
+
activesSaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1123
1361
|
bookingsFaTotal: number;
|
|
1124
1362
|
bookingsFaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1125
1363
|
bookingsFaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1126
1364
|
bookingsSaTotal: number;
|
|
1127
1365
|
bookingsSaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1128
1366
|
bookingsSaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1367
|
+
callsOnDate: number;
|
|
1368
|
+
efficientCalls: number;
|
|
1369
|
+
conversionsOnDate: number;
|
|
1370
|
+
dailyConversionRate: number;
|
|
1129
1371
|
bookingsFaOngoing?: number | undefined;
|
|
1130
1372
|
bookingsFaStartingToday?: number | undefined;
|
|
1131
1373
|
bookingsFaPendingConfirmation?: number | undefined;
|
|
@@ -1143,9 +1385,10 @@ export declare const dashboardWidgetsContract: {
|
|
|
1143
1385
|
limit: number;
|
|
1144
1386
|
items: {
|
|
1145
1387
|
agentId: string;
|
|
1146
|
-
conversionRate: number;
|
|
1147
1388
|
totalCalls: number;
|
|
1389
|
+
conversionRate: number;
|
|
1148
1390
|
performanceScore: number;
|
|
1391
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1149
1392
|
assignmentCalls: number;
|
|
1150
1393
|
followUpCalls: number;
|
|
1151
1394
|
callbackCalls: number;
|
|
@@ -1157,15 +1400,19 @@ export declare const dashboardWidgetsContract: {
|
|
|
1157
1400
|
agentName: string;
|
|
1158
1401
|
agentEmail: string;
|
|
1159
1402
|
activesFaTotal: number;
|
|
1160
|
-
activesFaByStatus: Partial<Record<"
|
|
1403
|
+
activesFaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1161
1404
|
activesSaTotal: number;
|
|
1162
|
-
activesSaByStatus: Partial<Record<"
|
|
1405
|
+
activesSaByStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1163
1406
|
bookingsFaTotal: number;
|
|
1164
1407
|
bookingsFaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1165
1408
|
bookingsFaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1166
1409
|
bookingsSaTotal: number;
|
|
1167
1410
|
bookingsSaByStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1168
1411
|
bookingsSaByCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1412
|
+
callsOnDate: number;
|
|
1413
|
+
efficientCalls: number;
|
|
1414
|
+
conversionsOnDate: number;
|
|
1415
|
+
dailyConversionRate: number;
|
|
1169
1416
|
bookingsFaOngoing?: number | undefined;
|
|
1170
1417
|
bookingsFaStartingToday?: number | undefined;
|
|
1171
1418
|
bookingsFaPendingConfirmation?: number | undefined;
|
|
@@ -1182,6 +1429,276 @@ export declare const dashboardWidgetsContract: {
|
|
|
1182
1429
|
}>;
|
|
1183
1430
|
};
|
|
1184
1431
|
};
|
|
1432
|
+
getAdminFaAggregate: {
|
|
1433
|
+
description: "Returns summed/averaged FA dashboard stats across all agents for a specific date.";
|
|
1434
|
+
query: z.ZodObject<{
|
|
1435
|
+
date: z.ZodOptional<z.ZodString>;
|
|
1436
|
+
}, "strip", z.ZodTypeAny, {
|
|
1437
|
+
date?: string | undefined;
|
|
1438
|
+
}, {
|
|
1439
|
+
date?: string | undefined;
|
|
1440
|
+
}>;
|
|
1441
|
+
summary: "Get aggregated FA stats across all agents (Admin)";
|
|
1442
|
+
method: "GET";
|
|
1443
|
+
path: "/widgets/admin/fa-aggregate";
|
|
1444
|
+
responses: {
|
|
1445
|
+
200: z.ZodObject<{
|
|
1446
|
+
actives: z.ZodObject<{
|
|
1447
|
+
/** Flat structure (unlike per-agent FaActivesWidgetSchema which nests under 'today') */
|
|
1448
|
+
total: z.ZodNumber;
|
|
1449
|
+
byStatusFa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
1450
|
+
}, "strip", z.ZodTypeAny, {
|
|
1451
|
+
total: number;
|
|
1452
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1453
|
+
}, {
|
|
1454
|
+
total: number;
|
|
1455
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1456
|
+
}>;
|
|
1457
|
+
bookings: z.ZodObject<{
|
|
1458
|
+
totalToday: z.ZodNumber;
|
|
1459
|
+
byStatus: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingType>, z.ZodNumber>;
|
|
1460
|
+
byCategory: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingCategory>, z.ZodNumber>;
|
|
1461
|
+
ongoingBookings: z.ZodNumber;
|
|
1462
|
+
startingToday: z.ZodNumber;
|
|
1463
|
+
pendingConfirmation: z.ZodNumber;
|
|
1464
|
+
upcomingStarts: z.ZodNumber;
|
|
1465
|
+
}, "strip", z.ZodTypeAny, {
|
|
1466
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1467
|
+
totalToday: number;
|
|
1468
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1469
|
+
ongoingBookings: number;
|
|
1470
|
+
startingToday: number;
|
|
1471
|
+
pendingConfirmation: number;
|
|
1472
|
+
upcomingStarts: number;
|
|
1473
|
+
}, {
|
|
1474
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1475
|
+
totalToday: number;
|
|
1476
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1477
|
+
ongoingBookings: number;
|
|
1478
|
+
startingToday: number;
|
|
1479
|
+
pendingConfirmation: number;
|
|
1480
|
+
upcomingStarts: number;
|
|
1481
|
+
}>;
|
|
1482
|
+
callMetrics: z.ZodObject<{
|
|
1483
|
+
/**
|
|
1484
|
+
* Aggregate metrics across all FA agents.
|
|
1485
|
+
* Note: `performanceTier` from FaCallHistoryWidgetSchema is omitted — it is not
|
|
1486
|
+
* meaningful as an aggregate. `performanceScore` is renamed to `averagePerformanceScore`
|
|
1487
|
+
* to make clear it is an average across agents.
|
|
1488
|
+
*/
|
|
1489
|
+
totalCalls: z.ZodNumber;
|
|
1490
|
+
callsToday: z.ZodNumber;
|
|
1491
|
+
averageRatingToday: z.ZodNumber;
|
|
1492
|
+
efficientCallsToday: z.ZodNumber;
|
|
1493
|
+
conversionRate: z.ZodNumber;
|
|
1494
|
+
averagePerformanceScore: z.ZodNumber;
|
|
1495
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<typeof import("../common/call-rating.schema").CallRating>, z.ZodNumber>;
|
|
1496
|
+
assignmentCalls: z.ZodNumber;
|
|
1497
|
+
followUpCalls: z.ZodNumber;
|
|
1498
|
+
callbackCalls: z.ZodNumber;
|
|
1499
|
+
ownResearchCalls: z.ZodNumber;
|
|
1500
|
+
ownResearchLeadsAdded: z.ZodNumber;
|
|
1501
|
+
ownResearchLeadsExistingInSystem: z.ZodNumber;
|
|
1502
|
+
ownResearchLeadsNew: z.ZodNumber;
|
|
1503
|
+
}, "strip", z.ZodTypeAny, {
|
|
1504
|
+
totalCalls: number;
|
|
1505
|
+
callsToday: number;
|
|
1506
|
+
averageRatingToday: number;
|
|
1507
|
+
efficientCallsToday: number;
|
|
1508
|
+
conversionRate: number;
|
|
1509
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1510
|
+
assignmentCalls: number;
|
|
1511
|
+
followUpCalls: number;
|
|
1512
|
+
callbackCalls: number;
|
|
1513
|
+
ownResearchCalls: number;
|
|
1514
|
+
ownResearchLeadsAdded: number;
|
|
1515
|
+
ownResearchLeadsExistingInSystem: number;
|
|
1516
|
+
ownResearchLeadsNew: number;
|
|
1517
|
+
averagePerformanceScore: number;
|
|
1518
|
+
}, {
|
|
1519
|
+
totalCalls: number;
|
|
1520
|
+
callsToday: number;
|
|
1521
|
+
averageRatingToday: number;
|
|
1522
|
+
efficientCallsToday: number;
|
|
1523
|
+
conversionRate: number;
|
|
1524
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1525
|
+
assignmentCalls: number;
|
|
1526
|
+
followUpCalls: number;
|
|
1527
|
+
callbackCalls: number;
|
|
1528
|
+
ownResearchCalls: number;
|
|
1529
|
+
ownResearchLeadsAdded: number;
|
|
1530
|
+
ownResearchLeadsExistingInSystem: number;
|
|
1531
|
+
ownResearchLeadsNew: number;
|
|
1532
|
+
averagePerformanceScore: number;
|
|
1533
|
+
}>;
|
|
1534
|
+
agentCount: z.ZodNumber;
|
|
1535
|
+
}, "strip", z.ZodTypeAny, {
|
|
1536
|
+
bookings: {
|
|
1537
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1538
|
+
totalToday: number;
|
|
1539
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1540
|
+
ongoingBookings: number;
|
|
1541
|
+
startingToday: number;
|
|
1542
|
+
pendingConfirmation: number;
|
|
1543
|
+
upcomingStarts: number;
|
|
1544
|
+
};
|
|
1545
|
+
actives: {
|
|
1546
|
+
total: number;
|
|
1547
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1548
|
+
};
|
|
1549
|
+
callMetrics: {
|
|
1550
|
+
totalCalls: number;
|
|
1551
|
+
callsToday: number;
|
|
1552
|
+
averageRatingToday: number;
|
|
1553
|
+
efficientCallsToday: number;
|
|
1554
|
+
conversionRate: number;
|
|
1555
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1556
|
+
assignmentCalls: number;
|
|
1557
|
+
followUpCalls: number;
|
|
1558
|
+
callbackCalls: number;
|
|
1559
|
+
ownResearchCalls: number;
|
|
1560
|
+
ownResearchLeadsAdded: number;
|
|
1561
|
+
ownResearchLeadsExistingInSystem: number;
|
|
1562
|
+
ownResearchLeadsNew: number;
|
|
1563
|
+
averagePerformanceScore: number;
|
|
1564
|
+
};
|
|
1565
|
+
agentCount: number;
|
|
1566
|
+
}, {
|
|
1567
|
+
bookings: {
|
|
1568
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1569
|
+
totalToday: number;
|
|
1570
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1571
|
+
ongoingBookings: number;
|
|
1572
|
+
startingToday: number;
|
|
1573
|
+
pendingConfirmation: number;
|
|
1574
|
+
upcomingStarts: number;
|
|
1575
|
+
};
|
|
1576
|
+
actives: {
|
|
1577
|
+
total: number;
|
|
1578
|
+
byStatusFa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1579
|
+
};
|
|
1580
|
+
callMetrics: {
|
|
1581
|
+
totalCalls: number;
|
|
1582
|
+
callsToday: number;
|
|
1583
|
+
averageRatingToday: number;
|
|
1584
|
+
efficientCallsToday: number;
|
|
1585
|
+
conversionRate: number;
|
|
1586
|
+
ratingBreakdown: Record<import("../common/call-rating.schema").CallRating, number>;
|
|
1587
|
+
assignmentCalls: number;
|
|
1588
|
+
followUpCalls: number;
|
|
1589
|
+
callbackCalls: number;
|
|
1590
|
+
ownResearchCalls: number;
|
|
1591
|
+
ownResearchLeadsAdded: number;
|
|
1592
|
+
ownResearchLeadsExistingInSystem: number;
|
|
1593
|
+
ownResearchLeadsNew: number;
|
|
1594
|
+
averagePerformanceScore: number;
|
|
1595
|
+
};
|
|
1596
|
+
agentCount: number;
|
|
1597
|
+
}>;
|
|
1598
|
+
};
|
|
1599
|
+
};
|
|
1600
|
+
getAdminSaAggregate: {
|
|
1601
|
+
description: "Returns summed/averaged SA dashboard stats across all agents for a specific date.";
|
|
1602
|
+
query: z.ZodObject<{
|
|
1603
|
+
date: z.ZodOptional<z.ZodString>;
|
|
1604
|
+
}, "strip", z.ZodTypeAny, {
|
|
1605
|
+
date?: string | undefined;
|
|
1606
|
+
}, {
|
|
1607
|
+
date?: string | undefined;
|
|
1608
|
+
}>;
|
|
1609
|
+
summary: "Get aggregated SA stats across all agents (Admin)";
|
|
1610
|
+
method: "GET";
|
|
1611
|
+
path: "/widgets/admin/sa-aggregate";
|
|
1612
|
+
responses: {
|
|
1613
|
+
200: z.ZodObject<{
|
|
1614
|
+
actives: z.ZodObject<{
|
|
1615
|
+
/** Flat structure (unlike per-agent SaActivesWidgetSchema which nests under 'today') */
|
|
1616
|
+
total: z.ZodNumber;
|
|
1617
|
+
byStatusSa: z.ZodRecord<z.ZodEnum<["PENDING", "ACTIVE", "VACATION", "LEFT_THE_SITE", "MEDICAL_LEAVE", "DAY_OFF", "INJURY"]>, z.ZodNumber>;
|
|
1618
|
+
}, "strip", z.ZodTypeAny, {
|
|
1619
|
+
total: number;
|
|
1620
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1621
|
+
}, {
|
|
1622
|
+
total: number;
|
|
1623
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1624
|
+
}>;
|
|
1625
|
+
bookings: z.ZodObject<{
|
|
1626
|
+
totalToday: z.ZodNumber;
|
|
1627
|
+
byStatus: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingType>, z.ZodNumber>;
|
|
1628
|
+
byCategory: z.ZodRecord<z.ZodNativeEnum<typeof import("../bookings/bookings.contract").BookingCategory>, z.ZodNumber>;
|
|
1629
|
+
ongoingBookings: z.ZodNumber;
|
|
1630
|
+
startingToday: z.ZodNumber;
|
|
1631
|
+
waitingForConfirmation: z.ZodNumber;
|
|
1632
|
+
upcomingStarts: z.ZodNumber;
|
|
1633
|
+
}, "strip", z.ZodTypeAny, {
|
|
1634
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1635
|
+
totalToday: number;
|
|
1636
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1637
|
+
ongoingBookings: number;
|
|
1638
|
+
startingToday: number;
|
|
1639
|
+
upcomingStarts: number;
|
|
1640
|
+
waitingForConfirmation: number;
|
|
1641
|
+
}, {
|
|
1642
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1643
|
+
totalToday: number;
|
|
1644
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1645
|
+
ongoingBookings: number;
|
|
1646
|
+
startingToday: number;
|
|
1647
|
+
upcomingStarts: number;
|
|
1648
|
+
waitingForConfirmation: number;
|
|
1649
|
+
}>;
|
|
1650
|
+
workers: z.ZodObject<{
|
|
1651
|
+
total: z.ZodNumber;
|
|
1652
|
+
addedToday: z.ZodNumber;
|
|
1653
|
+
}, "strip", z.ZodTypeAny, {
|
|
1654
|
+
total: number;
|
|
1655
|
+
addedToday: number;
|
|
1656
|
+
}, {
|
|
1657
|
+
total: number;
|
|
1658
|
+
addedToday: number;
|
|
1659
|
+
}>;
|
|
1660
|
+
agentCount: z.ZodNumber;
|
|
1661
|
+
}, "strip", z.ZodTypeAny, {
|
|
1662
|
+
bookings: {
|
|
1663
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1664
|
+
totalToday: number;
|
|
1665
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1666
|
+
ongoingBookings: number;
|
|
1667
|
+
startingToday: number;
|
|
1668
|
+
upcomingStarts: number;
|
|
1669
|
+
waitingForConfirmation: number;
|
|
1670
|
+
};
|
|
1671
|
+
actives: {
|
|
1672
|
+
total: number;
|
|
1673
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1674
|
+
};
|
|
1675
|
+
agentCount: number;
|
|
1676
|
+
workers: {
|
|
1677
|
+
total: number;
|
|
1678
|
+
addedToday: number;
|
|
1679
|
+
};
|
|
1680
|
+
}, {
|
|
1681
|
+
bookings: {
|
|
1682
|
+
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1683
|
+
totalToday: number;
|
|
1684
|
+
byCategory: Partial<Record<import("../bookings/bookings.contract").BookingCategory, number>>;
|
|
1685
|
+
ongoingBookings: number;
|
|
1686
|
+
startingToday: number;
|
|
1687
|
+
upcomingStarts: number;
|
|
1688
|
+
waitingForConfirmation: number;
|
|
1689
|
+
};
|
|
1690
|
+
actives: {
|
|
1691
|
+
total: number;
|
|
1692
|
+
byStatusSa: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1693
|
+
};
|
|
1694
|
+
agentCount: number;
|
|
1695
|
+
workers: {
|
|
1696
|
+
total: number;
|
|
1697
|
+
addedToday: number;
|
|
1698
|
+
};
|
|
1699
|
+
}>;
|
|
1700
|
+
};
|
|
1701
|
+
};
|
|
1185
1702
|
getActivesTrend: {
|
|
1186
1703
|
description: "Returns time-series data for actives over a date range";
|
|
1187
1704
|
query: z.ZodObject<{
|
|
@@ -1206,11 +1723,11 @@ export declare const dashboardWidgetsContract: {
|
|
|
1206
1723
|
}, "strip", z.ZodTypeAny, {
|
|
1207
1724
|
date: string;
|
|
1208
1725
|
total: number;
|
|
1209
|
-
byStatus: Partial<Record<"
|
|
1726
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1210
1727
|
}, {
|
|
1211
1728
|
date: string;
|
|
1212
1729
|
total: number;
|
|
1213
|
-
byStatus: Partial<Record<"
|
|
1730
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1214
1731
|
}>, "many">;
|
|
1215
1732
|
summary: z.ZodObject<{
|
|
1216
1733
|
averageDaily: z.ZodNumber;
|
|
@@ -1226,27 +1743,27 @@ export declare const dashboardWidgetsContract: {
|
|
|
1226
1743
|
peakValue: number;
|
|
1227
1744
|
}>;
|
|
1228
1745
|
}, "strip", z.ZodTypeAny, {
|
|
1746
|
+
data: {
|
|
1747
|
+
date: string;
|
|
1748
|
+
total: number;
|
|
1749
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1750
|
+
}[];
|
|
1229
1751
|
summary: {
|
|
1230
1752
|
averageDaily: number;
|
|
1231
1753
|
peakDay: string | null;
|
|
1232
1754
|
peakValue: number;
|
|
1233
1755
|
};
|
|
1756
|
+
}, {
|
|
1234
1757
|
data: {
|
|
1235
1758
|
date: string;
|
|
1236
1759
|
total: number;
|
|
1237
|
-
byStatus: Partial<Record<"
|
|
1760
|
+
byStatus: Partial<Record<"PENDING" | "ACTIVE" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1238
1761
|
}[];
|
|
1239
|
-
}, {
|
|
1240
1762
|
summary: {
|
|
1241
1763
|
averageDaily: number;
|
|
1242
1764
|
peakDay: string | null;
|
|
1243
1765
|
peakValue: number;
|
|
1244
1766
|
};
|
|
1245
|
-
data: {
|
|
1246
|
-
date: string;
|
|
1247
|
-
total: number;
|
|
1248
|
-
byStatus: Partial<Record<"ACTIVE" | "PENDING" | "VACATION" | "LEFT_THE_SITE" | "MEDICAL_LEAVE" | "DAY_OFF" | "INJURY", number>>;
|
|
1249
|
-
}[];
|
|
1250
1767
|
}>;
|
|
1251
1768
|
};
|
|
1252
1769
|
};
|
|
@@ -1291,25 +1808,25 @@ export declare const dashboardWidgetsContract: {
|
|
|
1291
1808
|
totalCreated: number;
|
|
1292
1809
|
}>;
|
|
1293
1810
|
}, "strip", z.ZodTypeAny, {
|
|
1294
|
-
summary: {
|
|
1295
|
-
averageDaily: number;
|
|
1296
|
-
totalCreated: number;
|
|
1297
|
-
};
|
|
1298
1811
|
data: {
|
|
1299
1812
|
date: string;
|
|
1300
1813
|
total: number;
|
|
1301
1814
|
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1302
1815
|
}[];
|
|
1303
|
-
}, {
|
|
1304
1816
|
summary: {
|
|
1305
1817
|
averageDaily: number;
|
|
1306
1818
|
totalCreated: number;
|
|
1307
1819
|
};
|
|
1820
|
+
}, {
|
|
1308
1821
|
data: {
|
|
1309
1822
|
date: string;
|
|
1310
1823
|
total: number;
|
|
1311
1824
|
byStatus: Partial<Record<import("../bookings/bookings.contract").BookingType, number>>;
|
|
1312
1825
|
}[];
|
|
1826
|
+
summary: {
|
|
1827
|
+
averageDaily: number;
|
|
1828
|
+
totalCreated: number;
|
|
1829
|
+
};
|
|
1313
1830
|
}>;
|
|
1314
1831
|
};
|
|
1315
1832
|
};
|
|
@@ -1338,14 +1855,14 @@ export declare const dashboardWidgetsContract: {
|
|
|
1338
1855
|
performanceScore: z.ZodNumber;
|
|
1339
1856
|
}, "strip", z.ZodTypeAny, {
|
|
1340
1857
|
date: string;
|
|
1341
|
-
conversionRate: number;
|
|
1342
1858
|
totalCalls: number;
|
|
1859
|
+
conversionRate: number;
|
|
1343
1860
|
performanceScore: number;
|
|
1344
1861
|
averageRating: number;
|
|
1345
1862
|
}, {
|
|
1346
1863
|
date: string;
|
|
1347
|
-
conversionRate: number;
|
|
1348
1864
|
totalCalls: number;
|
|
1865
|
+
conversionRate: number;
|
|
1349
1866
|
performanceScore: number;
|
|
1350
1867
|
averageRating: number;
|
|
1351
1868
|
}>, "many">;
|
|
@@ -1363,31 +1880,31 @@ export declare const dashboardWidgetsContract: {
|
|
|
1363
1880
|
overallAverageRating: number;
|
|
1364
1881
|
}>;
|
|
1365
1882
|
}, "strip", z.ZodTypeAny, {
|
|
1366
|
-
summary: {
|
|
1367
|
-
averageDailyCalls: number;
|
|
1368
|
-
overallConversionRate: number;
|
|
1369
|
-
overallAverageRating: number;
|
|
1370
|
-
};
|
|
1371
1883
|
data: {
|
|
1372
1884
|
date: string;
|
|
1373
|
-
conversionRate: number;
|
|
1374
1885
|
totalCalls: number;
|
|
1886
|
+
conversionRate: number;
|
|
1375
1887
|
performanceScore: number;
|
|
1376
1888
|
averageRating: number;
|
|
1377
1889
|
}[];
|
|
1378
|
-
}, {
|
|
1379
1890
|
summary: {
|
|
1380
1891
|
averageDailyCalls: number;
|
|
1381
1892
|
overallConversionRate: number;
|
|
1382
1893
|
overallAverageRating: number;
|
|
1383
1894
|
};
|
|
1895
|
+
}, {
|
|
1384
1896
|
data: {
|
|
1385
1897
|
date: string;
|
|
1386
|
-
conversionRate: number;
|
|
1387
1898
|
totalCalls: number;
|
|
1899
|
+
conversionRate: number;
|
|
1388
1900
|
performanceScore: number;
|
|
1389
1901
|
averageRating: number;
|
|
1390
1902
|
}[];
|
|
1903
|
+
summary: {
|
|
1904
|
+
averageDailyCalls: number;
|
|
1905
|
+
overallConversionRate: number;
|
|
1906
|
+
overallAverageRating: number;
|
|
1907
|
+
};
|
|
1391
1908
|
}>;
|
|
1392
1909
|
};
|
|
1393
1910
|
};
|
|
@@ -1432,25 +1949,25 @@ export declare const dashboardWidgetsContract: {
|
|
|
1432
1949
|
averagePerDay: number;
|
|
1433
1950
|
}>;
|
|
1434
1951
|
}, "strip", z.ZodTypeAny, {
|
|
1435
|
-
summary: {
|
|
1436
|
-
totalAdded: number;
|
|
1437
|
-
averagePerDay: number;
|
|
1438
|
-
};
|
|
1439
1952
|
data: {
|
|
1440
1953
|
date: string;
|
|
1441
1954
|
added: number;
|
|
1442
1955
|
cumulativeTotal: number;
|
|
1443
1956
|
}[];
|
|
1444
|
-
}, {
|
|
1445
1957
|
summary: {
|
|
1446
1958
|
totalAdded: number;
|
|
1447
1959
|
averagePerDay: number;
|
|
1448
1960
|
};
|
|
1961
|
+
}, {
|
|
1449
1962
|
data: {
|
|
1450
1963
|
date: string;
|
|
1451
1964
|
added: number;
|
|
1452
1965
|
cumulativeTotal: number;
|
|
1453
1966
|
}[];
|
|
1967
|
+
summary: {
|
|
1968
|
+
totalAdded: number;
|
|
1969
|
+
averagePerDay: number;
|
|
1970
|
+
};
|
|
1454
1971
|
}>;
|
|
1455
1972
|
};
|
|
1456
1973
|
};
|
|
@@ -1477,11 +1994,11 @@ export declare const dashboardWidgetsContract: {
|
|
|
1477
1994
|
byStatus: z.ZodRecord<z.ZodEnum<["ACTIVE", "INACTIVE", "PENDING_APPROVAL", "REJECTED", "APPROVED", "CHANGED_COMPANY", "CHANGED_AGENT", "CHANGED_COMPANY_AND_AGENT"]>, z.ZodNumber>;
|
|
1478
1995
|
}, "strip", z.ZodTypeAny, {
|
|
1479
1996
|
date: string;
|
|
1480
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
1997
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
1481
1998
|
created: number;
|
|
1482
1999
|
}, {
|
|
1483
2000
|
date: string;
|
|
1484
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
2001
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
1485
2002
|
created: number;
|
|
1486
2003
|
}>, "many">;
|
|
1487
2004
|
summary: z.ZodObject<{
|
|
@@ -1495,25 +2012,25 @@ export declare const dashboardWidgetsContract: {
|
|
|
1495
2012
|
activeCount: number;
|
|
1496
2013
|
}>;
|
|
1497
2014
|
}, "strip", z.ZodTypeAny, {
|
|
1498
|
-
summary: {
|
|
1499
|
-
totalCreated: number;
|
|
1500
|
-
activeCount: number;
|
|
1501
|
-
};
|
|
1502
2015
|
data: {
|
|
1503
2016
|
date: string;
|
|
1504
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
2017
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
1505
2018
|
created: number;
|
|
1506
2019
|
}[];
|
|
1507
|
-
}, {
|
|
1508
2020
|
summary: {
|
|
1509
2021
|
totalCreated: number;
|
|
1510
2022
|
activeCount: number;
|
|
1511
2023
|
};
|
|
2024
|
+
}, {
|
|
1512
2025
|
data: {
|
|
1513
2026
|
date: string;
|
|
1514
|
-
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "
|
|
2027
|
+
byStatus: Partial<Record<"ACTIVE" | "APPROVED" | "INACTIVE" | "PENDING_APPROVAL" | "REJECTED" | "CHANGED_COMPANY" | "CHANGED_AGENT" | "CHANGED_COMPANY_AND_AGENT", number>>;
|
|
1515
2028
|
created: number;
|
|
1516
2029
|
}[];
|
|
2030
|
+
summary: {
|
|
2031
|
+
totalCreated: number;
|
|
2032
|
+
activeCount: number;
|
|
2033
|
+
};
|
|
1517
2034
|
}>;
|
|
1518
2035
|
};
|
|
1519
2036
|
};
|
|
@@ -1561,6 +2078,11 @@ export type AdminAgentStatsResponse = z.infer<ReturnType<typeof createPaginatedR
|
|
|
1561
2078
|
totalCalls: z.ZodNumber;
|
|
1562
2079
|
averageRating: z.ZodNumber;
|
|
1563
2080
|
conversionRate: z.ZodNumber;
|
|
2081
|
+
callsOnDate: z.ZodNumber;
|
|
2082
|
+
efficientCalls: z.ZodNumber;
|
|
2083
|
+
conversionsOnDate: z.ZodNumber;
|
|
2084
|
+
dailyConversionRate: z.ZodNumber;
|
|
2085
|
+
ratingBreakdown: z.ZodRecord<z.ZodNativeEnum<any>, z.ZodNumber>;
|
|
1564
2086
|
performanceScore: z.ZodNumber;
|
|
1565
2087
|
assignmentCalls: z.ZodNumber;
|
|
1566
2088
|
followUpCalls: z.ZodNumber;
|
|
@@ -1571,4 +2093,6 @@ export type AdminAgentStatsResponse = z.infer<ReturnType<typeof createPaginatedR
|
|
|
1571
2093
|
ownResearchLeadsNew: z.ZodNumber;
|
|
1572
2094
|
}>>>>;
|
|
1573
2095
|
export type AdminAgentStatsItem = AdminAgentStatsResponse['items'][number];
|
|
2096
|
+
export type AdminFaAggregate = z.infer<typeof AdminFaAggregateSchema>;
|
|
2097
|
+
export type AdminSaAggregate = z.infer<typeof AdminSaAggregateSchema>;
|
|
1574
2098
|
//# sourceMappingURL=dashboard-widgets.contract.d.ts.map
|