@dakkitor/api-contracts 1.1.10 → 1.1.12

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.
Files changed (89) hide show
  1. package/dist/actives/actives.contract.d.ts +59 -60
  2. package/dist/actives/actives.contract.d.ts.map +1 -1
  3. package/dist/actives/actives.contract.js +16 -19
  4. package/dist/agent-client-links/agent-client-links.contract.d.ts +1909 -0
  5. package/dist/agent-client-links/agent-client-links.contract.d.ts.map +1 -0
  6. package/dist/agent-client-links/agent-client-links.contract.js +127 -0
  7. package/dist/auth/auth.contract.d.ts +319 -0
  8. package/dist/auth/auth.contract.d.ts.map +1 -0
  9. package/dist/auth/auth.contract.js +63 -0
  10. package/dist/bookings/bookings.contract.d.ts +371 -280
  11. package/dist/bookings/bookings.contract.d.ts.map +1 -1
  12. package/dist/bookings/bookings.contract.js +25 -33
  13. package/dist/call-history/call-history.contract.d.ts +1164 -0
  14. package/dist/call-history/call-history.contract.d.ts.map +1 -0
  15. package/dist/call-history/call-history.contract.js +254 -0
  16. package/dist/client-contacts/client-contacts.contract.d.ts +375 -426
  17. package/dist/client-contacts/client-contacts.contract.d.ts.map +1 -1
  18. package/dist/client-contacts/client-contacts.contract.js +24 -13
  19. package/dist/clients/clients.contract.d.ts +317 -289
  20. package/dist/clients/clients.contract.d.ts.map +1 -1
  21. package/dist/clients/clients.contract.js +44 -29
  22. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts +3013 -0
  23. package/dist/collaboration-checkings/collaboration-checkings.contract.d.ts.map +1 -0
  24. package/dist/collaboration-checkings/collaboration-checkings.contract.js +247 -0
  25. package/dist/collaborations/collaborations.contract.d.ts +2229 -0
  26. package/dist/collaborations/collaborations.contract.d.ts.map +1 -0
  27. package/dist/collaborations/collaborations.contract.js +284 -0
  28. package/dist/common/common-schemas.d.ts +100 -0
  29. package/dist/common/common-schemas.d.ts.map +1 -1
  30. package/dist/common/common-schemas.js +268 -1
  31. package/dist/common/error-schemas.d.ts +7 -7
  32. package/dist/common/error-schemas.d.ts.map +1 -1
  33. package/dist/common/openapi-metadata.d.ts +6 -0
  34. package/dist/common/openapi-metadata.d.ts.map +1 -1
  35. package/dist/companies/companies.contract.d.ts +1108 -0
  36. package/dist/companies/companies.contract.d.ts.map +1 -0
  37. package/dist/companies/companies.contract.js +164 -0
  38. package/dist/cron-executions/cron-executions.contract.d.ts +1643 -0
  39. package/dist/cron-executions/cron-executions.contract.d.ts.map +1 -0
  40. package/dist/cron-executions/cron-executions.contract.js +271 -0
  41. package/dist/curated-workers/curated-workers.contract.d.ts +3183 -0
  42. package/dist/curated-workers/curated-workers.contract.d.ts.map +1 -0
  43. package/dist/curated-workers/curated-workers.contract.js +444 -0
  44. package/dist/dashboards/agent-daily-metrics.contract.d.ts +639 -0
  45. package/dist/dashboards/agent-daily-metrics.contract.d.ts.map +1 -0
  46. package/dist/dashboards/agent-daily-metrics.contract.js +118 -0
  47. package/dist/files/files.contract.d.ts +1258 -0
  48. package/dist/files/files.contract.d.ts.map +1 -0
  49. package/dist/files/files.contract.js +205 -0
  50. package/dist/health/health.contract.d.ts +161 -0
  51. package/dist/health/health.contract.d.ts.map +1 -0
  52. package/dist/health/health.contract.js +52 -0
  53. package/dist/index.d.ts +27393 -3342
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +63 -0
  56. package/dist/jobs/jobs.contract.d.ts +2303 -0
  57. package/dist/jobs/jobs.contract.d.ts.map +1 -0
  58. package/dist/jobs/jobs.contract.js +295 -0
  59. package/dist/lead-assignments/lead-assignments.contract.d.ts +1826 -0
  60. package/dist/lead-assignments/lead-assignments.contract.d.ts.map +1 -0
  61. package/dist/lead-assignments/lead-assignments.contract.js +187 -0
  62. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts +1147 -0
  63. package/dist/lead-distribution/agent-lead-distribution.contract.d.ts.map +1 -0
  64. package/dist/lead-distribution/agent-lead-distribution.contract.js +154 -0
  65. package/dist/lead-distribution/lead-distribution-config.contract.d.ts +1085 -0
  66. package/dist/lead-distribution/lead-distribution-config.contract.d.ts.map +1 -0
  67. package/dist/lead-distribution/lead-distribution-config.contract.js +196 -0
  68. package/dist/leads/leads.contract.d.ts +1690 -0
  69. package/dist/leads/leads.contract.d.ts.map +1 -0
  70. package/dist/leads/leads.contract.js +328 -0
  71. package/dist/locations/locations.contract.d.ts +974 -0
  72. package/dist/locations/locations.contract.d.ts.map +1 -0
  73. package/dist/locations/locations.contract.js +154 -0
  74. package/dist/postcodes/postcodes.contract.d.ts +370 -0
  75. package/dist/postcodes/postcodes.contract.d.ts.map +1 -0
  76. package/dist/postcodes/postcodes.contract.js +90 -0
  77. package/dist/qualifications/qualifications.contract.d.ts +1489 -0
  78. package/dist/qualifications/qualifications.contract.d.ts.map +1 -0
  79. package/dist/qualifications/qualifications.contract.js +215 -0
  80. package/dist/trades/trades.contract.d.ts +799 -0
  81. package/dist/trades/trades.contract.d.ts.map +1 -0
  82. package/dist/trades/trades.contract.js +112 -0
  83. package/dist/users/users.contract.d.ts +162 -152
  84. package/dist/users/users.contract.d.ts.map +1 -1
  85. package/dist/users/users.contract.js +16 -28
  86. package/dist/workers/workers.contract.d.ts +3376 -0
  87. package/dist/workers/workers.contract.d.ts.map +1 -0
  88. package/dist/workers/workers.contract.js +363 -0
  89. package/package.json +4 -3
@@ -0,0 +1,1690 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Lead Status Enum
4
+ */
5
+ export declare const LeadStatusSchema: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
6
+ /**
7
+ * Lead Sortable Fields Enum
8
+ */
9
+ export declare const LeadSortableFieldsSchema: z.ZodEnum<["name", "phoneNumber", "status", "source", "qualityScore", "conversionRate", "totalCalls", "createdAt", "updatedAt"]>;
10
+ /**
11
+ * Quality Tier Enum
12
+ */
13
+ export declare const QualityTierSchema: z.ZodEnum<["high", "medium", "low", "untested"]>;
14
+ export type LeadStatus = z.infer<typeof LeadStatusSchema>;
15
+ export type LeadSortableFields = z.infer<typeof LeadSortableFieldsSchema>;
16
+ export type QualityTier = z.infer<typeof QualityTierSchema>;
17
+ /**
18
+ * Main Lead Schema
19
+ */
20
+ export declare const LeadSchema: z.ZodObject<{
21
+ id: z.ZodString;
22
+ name: z.ZodString;
23
+ phoneNumber: z.ZodString;
24
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
25
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
26
+ source: z.ZodString;
27
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
28
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
29
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
30
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
31
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
32
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
35
+ id: string;
36
+ name: string;
37
+ createdAt: string;
38
+ updatedAt: string;
39
+ source: string;
40
+ phoneNumber: string;
41
+ blacklistReason?: string | null | undefined;
42
+ totalCalls?: number | null | undefined;
43
+ qualityScore?: number | null | undefined;
44
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
45
+ conversionRate?: number | null | undefined;
46
+ }, {
47
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
48
+ id: string;
49
+ name: string;
50
+ createdAt: string | Date;
51
+ updatedAt: string | Date;
52
+ source: string;
53
+ phoneNumber: string;
54
+ blacklistReason?: string | null | undefined;
55
+ totalCalls?: number | null | undefined;
56
+ qualityScore?: number | null | undefined;
57
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
58
+ conversionRate?: number | null | undefined;
59
+ }>;
60
+ /**
61
+ * Create Lead Schema
62
+ */
63
+ export declare const CreateLeadSchema: z.ZodObject<{
64
+ name: z.ZodString;
65
+ phoneNumber: z.ZodString;
66
+ status: z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>;
67
+ isBlacklisted: z.ZodDefault<z.ZodBoolean>;
68
+ blacklistReason: z.ZodOptional<z.ZodString>;
69
+ source: z.ZodString;
70
+ }, "strip", z.ZodTypeAny, {
71
+ name: string;
72
+ source: string;
73
+ phoneNumber: string;
74
+ isBlacklisted: boolean;
75
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
76
+ blacklistReason?: string | undefined;
77
+ }, {
78
+ name: string;
79
+ source: string;
80
+ phoneNumber: string;
81
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
82
+ blacklistReason?: string | undefined;
83
+ isBlacklisted?: boolean | undefined;
84
+ }>;
85
+ /**
86
+ * Update Lead Schema
87
+ */
88
+ export declare const UpdateLeadSchema: z.ZodObject<{
89
+ name: z.ZodOptional<z.ZodString>;
90
+ phoneNumber: z.ZodOptional<z.ZodString>;
91
+ status: z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>;
92
+ blacklistReason: z.ZodOptional<z.ZodString>;
93
+ source: z.ZodOptional<z.ZodString>;
94
+ }, "strip", z.ZodTypeAny, {
95
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
96
+ name?: string | undefined;
97
+ blacklistReason?: string | undefined;
98
+ source?: string | undefined;
99
+ phoneNumber?: string | undefined;
100
+ }, {
101
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
102
+ name?: string | undefined;
103
+ blacklistReason?: string | undefined;
104
+ source?: string | undefined;
105
+ phoneNumber?: string | undefined;
106
+ }>;
107
+ /**
108
+ * Filter Lead Schema
109
+ */
110
+ export declare const FilterLeadSchema: z.ZodObject<{
111
+ limit: z.ZodDefault<z.ZodNumber>;
112
+ page: z.ZodDefault<z.ZodNumber>;
113
+ } & {
114
+ name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
115
+ phoneNumber: z.ZodNullable<z.ZodOptional<z.ZodString>>;
116
+ status: z.ZodNullable<z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>>;
117
+ source: z.ZodNullable<z.ZodOptional<z.ZodString>>;
118
+ minQualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
119
+ maxQualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
120
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
121
+ minConversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
122
+ minTotalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
123
+ sortBy: z.ZodNullable<z.ZodOptional<z.ZodEnum<["name", "phoneNumber", "status", "source", "qualityScore", "conversionRate", "totalCalls", "createdAt", "updatedAt"]>>>;
124
+ sortOrder: z.ZodNullable<z.ZodOptional<z.ZodEnum<["ASC", "DESC"]>>>;
125
+ }, "strip", z.ZodTypeAny, {
126
+ limit: number;
127
+ page: number;
128
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | null | undefined;
129
+ name?: string | null | undefined;
130
+ sortBy?: "status" | "name" | "createdAt" | "updatedAt" | "totalCalls" | "source" | "phoneNumber" | "qualityScore" | "conversionRate" | null | undefined;
131
+ sortOrder?: "ASC" | "DESC" | null | undefined;
132
+ source?: string | null | undefined;
133
+ phoneNumber?: string | null | undefined;
134
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
135
+ minQualityScore?: number | null | undefined;
136
+ maxQualityScore?: number | null | undefined;
137
+ minConversionRate?: number | null | undefined;
138
+ minTotalCalls?: number | null | undefined;
139
+ }, {
140
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | null | undefined;
141
+ name?: string | null | undefined;
142
+ limit?: number | undefined;
143
+ page?: number | undefined;
144
+ sortBy?: "status" | "name" | "createdAt" | "updatedAt" | "totalCalls" | "source" | "phoneNumber" | "qualityScore" | "conversionRate" | null | undefined;
145
+ sortOrder?: "ASC" | "DESC" | null | undefined;
146
+ source?: string | null | undefined;
147
+ phoneNumber?: string | null | undefined;
148
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
149
+ minQualityScore?: number | null | undefined;
150
+ maxQualityScore?: number | null | undefined;
151
+ minConversionRate?: number | null | undefined;
152
+ minTotalCalls?: number | null | undefined;
153
+ }>;
154
+ /**
155
+ * Call History Response Schema for leads
156
+ */
157
+ export declare const LeadCallHistoryResponseSchema: z.ZodObject<{
158
+ id: z.ZodString;
159
+ assignmentId: z.ZodString;
160
+ leadId: z.ZodString;
161
+ agentId: z.ZodString;
162
+ callDate: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
163
+ callType: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallType>;
164
+ rating: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallRating>;
165
+ ratingWeight: z.ZodNumber;
166
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
167
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
168
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
169
+ }, "strip", z.ZodTypeAny, {
170
+ id: string;
171
+ createdAt: string;
172
+ updatedAt: string;
173
+ agentId: string;
174
+ assignmentId: string;
175
+ rating: import("../call-history/call-history.contract").CallRating;
176
+ callType: import("../call-history/call-history.contract").CallType;
177
+ leadId: string;
178
+ callDate: string;
179
+ ratingWeight: number;
180
+ notes?: string | null | undefined;
181
+ }, {
182
+ id: string;
183
+ createdAt: string | Date;
184
+ updatedAt: string | Date;
185
+ agentId: string;
186
+ assignmentId: string;
187
+ rating: import("../call-history/call-history.contract").CallRating;
188
+ callType: import("../call-history/call-history.contract").CallType;
189
+ leadId: string;
190
+ callDate: string | Date;
191
+ ratingWeight: number;
192
+ notes?: string | null | undefined;
193
+ }>;
194
+ /**
195
+ * Lead Statistics Schema for quality dashboard
196
+ */
197
+ export declare const TierDistributionSchema: z.ZodObject<{
198
+ high: z.ZodNumber;
199
+ medium: z.ZodNumber;
200
+ low: z.ZodNumber;
201
+ untested: z.ZodNumber;
202
+ }, "strip", z.ZodTypeAny, {
203
+ high: number;
204
+ medium: number;
205
+ low: number;
206
+ untested: number;
207
+ }, {
208
+ high: number;
209
+ medium: number;
210
+ low: number;
211
+ untested: number;
212
+ }>;
213
+ export declare const LeadStatisticsSchema: z.ZodObject<{
214
+ totalLeads: z.ZodNumber;
215
+ avgQualityScore: z.ZodNumber;
216
+ avgConversionRate: z.ZodNumber;
217
+ avgCallsPerLead: z.ZodNumber;
218
+ tierDistribution: z.ZodObject<{
219
+ high: z.ZodNumber;
220
+ medium: z.ZodNumber;
221
+ low: z.ZodNumber;
222
+ untested: z.ZodNumber;
223
+ }, "strip", z.ZodTypeAny, {
224
+ high: number;
225
+ medium: number;
226
+ low: number;
227
+ untested: number;
228
+ }, {
229
+ high: number;
230
+ medium: number;
231
+ low: number;
232
+ untested: number;
233
+ }>;
234
+ }, "strip", z.ZodTypeAny, {
235
+ totalLeads: number;
236
+ avgQualityScore: number;
237
+ avgConversionRate: number;
238
+ avgCallsPerLead: number;
239
+ tierDistribution: {
240
+ high: number;
241
+ medium: number;
242
+ low: number;
243
+ untested: number;
244
+ };
245
+ }, {
246
+ totalLeads: number;
247
+ avgQualityScore: number;
248
+ avgConversionRate: number;
249
+ avgCallsPerLead: number;
250
+ tierDistribution: {
251
+ high: number;
252
+ medium: number;
253
+ low: number;
254
+ untested: number;
255
+ };
256
+ }>;
257
+ export declare const PaginatedLeadResponseSchema: z.ZodObject<{
258
+ items: z.ZodArray<z.ZodObject<{
259
+ id: z.ZodString;
260
+ name: z.ZodString;
261
+ phoneNumber: z.ZodString;
262
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
263
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
264
+ source: z.ZodString;
265
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
266
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
267
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
268
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
269
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
270
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
271
+ }, "strip", z.ZodTypeAny, {
272
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
273
+ id: string;
274
+ name: string;
275
+ createdAt: string;
276
+ updatedAt: string;
277
+ source: string;
278
+ phoneNumber: string;
279
+ blacklistReason?: string | null | undefined;
280
+ totalCalls?: number | null | undefined;
281
+ qualityScore?: number | null | undefined;
282
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
283
+ conversionRate?: number | null | undefined;
284
+ }, {
285
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
286
+ id: string;
287
+ name: string;
288
+ createdAt: string | Date;
289
+ updatedAt: string | Date;
290
+ source: string;
291
+ phoneNumber: string;
292
+ blacklistReason?: string | null | undefined;
293
+ totalCalls?: number | null | undefined;
294
+ qualityScore?: number | null | undefined;
295
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
296
+ conversionRate?: number | null | undefined;
297
+ }>, "many">;
298
+ totalCount: z.ZodNumber;
299
+ limit: z.ZodNumber;
300
+ skip: z.ZodNumber;
301
+ currentPage: z.ZodNumber;
302
+ totalPages: z.ZodNumber;
303
+ }, "strip", z.ZodTypeAny, {
304
+ items: {
305
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
306
+ id: string;
307
+ name: string;
308
+ createdAt: string;
309
+ updatedAt: string;
310
+ source: string;
311
+ phoneNumber: string;
312
+ blacklistReason?: string | null | undefined;
313
+ totalCalls?: number | null | undefined;
314
+ qualityScore?: number | null | undefined;
315
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
316
+ conversionRate?: number | null | undefined;
317
+ }[];
318
+ totalCount: number;
319
+ limit: number;
320
+ skip: number;
321
+ currentPage: number;
322
+ totalPages: number;
323
+ }, {
324
+ items: {
325
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
326
+ id: string;
327
+ name: string;
328
+ createdAt: string | Date;
329
+ updatedAt: string | Date;
330
+ source: string;
331
+ phoneNumber: string;
332
+ blacklistReason?: string | null | undefined;
333
+ totalCalls?: number | null | undefined;
334
+ qualityScore?: number | null | undefined;
335
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
336
+ conversionRate?: number | null | undefined;
337
+ }[];
338
+ totalCount: number;
339
+ limit: number;
340
+ skip: number;
341
+ currentPage: number;
342
+ totalPages: number;
343
+ }>;
344
+ export type Lead = z.infer<typeof LeadSchema>;
345
+ export type CreateLead = z.infer<typeof CreateLeadSchema>;
346
+ export type UpdateLead = z.infer<typeof UpdateLeadSchema>;
347
+ export type FilterLead = z.infer<typeof FilterLeadSchema>;
348
+ export type LeadCallHistoryResponse = z.infer<typeof LeadCallHistoryResponseSchema>;
349
+ export type TierDistribution = z.infer<typeof TierDistributionSchema>;
350
+ export type LeadStatistics = z.infer<typeof LeadStatisticsSchema>;
351
+ export type PaginatedLeadResponse = z.infer<typeof PaginatedLeadResponseSchema>;
352
+ export declare const leadsContractRouter: {
353
+ create: {
354
+ metadata: {
355
+ tags: string[];
356
+ openApi: {
357
+ operationId: string;
358
+ };
359
+ };
360
+ summary: "Create a new lead";
361
+ method: "POST";
362
+ body: z.ZodObject<{
363
+ name: z.ZodString;
364
+ phoneNumber: z.ZodString;
365
+ status: z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>;
366
+ isBlacklisted: z.ZodDefault<z.ZodBoolean>;
367
+ blacklistReason: z.ZodOptional<z.ZodString>;
368
+ source: z.ZodString;
369
+ }, "strip", z.ZodTypeAny, {
370
+ name: string;
371
+ source: string;
372
+ phoneNumber: string;
373
+ isBlacklisted: boolean;
374
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
375
+ blacklistReason?: string | undefined;
376
+ }, {
377
+ name: string;
378
+ source: string;
379
+ phoneNumber: string;
380
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
381
+ blacklistReason?: string | undefined;
382
+ isBlacklisted?: boolean | undefined;
383
+ }>;
384
+ path: "/v2/leads";
385
+ responses: {
386
+ 400: z.ZodObject<{
387
+ statusCode: z.ZodNumber;
388
+ message: z.ZodString;
389
+ code: z.ZodString;
390
+ details: z.ZodOptional<z.ZodUnknown>;
391
+ timestamp: z.ZodString;
392
+ path: z.ZodString;
393
+ correlationId: z.ZodOptional<z.ZodString>;
394
+ }, "strip", z.ZodTypeAny, {
395
+ statusCode: number;
396
+ message: string;
397
+ code: string;
398
+ timestamp: string;
399
+ path: string;
400
+ details?: unknown;
401
+ correlationId?: string | undefined;
402
+ }, {
403
+ statusCode: number;
404
+ message: string;
405
+ code: string;
406
+ timestamp: string;
407
+ path: string;
408
+ details?: unknown;
409
+ correlationId?: string | undefined;
410
+ }>;
411
+ 401: z.ZodObject<{
412
+ statusCode: z.ZodNumber;
413
+ message: z.ZodString;
414
+ code: z.ZodString;
415
+ details: z.ZodOptional<z.ZodUnknown>;
416
+ timestamp: z.ZodString;
417
+ path: z.ZodString;
418
+ correlationId: z.ZodOptional<z.ZodString>;
419
+ }, "strip", z.ZodTypeAny, {
420
+ statusCode: number;
421
+ message: string;
422
+ code: string;
423
+ timestamp: string;
424
+ path: string;
425
+ details?: unknown;
426
+ correlationId?: string | undefined;
427
+ }, {
428
+ statusCode: number;
429
+ message: string;
430
+ code: string;
431
+ timestamp: string;
432
+ path: string;
433
+ details?: unknown;
434
+ correlationId?: string | undefined;
435
+ }>;
436
+ 403: z.ZodObject<{
437
+ statusCode: z.ZodNumber;
438
+ message: z.ZodString;
439
+ code: z.ZodString;
440
+ details: z.ZodOptional<z.ZodUnknown>;
441
+ timestamp: z.ZodString;
442
+ path: z.ZodString;
443
+ correlationId: z.ZodOptional<z.ZodString>;
444
+ }, "strip", z.ZodTypeAny, {
445
+ statusCode: number;
446
+ message: string;
447
+ code: string;
448
+ timestamp: string;
449
+ path: string;
450
+ details?: unknown;
451
+ correlationId?: string | undefined;
452
+ }, {
453
+ statusCode: number;
454
+ message: string;
455
+ code: string;
456
+ timestamp: string;
457
+ path: string;
458
+ details?: unknown;
459
+ correlationId?: string | undefined;
460
+ }>;
461
+ 500: z.ZodObject<{
462
+ statusCode: z.ZodNumber;
463
+ message: z.ZodString;
464
+ code: z.ZodString;
465
+ details: z.ZodOptional<z.ZodUnknown>;
466
+ timestamp: z.ZodString;
467
+ path: z.ZodString;
468
+ correlationId: z.ZodOptional<z.ZodString>;
469
+ }, "strip", z.ZodTypeAny, {
470
+ statusCode: number;
471
+ message: string;
472
+ code: string;
473
+ timestamp: string;
474
+ path: string;
475
+ details?: unknown;
476
+ correlationId?: string | undefined;
477
+ }, {
478
+ statusCode: number;
479
+ message: string;
480
+ code: string;
481
+ timestamp: string;
482
+ path: string;
483
+ details?: unknown;
484
+ correlationId?: string | undefined;
485
+ }>;
486
+ 201: z.ZodObject<{
487
+ id: z.ZodString;
488
+ name: z.ZodString;
489
+ phoneNumber: z.ZodString;
490
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
491
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
492
+ source: z.ZodString;
493
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
494
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
495
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
496
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
497
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
498
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
499
+ }, "strip", z.ZodTypeAny, {
500
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
501
+ id: string;
502
+ name: string;
503
+ createdAt: string;
504
+ updatedAt: string;
505
+ source: string;
506
+ phoneNumber: string;
507
+ blacklistReason?: string | null | undefined;
508
+ totalCalls?: number | null | undefined;
509
+ qualityScore?: number | null | undefined;
510
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
511
+ conversionRate?: number | null | undefined;
512
+ }, {
513
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
514
+ id: string;
515
+ name: string;
516
+ createdAt: string | Date;
517
+ updatedAt: string | Date;
518
+ source: string;
519
+ phoneNumber: string;
520
+ blacklistReason?: string | null | undefined;
521
+ totalCalls?: number | null | undefined;
522
+ qualityScore?: number | null | undefined;
523
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
524
+ conversionRate?: number | null | undefined;
525
+ }>;
526
+ 409: z.ZodObject<{
527
+ statusCode: z.ZodNumber;
528
+ message: z.ZodString;
529
+ code: z.ZodString;
530
+ details: z.ZodOptional<z.ZodUnknown>;
531
+ timestamp: z.ZodString;
532
+ path: z.ZodString;
533
+ correlationId: z.ZodOptional<z.ZodString>;
534
+ }, "strip", z.ZodTypeAny, {
535
+ statusCode: number;
536
+ message: string;
537
+ code: string;
538
+ timestamp: string;
539
+ path: string;
540
+ details?: unknown;
541
+ correlationId?: string | undefined;
542
+ }, {
543
+ statusCode: number;
544
+ message: string;
545
+ code: string;
546
+ timestamp: string;
547
+ path: string;
548
+ details?: unknown;
549
+ correlationId?: string | undefined;
550
+ }>;
551
+ };
552
+ };
553
+ findAll: {
554
+ metadata: {
555
+ tags: string[];
556
+ openApi: {
557
+ operationId: string;
558
+ };
559
+ };
560
+ query: z.ZodObject<{
561
+ limit: z.ZodDefault<z.ZodNumber>;
562
+ page: z.ZodDefault<z.ZodNumber>;
563
+ } & {
564
+ name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
565
+ phoneNumber: z.ZodNullable<z.ZodOptional<z.ZodString>>;
566
+ status: z.ZodNullable<z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>>;
567
+ source: z.ZodNullable<z.ZodOptional<z.ZodString>>;
568
+ minQualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
569
+ maxQualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
570
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
571
+ minConversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
572
+ minTotalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
573
+ sortBy: z.ZodNullable<z.ZodOptional<z.ZodEnum<["name", "phoneNumber", "status", "source", "qualityScore", "conversionRate", "totalCalls", "createdAt", "updatedAt"]>>>;
574
+ sortOrder: z.ZodNullable<z.ZodOptional<z.ZodEnum<["ASC", "DESC"]>>>;
575
+ }, "strip", z.ZodTypeAny, {
576
+ limit: number;
577
+ page: number;
578
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | null | undefined;
579
+ name?: string | null | undefined;
580
+ sortBy?: "status" | "name" | "createdAt" | "updatedAt" | "totalCalls" | "source" | "phoneNumber" | "qualityScore" | "conversionRate" | null | undefined;
581
+ sortOrder?: "ASC" | "DESC" | null | undefined;
582
+ source?: string | null | undefined;
583
+ phoneNumber?: string | null | undefined;
584
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
585
+ minQualityScore?: number | null | undefined;
586
+ maxQualityScore?: number | null | undefined;
587
+ minConversionRate?: number | null | undefined;
588
+ minTotalCalls?: number | null | undefined;
589
+ }, {
590
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | null | undefined;
591
+ name?: string | null | undefined;
592
+ limit?: number | undefined;
593
+ page?: number | undefined;
594
+ sortBy?: "status" | "name" | "createdAt" | "updatedAt" | "totalCalls" | "source" | "phoneNumber" | "qualityScore" | "conversionRate" | null | undefined;
595
+ sortOrder?: "ASC" | "DESC" | null | undefined;
596
+ source?: string | null | undefined;
597
+ phoneNumber?: string | null | undefined;
598
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
599
+ minQualityScore?: number | null | undefined;
600
+ maxQualityScore?: number | null | undefined;
601
+ minConversionRate?: number | null | undefined;
602
+ minTotalCalls?: number | null | undefined;
603
+ }>;
604
+ summary: "Get all leads";
605
+ method: "GET";
606
+ path: "/v2/leads";
607
+ responses: {
608
+ 400: z.ZodObject<{
609
+ statusCode: z.ZodNumber;
610
+ message: z.ZodString;
611
+ code: z.ZodString;
612
+ details: z.ZodOptional<z.ZodUnknown>;
613
+ timestamp: z.ZodString;
614
+ path: z.ZodString;
615
+ correlationId: z.ZodOptional<z.ZodString>;
616
+ }, "strip", z.ZodTypeAny, {
617
+ statusCode: number;
618
+ message: string;
619
+ code: string;
620
+ timestamp: string;
621
+ path: string;
622
+ details?: unknown;
623
+ correlationId?: string | undefined;
624
+ }, {
625
+ statusCode: number;
626
+ message: string;
627
+ code: string;
628
+ timestamp: string;
629
+ path: string;
630
+ details?: unknown;
631
+ correlationId?: string | undefined;
632
+ }>;
633
+ 401: z.ZodObject<{
634
+ statusCode: z.ZodNumber;
635
+ message: z.ZodString;
636
+ code: z.ZodString;
637
+ details: z.ZodOptional<z.ZodUnknown>;
638
+ timestamp: z.ZodString;
639
+ path: z.ZodString;
640
+ correlationId: z.ZodOptional<z.ZodString>;
641
+ }, "strip", z.ZodTypeAny, {
642
+ statusCode: number;
643
+ message: string;
644
+ code: string;
645
+ timestamp: string;
646
+ path: string;
647
+ details?: unknown;
648
+ correlationId?: string | undefined;
649
+ }, {
650
+ statusCode: number;
651
+ message: string;
652
+ code: string;
653
+ timestamp: string;
654
+ path: string;
655
+ details?: unknown;
656
+ correlationId?: string | undefined;
657
+ }>;
658
+ 403: z.ZodObject<{
659
+ statusCode: z.ZodNumber;
660
+ message: z.ZodString;
661
+ code: z.ZodString;
662
+ details: z.ZodOptional<z.ZodUnknown>;
663
+ timestamp: z.ZodString;
664
+ path: z.ZodString;
665
+ correlationId: z.ZodOptional<z.ZodString>;
666
+ }, "strip", z.ZodTypeAny, {
667
+ statusCode: number;
668
+ message: string;
669
+ code: string;
670
+ timestamp: string;
671
+ path: string;
672
+ details?: unknown;
673
+ correlationId?: string | undefined;
674
+ }, {
675
+ statusCode: number;
676
+ message: string;
677
+ code: string;
678
+ timestamp: string;
679
+ path: string;
680
+ details?: unknown;
681
+ correlationId?: string | undefined;
682
+ }>;
683
+ 500: z.ZodObject<{
684
+ statusCode: z.ZodNumber;
685
+ message: z.ZodString;
686
+ code: z.ZodString;
687
+ details: z.ZodOptional<z.ZodUnknown>;
688
+ timestamp: z.ZodString;
689
+ path: z.ZodString;
690
+ correlationId: z.ZodOptional<z.ZodString>;
691
+ }, "strip", z.ZodTypeAny, {
692
+ statusCode: number;
693
+ message: string;
694
+ code: string;
695
+ timestamp: string;
696
+ path: string;
697
+ details?: unknown;
698
+ correlationId?: string | undefined;
699
+ }, {
700
+ statusCode: number;
701
+ message: string;
702
+ code: string;
703
+ timestamp: string;
704
+ path: string;
705
+ details?: unknown;
706
+ correlationId?: string | undefined;
707
+ }>;
708
+ 200: z.ZodObject<{
709
+ items: z.ZodArray<z.ZodObject<{
710
+ id: z.ZodString;
711
+ name: z.ZodString;
712
+ phoneNumber: z.ZodString;
713
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
714
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
715
+ source: z.ZodString;
716
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
717
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
718
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
719
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
720
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
721
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
722
+ }, "strip", z.ZodTypeAny, {
723
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
724
+ id: string;
725
+ name: string;
726
+ createdAt: string;
727
+ updatedAt: string;
728
+ source: string;
729
+ phoneNumber: string;
730
+ blacklistReason?: string | null | undefined;
731
+ totalCalls?: number | null | undefined;
732
+ qualityScore?: number | null | undefined;
733
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
734
+ conversionRate?: number | null | undefined;
735
+ }, {
736
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
737
+ id: string;
738
+ name: string;
739
+ createdAt: string | Date;
740
+ updatedAt: string | Date;
741
+ source: string;
742
+ phoneNumber: string;
743
+ blacklistReason?: string | null | undefined;
744
+ totalCalls?: number | null | undefined;
745
+ qualityScore?: number | null | undefined;
746
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
747
+ conversionRate?: number | null | undefined;
748
+ }>, "many">;
749
+ totalCount: z.ZodNumber;
750
+ limit: z.ZodNumber;
751
+ skip: z.ZodNumber;
752
+ currentPage: z.ZodNumber;
753
+ totalPages: z.ZodNumber;
754
+ }, "strip", z.ZodTypeAny, {
755
+ items: {
756
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
757
+ id: string;
758
+ name: string;
759
+ createdAt: string;
760
+ updatedAt: string;
761
+ source: string;
762
+ phoneNumber: string;
763
+ blacklistReason?: string | null | undefined;
764
+ totalCalls?: number | null | undefined;
765
+ qualityScore?: number | null | undefined;
766
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
767
+ conversionRate?: number | null | undefined;
768
+ }[];
769
+ totalCount: number;
770
+ limit: number;
771
+ skip: number;
772
+ currentPage: number;
773
+ totalPages: number;
774
+ }, {
775
+ items: {
776
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
777
+ id: string;
778
+ name: string;
779
+ createdAt: string | Date;
780
+ updatedAt: string | Date;
781
+ source: string;
782
+ phoneNumber: string;
783
+ blacklistReason?: string | null | undefined;
784
+ totalCalls?: number | null | undefined;
785
+ qualityScore?: number | null | undefined;
786
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
787
+ conversionRate?: number | null | undefined;
788
+ }[];
789
+ totalCount: number;
790
+ limit: number;
791
+ skip: number;
792
+ currentPage: number;
793
+ totalPages: number;
794
+ }>;
795
+ };
796
+ };
797
+ findOne: {
798
+ metadata: {
799
+ tags: string[];
800
+ openApi: {
801
+ operationId: string;
802
+ };
803
+ };
804
+ pathParams: z.ZodObject<{
805
+ id: z.ZodString;
806
+ }, "strip", z.ZodTypeAny, {
807
+ id: string;
808
+ }, {
809
+ id: string;
810
+ }>;
811
+ summary: "Get a lead by ID";
812
+ method: "GET";
813
+ path: "/v2/leads/:id";
814
+ responses: {
815
+ 400: z.ZodObject<{
816
+ statusCode: z.ZodNumber;
817
+ message: z.ZodString;
818
+ code: z.ZodString;
819
+ details: z.ZodOptional<z.ZodUnknown>;
820
+ timestamp: z.ZodString;
821
+ path: z.ZodString;
822
+ correlationId: z.ZodOptional<z.ZodString>;
823
+ }, "strip", z.ZodTypeAny, {
824
+ statusCode: number;
825
+ message: string;
826
+ code: string;
827
+ timestamp: string;
828
+ path: string;
829
+ details?: unknown;
830
+ correlationId?: string | undefined;
831
+ }, {
832
+ statusCode: number;
833
+ message: string;
834
+ code: string;
835
+ timestamp: string;
836
+ path: string;
837
+ details?: unknown;
838
+ correlationId?: string | undefined;
839
+ }>;
840
+ 401: z.ZodObject<{
841
+ statusCode: z.ZodNumber;
842
+ message: z.ZodString;
843
+ code: z.ZodString;
844
+ details: z.ZodOptional<z.ZodUnknown>;
845
+ timestamp: z.ZodString;
846
+ path: z.ZodString;
847
+ correlationId: z.ZodOptional<z.ZodString>;
848
+ }, "strip", z.ZodTypeAny, {
849
+ statusCode: number;
850
+ message: string;
851
+ code: string;
852
+ timestamp: string;
853
+ path: string;
854
+ details?: unknown;
855
+ correlationId?: string | undefined;
856
+ }, {
857
+ statusCode: number;
858
+ message: string;
859
+ code: string;
860
+ timestamp: string;
861
+ path: string;
862
+ details?: unknown;
863
+ correlationId?: string | undefined;
864
+ }>;
865
+ 403: z.ZodObject<{
866
+ statusCode: z.ZodNumber;
867
+ message: z.ZodString;
868
+ code: z.ZodString;
869
+ details: z.ZodOptional<z.ZodUnknown>;
870
+ timestamp: z.ZodString;
871
+ path: z.ZodString;
872
+ correlationId: z.ZodOptional<z.ZodString>;
873
+ }, "strip", z.ZodTypeAny, {
874
+ statusCode: number;
875
+ message: string;
876
+ code: string;
877
+ timestamp: string;
878
+ path: string;
879
+ details?: unknown;
880
+ correlationId?: string | undefined;
881
+ }, {
882
+ statusCode: number;
883
+ message: string;
884
+ code: string;
885
+ timestamp: string;
886
+ path: string;
887
+ details?: unknown;
888
+ correlationId?: string | undefined;
889
+ }>;
890
+ 500: z.ZodObject<{
891
+ statusCode: z.ZodNumber;
892
+ message: z.ZodString;
893
+ code: z.ZodString;
894
+ details: z.ZodOptional<z.ZodUnknown>;
895
+ timestamp: z.ZodString;
896
+ path: z.ZodString;
897
+ correlationId: z.ZodOptional<z.ZodString>;
898
+ }, "strip", z.ZodTypeAny, {
899
+ statusCode: number;
900
+ message: string;
901
+ code: string;
902
+ timestamp: string;
903
+ path: string;
904
+ details?: unknown;
905
+ correlationId?: string | undefined;
906
+ }, {
907
+ statusCode: number;
908
+ message: string;
909
+ code: string;
910
+ timestamp: string;
911
+ path: string;
912
+ details?: unknown;
913
+ correlationId?: string | undefined;
914
+ }>;
915
+ 200: z.ZodObject<{
916
+ id: z.ZodString;
917
+ name: z.ZodString;
918
+ phoneNumber: z.ZodString;
919
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
920
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
921
+ source: z.ZodString;
922
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
923
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
924
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
925
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
926
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
927
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
928
+ }, "strip", z.ZodTypeAny, {
929
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
930
+ id: string;
931
+ name: string;
932
+ createdAt: string;
933
+ updatedAt: string;
934
+ source: string;
935
+ phoneNumber: string;
936
+ blacklistReason?: string | null | undefined;
937
+ totalCalls?: number | null | undefined;
938
+ qualityScore?: number | null | undefined;
939
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
940
+ conversionRate?: number | null | undefined;
941
+ }, {
942
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
943
+ id: string;
944
+ name: string;
945
+ createdAt: string | Date;
946
+ updatedAt: string | Date;
947
+ source: string;
948
+ phoneNumber: string;
949
+ blacklistReason?: string | null | undefined;
950
+ totalCalls?: number | null | undefined;
951
+ qualityScore?: number | null | undefined;
952
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
953
+ conversionRate?: number | null | undefined;
954
+ }>;
955
+ 404: z.ZodObject<{
956
+ statusCode: z.ZodNumber;
957
+ message: z.ZodString;
958
+ code: z.ZodString;
959
+ details: z.ZodOptional<z.ZodUnknown>;
960
+ timestamp: z.ZodString;
961
+ path: z.ZodString;
962
+ correlationId: z.ZodOptional<z.ZodString>;
963
+ }, "strip", z.ZodTypeAny, {
964
+ statusCode: number;
965
+ message: string;
966
+ code: string;
967
+ timestamp: string;
968
+ path: string;
969
+ details?: unknown;
970
+ correlationId?: string | undefined;
971
+ }, {
972
+ statusCode: number;
973
+ message: string;
974
+ code: string;
975
+ timestamp: string;
976
+ path: string;
977
+ details?: unknown;
978
+ correlationId?: string | undefined;
979
+ }>;
980
+ };
981
+ };
982
+ update: {
983
+ metadata: {
984
+ tags: string[];
985
+ openApi: {
986
+ operationId: string;
987
+ };
988
+ };
989
+ pathParams: z.ZodObject<{
990
+ id: z.ZodString;
991
+ }, "strip", z.ZodTypeAny, {
992
+ id: string;
993
+ }, {
994
+ id: string;
995
+ }>;
996
+ summary: "Update a lead";
997
+ method: "PATCH";
998
+ body: z.ZodObject<{
999
+ name: z.ZodOptional<z.ZodString>;
1000
+ phoneNumber: z.ZodOptional<z.ZodString>;
1001
+ status: z.ZodOptional<z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>>;
1002
+ blacklistReason: z.ZodOptional<z.ZodString>;
1003
+ source: z.ZodOptional<z.ZodString>;
1004
+ }, "strip", z.ZodTypeAny, {
1005
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
1006
+ name?: string | undefined;
1007
+ blacklistReason?: string | undefined;
1008
+ source?: string | undefined;
1009
+ phoneNumber?: string | undefined;
1010
+ }, {
1011
+ status?: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED" | undefined;
1012
+ name?: string | undefined;
1013
+ blacklistReason?: string | undefined;
1014
+ source?: string | undefined;
1015
+ phoneNumber?: string | undefined;
1016
+ }>;
1017
+ path: "/v2/leads/:id";
1018
+ responses: {
1019
+ 400: z.ZodObject<{
1020
+ statusCode: z.ZodNumber;
1021
+ message: z.ZodString;
1022
+ code: z.ZodString;
1023
+ details: z.ZodOptional<z.ZodUnknown>;
1024
+ timestamp: z.ZodString;
1025
+ path: z.ZodString;
1026
+ correlationId: z.ZodOptional<z.ZodString>;
1027
+ }, "strip", z.ZodTypeAny, {
1028
+ statusCode: number;
1029
+ message: string;
1030
+ code: string;
1031
+ timestamp: string;
1032
+ path: string;
1033
+ details?: unknown;
1034
+ correlationId?: string | undefined;
1035
+ }, {
1036
+ statusCode: number;
1037
+ message: string;
1038
+ code: string;
1039
+ timestamp: string;
1040
+ path: string;
1041
+ details?: unknown;
1042
+ correlationId?: string | undefined;
1043
+ }>;
1044
+ 401: z.ZodObject<{
1045
+ statusCode: z.ZodNumber;
1046
+ message: z.ZodString;
1047
+ code: z.ZodString;
1048
+ details: z.ZodOptional<z.ZodUnknown>;
1049
+ timestamp: z.ZodString;
1050
+ path: z.ZodString;
1051
+ correlationId: z.ZodOptional<z.ZodString>;
1052
+ }, "strip", z.ZodTypeAny, {
1053
+ statusCode: number;
1054
+ message: string;
1055
+ code: string;
1056
+ timestamp: string;
1057
+ path: string;
1058
+ details?: unknown;
1059
+ correlationId?: string | undefined;
1060
+ }, {
1061
+ statusCode: number;
1062
+ message: string;
1063
+ code: string;
1064
+ timestamp: string;
1065
+ path: string;
1066
+ details?: unknown;
1067
+ correlationId?: string | undefined;
1068
+ }>;
1069
+ 403: z.ZodObject<{
1070
+ statusCode: z.ZodNumber;
1071
+ message: z.ZodString;
1072
+ code: z.ZodString;
1073
+ details: z.ZodOptional<z.ZodUnknown>;
1074
+ timestamp: z.ZodString;
1075
+ path: z.ZodString;
1076
+ correlationId: z.ZodOptional<z.ZodString>;
1077
+ }, "strip", z.ZodTypeAny, {
1078
+ statusCode: number;
1079
+ message: string;
1080
+ code: string;
1081
+ timestamp: string;
1082
+ path: string;
1083
+ details?: unknown;
1084
+ correlationId?: string | undefined;
1085
+ }, {
1086
+ statusCode: number;
1087
+ message: string;
1088
+ code: string;
1089
+ timestamp: string;
1090
+ path: string;
1091
+ details?: unknown;
1092
+ correlationId?: string | undefined;
1093
+ }>;
1094
+ 500: z.ZodObject<{
1095
+ statusCode: z.ZodNumber;
1096
+ message: z.ZodString;
1097
+ code: z.ZodString;
1098
+ details: z.ZodOptional<z.ZodUnknown>;
1099
+ timestamp: z.ZodString;
1100
+ path: z.ZodString;
1101
+ correlationId: z.ZodOptional<z.ZodString>;
1102
+ }, "strip", z.ZodTypeAny, {
1103
+ statusCode: number;
1104
+ message: string;
1105
+ code: string;
1106
+ timestamp: string;
1107
+ path: string;
1108
+ details?: unknown;
1109
+ correlationId?: string | undefined;
1110
+ }, {
1111
+ statusCode: number;
1112
+ message: string;
1113
+ code: string;
1114
+ timestamp: string;
1115
+ path: string;
1116
+ details?: unknown;
1117
+ correlationId?: string | undefined;
1118
+ }>;
1119
+ 200: z.ZodObject<{
1120
+ id: z.ZodString;
1121
+ name: z.ZodString;
1122
+ phoneNumber: z.ZodString;
1123
+ status: z.ZodEnum<["AVAILABLE", "ASSIGNED", "BLACKLISTED"]>;
1124
+ blacklistReason: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1125
+ source: z.ZodString;
1126
+ qualityScore: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1127
+ qualityTier: z.ZodNullable<z.ZodOptional<z.ZodEnum<["high", "medium", "low", "untested"]>>>;
1128
+ conversionRate: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1129
+ totalCalls: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
1130
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
1131
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
1132
+ }, "strip", z.ZodTypeAny, {
1133
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
1134
+ id: string;
1135
+ name: string;
1136
+ createdAt: string;
1137
+ updatedAt: string;
1138
+ source: string;
1139
+ phoneNumber: string;
1140
+ blacklistReason?: string | null | undefined;
1141
+ totalCalls?: number | null | undefined;
1142
+ qualityScore?: number | null | undefined;
1143
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
1144
+ conversionRate?: number | null | undefined;
1145
+ }, {
1146
+ status: "BLACKLISTED" | "AVAILABLE" | "ASSIGNED";
1147
+ id: string;
1148
+ name: string;
1149
+ createdAt: string | Date;
1150
+ updatedAt: string | Date;
1151
+ source: string;
1152
+ phoneNumber: string;
1153
+ blacklistReason?: string | null | undefined;
1154
+ totalCalls?: number | null | undefined;
1155
+ qualityScore?: number | null | undefined;
1156
+ qualityTier?: "high" | "medium" | "low" | "untested" | null | undefined;
1157
+ conversionRate?: number | null | undefined;
1158
+ }>;
1159
+ 404: z.ZodObject<{
1160
+ statusCode: z.ZodNumber;
1161
+ message: z.ZodString;
1162
+ code: z.ZodString;
1163
+ details: z.ZodOptional<z.ZodUnknown>;
1164
+ timestamp: z.ZodString;
1165
+ path: z.ZodString;
1166
+ correlationId: z.ZodOptional<z.ZodString>;
1167
+ }, "strip", z.ZodTypeAny, {
1168
+ statusCode: number;
1169
+ message: string;
1170
+ code: string;
1171
+ timestamp: string;
1172
+ path: string;
1173
+ details?: unknown;
1174
+ correlationId?: string | undefined;
1175
+ }, {
1176
+ statusCode: number;
1177
+ message: string;
1178
+ code: string;
1179
+ timestamp: string;
1180
+ path: string;
1181
+ details?: unknown;
1182
+ correlationId?: string | undefined;
1183
+ }>;
1184
+ 409: z.ZodObject<{
1185
+ statusCode: z.ZodNumber;
1186
+ message: z.ZodString;
1187
+ code: z.ZodString;
1188
+ details: z.ZodOptional<z.ZodUnknown>;
1189
+ timestamp: z.ZodString;
1190
+ path: z.ZodString;
1191
+ correlationId: z.ZodOptional<z.ZodString>;
1192
+ }, "strip", z.ZodTypeAny, {
1193
+ statusCode: number;
1194
+ message: string;
1195
+ code: string;
1196
+ timestamp: string;
1197
+ path: string;
1198
+ details?: unknown;
1199
+ correlationId?: string | undefined;
1200
+ }, {
1201
+ statusCode: number;
1202
+ message: string;
1203
+ code: string;
1204
+ timestamp: string;
1205
+ path: string;
1206
+ details?: unknown;
1207
+ correlationId?: string | undefined;
1208
+ }>;
1209
+ };
1210
+ };
1211
+ remove: {
1212
+ metadata: {
1213
+ tags: string[];
1214
+ openApi: {
1215
+ operationId: string;
1216
+ };
1217
+ };
1218
+ pathParams: z.ZodObject<{
1219
+ id: z.ZodString;
1220
+ }, "strip", z.ZodTypeAny, {
1221
+ id: string;
1222
+ }, {
1223
+ id: string;
1224
+ }>;
1225
+ summary: "Delete a lead";
1226
+ method: "DELETE";
1227
+ body: typeof import("@ts-rest/core").ContractNoBody;
1228
+ path: "/v2/leads/:id";
1229
+ responses: {
1230
+ 400: z.ZodObject<{
1231
+ statusCode: z.ZodNumber;
1232
+ message: z.ZodString;
1233
+ code: z.ZodString;
1234
+ details: z.ZodOptional<z.ZodUnknown>;
1235
+ timestamp: z.ZodString;
1236
+ path: z.ZodString;
1237
+ correlationId: z.ZodOptional<z.ZodString>;
1238
+ }, "strip", z.ZodTypeAny, {
1239
+ statusCode: number;
1240
+ message: string;
1241
+ code: string;
1242
+ timestamp: string;
1243
+ path: string;
1244
+ details?: unknown;
1245
+ correlationId?: string | undefined;
1246
+ }, {
1247
+ statusCode: number;
1248
+ message: string;
1249
+ code: string;
1250
+ timestamp: string;
1251
+ path: string;
1252
+ details?: unknown;
1253
+ correlationId?: string | undefined;
1254
+ }>;
1255
+ 401: z.ZodObject<{
1256
+ statusCode: z.ZodNumber;
1257
+ message: z.ZodString;
1258
+ code: z.ZodString;
1259
+ details: z.ZodOptional<z.ZodUnknown>;
1260
+ timestamp: z.ZodString;
1261
+ path: z.ZodString;
1262
+ correlationId: z.ZodOptional<z.ZodString>;
1263
+ }, "strip", z.ZodTypeAny, {
1264
+ statusCode: number;
1265
+ message: string;
1266
+ code: string;
1267
+ timestamp: string;
1268
+ path: string;
1269
+ details?: unknown;
1270
+ correlationId?: string | undefined;
1271
+ }, {
1272
+ statusCode: number;
1273
+ message: string;
1274
+ code: string;
1275
+ timestamp: string;
1276
+ path: string;
1277
+ details?: unknown;
1278
+ correlationId?: string | undefined;
1279
+ }>;
1280
+ 403: z.ZodObject<{
1281
+ statusCode: z.ZodNumber;
1282
+ message: z.ZodString;
1283
+ code: z.ZodString;
1284
+ details: z.ZodOptional<z.ZodUnknown>;
1285
+ timestamp: z.ZodString;
1286
+ path: z.ZodString;
1287
+ correlationId: z.ZodOptional<z.ZodString>;
1288
+ }, "strip", z.ZodTypeAny, {
1289
+ statusCode: number;
1290
+ message: string;
1291
+ code: string;
1292
+ timestamp: string;
1293
+ path: string;
1294
+ details?: unknown;
1295
+ correlationId?: string | undefined;
1296
+ }, {
1297
+ statusCode: number;
1298
+ message: string;
1299
+ code: string;
1300
+ timestamp: string;
1301
+ path: string;
1302
+ details?: unknown;
1303
+ correlationId?: string | undefined;
1304
+ }>;
1305
+ 500: z.ZodObject<{
1306
+ statusCode: z.ZodNumber;
1307
+ message: z.ZodString;
1308
+ code: z.ZodString;
1309
+ details: z.ZodOptional<z.ZodUnknown>;
1310
+ timestamp: z.ZodString;
1311
+ path: z.ZodString;
1312
+ correlationId: z.ZodOptional<z.ZodString>;
1313
+ }, "strip", z.ZodTypeAny, {
1314
+ statusCode: number;
1315
+ message: string;
1316
+ code: string;
1317
+ timestamp: string;
1318
+ path: string;
1319
+ details?: unknown;
1320
+ correlationId?: string | undefined;
1321
+ }, {
1322
+ statusCode: number;
1323
+ message: string;
1324
+ code: string;
1325
+ timestamp: string;
1326
+ path: string;
1327
+ details?: unknown;
1328
+ correlationId?: string | undefined;
1329
+ }>;
1330
+ 204: z.ZodUndefined;
1331
+ 404: z.ZodObject<{
1332
+ statusCode: z.ZodNumber;
1333
+ message: z.ZodString;
1334
+ code: z.ZodString;
1335
+ details: z.ZodOptional<z.ZodUnknown>;
1336
+ timestamp: z.ZodString;
1337
+ path: z.ZodString;
1338
+ correlationId: z.ZodOptional<z.ZodString>;
1339
+ }, "strip", z.ZodTypeAny, {
1340
+ statusCode: number;
1341
+ message: string;
1342
+ code: string;
1343
+ timestamp: string;
1344
+ path: string;
1345
+ details?: unknown;
1346
+ correlationId?: string | undefined;
1347
+ }, {
1348
+ statusCode: number;
1349
+ message: string;
1350
+ code: string;
1351
+ timestamp: string;
1352
+ path: string;
1353
+ details?: unknown;
1354
+ correlationId?: string | undefined;
1355
+ }>;
1356
+ };
1357
+ };
1358
+ recordCall: {
1359
+ metadata: {
1360
+ tags: string[];
1361
+ openApi: {
1362
+ operationId: string;
1363
+ };
1364
+ };
1365
+ pathParams: z.ZodObject<{
1366
+ id: z.ZodString;
1367
+ }, "strip", z.ZodTypeAny, {
1368
+ id: string;
1369
+ }, {
1370
+ id: string;
1371
+ }>;
1372
+ summary: "Record a call to a lead";
1373
+ method: "POST";
1374
+ body: z.ZodObject<{
1375
+ assignmentId: z.ZodString;
1376
+ rating: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallRating>;
1377
+ notes: z.ZodOptional<z.ZodString>;
1378
+ callType: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallType>;
1379
+ }, "strip", z.ZodTypeAny, {
1380
+ assignmentId: string;
1381
+ rating: import("../call-history/call-history.contract").CallRating;
1382
+ callType: import("../call-history/call-history.contract").CallType;
1383
+ notes?: string | undefined;
1384
+ }, {
1385
+ assignmentId: string;
1386
+ rating: import("../call-history/call-history.contract").CallRating;
1387
+ callType: import("../call-history/call-history.contract").CallType;
1388
+ notes?: string | undefined;
1389
+ }>;
1390
+ path: "/v2/leads/:id/call";
1391
+ responses: {
1392
+ 400: z.ZodObject<{
1393
+ statusCode: z.ZodNumber;
1394
+ message: z.ZodString;
1395
+ code: z.ZodString;
1396
+ details: z.ZodOptional<z.ZodUnknown>;
1397
+ timestamp: z.ZodString;
1398
+ path: z.ZodString;
1399
+ correlationId: z.ZodOptional<z.ZodString>;
1400
+ }, "strip", z.ZodTypeAny, {
1401
+ statusCode: number;
1402
+ message: string;
1403
+ code: string;
1404
+ timestamp: string;
1405
+ path: string;
1406
+ details?: unknown;
1407
+ correlationId?: string | undefined;
1408
+ }, {
1409
+ statusCode: number;
1410
+ message: string;
1411
+ code: string;
1412
+ timestamp: string;
1413
+ path: string;
1414
+ details?: unknown;
1415
+ correlationId?: string | undefined;
1416
+ }>;
1417
+ 401: z.ZodObject<{
1418
+ statusCode: z.ZodNumber;
1419
+ message: z.ZodString;
1420
+ code: z.ZodString;
1421
+ details: z.ZodOptional<z.ZodUnknown>;
1422
+ timestamp: z.ZodString;
1423
+ path: z.ZodString;
1424
+ correlationId: z.ZodOptional<z.ZodString>;
1425
+ }, "strip", z.ZodTypeAny, {
1426
+ statusCode: number;
1427
+ message: string;
1428
+ code: string;
1429
+ timestamp: string;
1430
+ path: string;
1431
+ details?: unknown;
1432
+ correlationId?: string | undefined;
1433
+ }, {
1434
+ statusCode: number;
1435
+ message: string;
1436
+ code: string;
1437
+ timestamp: string;
1438
+ path: string;
1439
+ details?: unknown;
1440
+ correlationId?: string | undefined;
1441
+ }>;
1442
+ 403: z.ZodObject<{
1443
+ statusCode: z.ZodNumber;
1444
+ message: z.ZodString;
1445
+ code: z.ZodString;
1446
+ details: z.ZodOptional<z.ZodUnknown>;
1447
+ timestamp: z.ZodString;
1448
+ path: z.ZodString;
1449
+ correlationId: z.ZodOptional<z.ZodString>;
1450
+ }, "strip", z.ZodTypeAny, {
1451
+ statusCode: number;
1452
+ message: string;
1453
+ code: string;
1454
+ timestamp: string;
1455
+ path: string;
1456
+ details?: unknown;
1457
+ correlationId?: string | undefined;
1458
+ }, {
1459
+ statusCode: number;
1460
+ message: string;
1461
+ code: string;
1462
+ timestamp: string;
1463
+ path: string;
1464
+ details?: unknown;
1465
+ correlationId?: string | undefined;
1466
+ }>;
1467
+ 500: z.ZodObject<{
1468
+ statusCode: z.ZodNumber;
1469
+ message: z.ZodString;
1470
+ code: z.ZodString;
1471
+ details: z.ZodOptional<z.ZodUnknown>;
1472
+ timestamp: z.ZodString;
1473
+ path: z.ZodString;
1474
+ correlationId: z.ZodOptional<z.ZodString>;
1475
+ }, "strip", z.ZodTypeAny, {
1476
+ statusCode: number;
1477
+ message: string;
1478
+ code: string;
1479
+ timestamp: string;
1480
+ path: string;
1481
+ details?: unknown;
1482
+ correlationId?: string | undefined;
1483
+ }, {
1484
+ statusCode: number;
1485
+ message: string;
1486
+ code: string;
1487
+ timestamp: string;
1488
+ path: string;
1489
+ details?: unknown;
1490
+ correlationId?: string | undefined;
1491
+ }>;
1492
+ 201: z.ZodObject<{
1493
+ id: z.ZodString;
1494
+ assignmentId: z.ZodString;
1495
+ leadId: z.ZodString;
1496
+ agentId: z.ZodString;
1497
+ callDate: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
1498
+ callType: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallType>;
1499
+ rating: z.ZodNativeEnum<typeof import("../call-history/call-history.contract").CallRating>;
1500
+ ratingWeight: z.ZodNumber;
1501
+ notes: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1502
+ createdAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
1503
+ updatedAt: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodDate]>, string, string | Date>;
1504
+ }, "strip", z.ZodTypeAny, {
1505
+ id: string;
1506
+ createdAt: string;
1507
+ updatedAt: string;
1508
+ agentId: string;
1509
+ assignmentId: string;
1510
+ rating: import("../call-history/call-history.contract").CallRating;
1511
+ callType: import("../call-history/call-history.contract").CallType;
1512
+ leadId: string;
1513
+ callDate: string;
1514
+ ratingWeight: number;
1515
+ notes?: string | null | undefined;
1516
+ }, {
1517
+ id: string;
1518
+ createdAt: string | Date;
1519
+ updatedAt: string | Date;
1520
+ agentId: string;
1521
+ assignmentId: string;
1522
+ rating: import("../call-history/call-history.contract").CallRating;
1523
+ callType: import("../call-history/call-history.contract").CallType;
1524
+ leadId: string;
1525
+ callDate: string | Date;
1526
+ ratingWeight: number;
1527
+ notes?: string | null | undefined;
1528
+ }>;
1529
+ };
1530
+ };
1531
+ getQualityDashboard: {
1532
+ metadata: {
1533
+ tags: string[];
1534
+ openApi: {
1535
+ operationId: string;
1536
+ };
1537
+ };
1538
+ query: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
1539
+ summary: "Get lead quality analytics dashboard";
1540
+ method: "GET";
1541
+ path: "/v2/leads/analytics/quality-dashboard";
1542
+ responses: {
1543
+ 400: z.ZodObject<{
1544
+ statusCode: z.ZodNumber;
1545
+ message: z.ZodString;
1546
+ code: z.ZodString;
1547
+ details: z.ZodOptional<z.ZodUnknown>;
1548
+ timestamp: z.ZodString;
1549
+ path: z.ZodString;
1550
+ correlationId: z.ZodOptional<z.ZodString>;
1551
+ }, "strip", z.ZodTypeAny, {
1552
+ statusCode: number;
1553
+ message: string;
1554
+ code: string;
1555
+ timestamp: string;
1556
+ path: string;
1557
+ details?: unknown;
1558
+ correlationId?: string | undefined;
1559
+ }, {
1560
+ statusCode: number;
1561
+ message: string;
1562
+ code: string;
1563
+ timestamp: string;
1564
+ path: string;
1565
+ details?: unknown;
1566
+ correlationId?: string | undefined;
1567
+ }>;
1568
+ 401: z.ZodObject<{
1569
+ statusCode: z.ZodNumber;
1570
+ message: z.ZodString;
1571
+ code: z.ZodString;
1572
+ details: z.ZodOptional<z.ZodUnknown>;
1573
+ timestamp: z.ZodString;
1574
+ path: z.ZodString;
1575
+ correlationId: z.ZodOptional<z.ZodString>;
1576
+ }, "strip", z.ZodTypeAny, {
1577
+ statusCode: number;
1578
+ message: string;
1579
+ code: string;
1580
+ timestamp: string;
1581
+ path: string;
1582
+ details?: unknown;
1583
+ correlationId?: string | undefined;
1584
+ }, {
1585
+ statusCode: number;
1586
+ message: string;
1587
+ code: string;
1588
+ timestamp: string;
1589
+ path: string;
1590
+ details?: unknown;
1591
+ correlationId?: string | undefined;
1592
+ }>;
1593
+ 403: z.ZodObject<{
1594
+ statusCode: z.ZodNumber;
1595
+ message: z.ZodString;
1596
+ code: z.ZodString;
1597
+ details: z.ZodOptional<z.ZodUnknown>;
1598
+ timestamp: z.ZodString;
1599
+ path: z.ZodString;
1600
+ correlationId: z.ZodOptional<z.ZodString>;
1601
+ }, "strip", z.ZodTypeAny, {
1602
+ statusCode: number;
1603
+ message: string;
1604
+ code: string;
1605
+ timestamp: string;
1606
+ path: string;
1607
+ details?: unknown;
1608
+ correlationId?: string | undefined;
1609
+ }, {
1610
+ statusCode: number;
1611
+ message: string;
1612
+ code: string;
1613
+ timestamp: string;
1614
+ path: string;
1615
+ details?: unknown;
1616
+ correlationId?: string | undefined;
1617
+ }>;
1618
+ 500: z.ZodObject<{
1619
+ statusCode: z.ZodNumber;
1620
+ message: z.ZodString;
1621
+ code: z.ZodString;
1622
+ details: z.ZodOptional<z.ZodUnknown>;
1623
+ timestamp: z.ZodString;
1624
+ path: z.ZodString;
1625
+ correlationId: z.ZodOptional<z.ZodString>;
1626
+ }, "strip", z.ZodTypeAny, {
1627
+ statusCode: number;
1628
+ message: string;
1629
+ code: string;
1630
+ timestamp: string;
1631
+ path: string;
1632
+ details?: unknown;
1633
+ correlationId?: string | undefined;
1634
+ }, {
1635
+ statusCode: number;
1636
+ message: string;
1637
+ code: string;
1638
+ timestamp: string;
1639
+ path: string;
1640
+ details?: unknown;
1641
+ correlationId?: string | undefined;
1642
+ }>;
1643
+ 200: z.ZodObject<{
1644
+ totalLeads: z.ZodNumber;
1645
+ avgQualityScore: z.ZodNumber;
1646
+ avgConversionRate: z.ZodNumber;
1647
+ avgCallsPerLead: z.ZodNumber;
1648
+ tierDistribution: z.ZodObject<{
1649
+ high: z.ZodNumber;
1650
+ medium: z.ZodNumber;
1651
+ low: z.ZodNumber;
1652
+ untested: z.ZodNumber;
1653
+ }, "strip", z.ZodTypeAny, {
1654
+ high: number;
1655
+ medium: number;
1656
+ low: number;
1657
+ untested: number;
1658
+ }, {
1659
+ high: number;
1660
+ medium: number;
1661
+ low: number;
1662
+ untested: number;
1663
+ }>;
1664
+ }, "strip", z.ZodTypeAny, {
1665
+ totalLeads: number;
1666
+ avgQualityScore: number;
1667
+ avgConversionRate: number;
1668
+ avgCallsPerLead: number;
1669
+ tierDistribution: {
1670
+ high: number;
1671
+ medium: number;
1672
+ low: number;
1673
+ untested: number;
1674
+ };
1675
+ }, {
1676
+ totalLeads: number;
1677
+ avgQualityScore: number;
1678
+ avgConversionRate: number;
1679
+ avgCallsPerLead: number;
1680
+ tierDistribution: {
1681
+ high: number;
1682
+ medium: number;
1683
+ low: number;
1684
+ untested: number;
1685
+ };
1686
+ }>;
1687
+ };
1688
+ };
1689
+ };
1690
+ //# sourceMappingURL=leads.contract.d.ts.map