telegram-jobs-contract 1.0.0

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 (47) hide show
  1. package/README.md +73 -0
  2. package/dist/contracts/bundles.contract.d.ts +183 -0
  3. package/dist/contracts/bundles.contract.d.ts.map +1 -0
  4. package/dist/contracts/bundles.contract.js +29 -0
  5. package/dist/contracts/channels.contract.d.ts +947 -0
  6. package/dist/contracts/channels.contract.d.ts.map +1 -0
  7. package/dist/contracts/channels.contract.js +114 -0
  8. package/dist/contracts/jobs.contract.d.ts +939 -0
  9. package/dist/contracts/jobs.contract.d.ts.map +1 -0
  10. package/dist/contracts/jobs.contract.js +69 -0
  11. package/dist/contracts/notifications.contract.d.ts +725 -0
  12. package/dist/contracts/notifications.contract.d.ts.map +1 -0
  13. package/dist/contracts/notifications.contract.js +65 -0
  14. package/dist/contracts/resume.contract.d.ts +87 -0
  15. package/dist/contracts/resume.contract.d.ts.map +1 -0
  16. package/dist/contracts/resume.contract.js +26 -0
  17. package/dist/contracts/sniper.contract.d.ts +108 -0
  18. package/dist/contracts/sniper.contract.d.ts.map +1 -0
  19. package/dist/contracts/sniper.contract.js +27 -0
  20. package/dist/contracts/stats.contract.d.ts +148 -0
  21. package/dist/contracts/stats.contract.d.ts.map +1 -0
  22. package/dist/contracts/stats.contract.js +41 -0
  23. package/dist/contracts/user.contract.d.ts +362 -0
  24. package/dist/contracts/user.contract.d.ts.map +1 -0
  25. package/dist/contracts/user.contract.js +31 -0
  26. package/dist/index.d.ts +3504 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +58 -0
  29. package/dist/schemas/bundles.d.ts +33 -0
  30. package/dist/schemas/bundles.d.ts.map +1 -0
  31. package/dist/schemas/bundles.js +15 -0
  32. package/dist/schemas/channels.d.ts +134 -0
  33. package/dist/schemas/channels.d.ts.map +1 -0
  34. package/dist/schemas/channels.js +25 -0
  35. package/dist/schemas/common.d.ts +12 -0
  36. package/dist/schemas/common.d.ts.map +1 -0
  37. package/dist/schemas/common.js +8 -0
  38. package/dist/schemas/errors.d.ts +29 -0
  39. package/dist/schemas/errors.d.ts.map +1 -0
  40. package/dist/schemas/errors.js +17 -0
  41. package/dist/schemas/jobs.d.ts +563 -0
  42. package/dist/schemas/jobs.d.ts.map +1 -0
  43. package/dist/schemas/jobs.js +64 -0
  44. package/dist/schemas/user.d.ts +262 -0
  45. package/dist/schemas/user.d.ts.map +1 -0
  46. package/dist/schemas/user.js +36 -0
  47. package/package.json +40 -0
@@ -0,0 +1,563 @@
1
+ import { z } from 'zod';
2
+ export declare const ContactInfoSchema: z.ZodObject<{
3
+ telegram: z.ZodOptional<z.ZodString>;
4
+ email: z.ZodOptional<z.ZodString>;
5
+ applicationUrl: z.ZodOptional<z.ZodString>;
6
+ other: z.ZodOptional<z.ZodString>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ telegram?: string | undefined;
9
+ email?: string | undefined;
10
+ applicationUrl?: string | undefined;
11
+ other?: string | undefined;
12
+ }, {
13
+ telegram?: string | undefined;
14
+ email?: string | undefined;
15
+ applicationUrl?: string | undefined;
16
+ other?: string | undefined;
17
+ }>;
18
+ export declare const ParsedJobDataSchema: z.ZodObject<{
19
+ jobTitle: z.ZodOptional<z.ZodString>;
20
+ normalizedJobTitle: z.ZodOptional<z.ZodString>;
21
+ company: z.ZodOptional<z.ZodString>;
22
+ techStack: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
23
+ salary: z.ZodOptional<z.ZodString>;
24
+ contactInfo: z.ZodOptional<z.ZodObject<{
25
+ telegram: z.ZodOptional<z.ZodString>;
26
+ email: z.ZodOptional<z.ZodString>;
27
+ applicationUrl: z.ZodOptional<z.ZodString>;
28
+ other: z.ZodOptional<z.ZodString>;
29
+ }, "strip", z.ZodTypeAny, {
30
+ telegram?: string | undefined;
31
+ email?: string | undefined;
32
+ applicationUrl?: string | undefined;
33
+ other?: string | undefined;
34
+ }, {
35
+ telegram?: string | undefined;
36
+ email?: string | undefined;
37
+ applicationUrl?: string | undefined;
38
+ other?: string | undefined;
39
+ }>>;
40
+ isRemote: z.ZodOptional<z.ZodBoolean>;
41
+ level: z.ZodOptional<z.ZodString>;
42
+ employmentType: z.ZodOptional<z.ZodString>;
43
+ location: z.ZodOptional<z.ZodString>;
44
+ candidateLocation: z.ZodOptional<z.ZodString>;
45
+ responsibilities: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
46
+ requiredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
47
+ preferredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
48
+ benefits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
49
+ description: z.ZodOptional<z.ZodString>;
50
+ experienceYears: z.ZodOptional<z.ZodNumber>;
51
+ }, "strip", z.ZodTypeAny, {
52
+ jobTitle?: string | undefined;
53
+ normalizedJobTitle?: string | undefined;
54
+ company?: string | undefined;
55
+ techStack?: string[] | undefined;
56
+ salary?: string | undefined;
57
+ contactInfo?: {
58
+ telegram?: string | undefined;
59
+ email?: string | undefined;
60
+ applicationUrl?: string | undefined;
61
+ other?: string | undefined;
62
+ } | undefined;
63
+ isRemote?: boolean | undefined;
64
+ level?: string | undefined;
65
+ employmentType?: string | undefined;
66
+ location?: string | undefined;
67
+ candidateLocation?: string | undefined;
68
+ responsibilities?: string[] | undefined;
69
+ requiredQualifications?: string[] | undefined;
70
+ preferredQualifications?: string[] | undefined;
71
+ benefits?: string[] | undefined;
72
+ description?: string | undefined;
73
+ experienceYears?: number | undefined;
74
+ }, {
75
+ jobTitle?: string | undefined;
76
+ normalizedJobTitle?: string | undefined;
77
+ company?: string | undefined;
78
+ techStack?: string[] | undefined;
79
+ salary?: string | undefined;
80
+ contactInfo?: {
81
+ telegram?: string | undefined;
82
+ email?: string | undefined;
83
+ applicationUrl?: string | undefined;
84
+ other?: string | undefined;
85
+ } | undefined;
86
+ isRemote?: boolean | undefined;
87
+ level?: string | undefined;
88
+ employmentType?: string | undefined;
89
+ location?: string | undefined;
90
+ candidateLocation?: string | undefined;
91
+ responsibilities?: string[] | undefined;
92
+ requiredQualifications?: string[] | undefined;
93
+ preferredQualifications?: string[] | undefined;
94
+ benefits?: string[] | undefined;
95
+ description?: string | undefined;
96
+ experienceYears?: number | undefined;
97
+ }>;
98
+ export declare const JobSchema: z.ZodObject<{
99
+ id: z.ZodString;
100
+ telegramMessageId: z.ZodString;
101
+ channelId: z.ZodString;
102
+ channelUsername: z.ZodOptional<z.ZodString>;
103
+ senderUserId: z.ZodOptional<z.ZodString>;
104
+ senderUsername: z.ZodOptional<z.ZodString>;
105
+ rawText: z.ZodString;
106
+ parsedData: z.ZodOptional<z.ZodObject<{
107
+ jobTitle: z.ZodOptional<z.ZodString>;
108
+ normalizedJobTitle: z.ZodOptional<z.ZodString>;
109
+ company: z.ZodOptional<z.ZodString>;
110
+ techStack: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
111
+ salary: z.ZodOptional<z.ZodString>;
112
+ contactInfo: z.ZodOptional<z.ZodObject<{
113
+ telegram: z.ZodOptional<z.ZodString>;
114
+ email: z.ZodOptional<z.ZodString>;
115
+ applicationUrl: z.ZodOptional<z.ZodString>;
116
+ other: z.ZodOptional<z.ZodString>;
117
+ }, "strip", z.ZodTypeAny, {
118
+ telegram?: string | undefined;
119
+ email?: string | undefined;
120
+ applicationUrl?: string | undefined;
121
+ other?: string | undefined;
122
+ }, {
123
+ telegram?: string | undefined;
124
+ email?: string | undefined;
125
+ applicationUrl?: string | undefined;
126
+ other?: string | undefined;
127
+ }>>;
128
+ isRemote: z.ZodOptional<z.ZodBoolean>;
129
+ level: z.ZodOptional<z.ZodString>;
130
+ employmentType: z.ZodOptional<z.ZodString>;
131
+ location: z.ZodOptional<z.ZodString>;
132
+ candidateLocation: z.ZodOptional<z.ZodString>;
133
+ responsibilities: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
134
+ requiredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
135
+ preferredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
136
+ benefits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
137
+ description: z.ZodOptional<z.ZodString>;
138
+ experienceYears: z.ZodOptional<z.ZodNumber>;
139
+ }, "strip", z.ZodTypeAny, {
140
+ jobTitle?: string | undefined;
141
+ normalizedJobTitle?: string | undefined;
142
+ company?: string | undefined;
143
+ techStack?: string[] | undefined;
144
+ salary?: string | undefined;
145
+ contactInfo?: {
146
+ telegram?: string | undefined;
147
+ email?: string | undefined;
148
+ applicationUrl?: string | undefined;
149
+ other?: string | undefined;
150
+ } | undefined;
151
+ isRemote?: boolean | undefined;
152
+ level?: string | undefined;
153
+ employmentType?: string | undefined;
154
+ location?: string | undefined;
155
+ candidateLocation?: string | undefined;
156
+ responsibilities?: string[] | undefined;
157
+ requiredQualifications?: string[] | undefined;
158
+ preferredQualifications?: string[] | undefined;
159
+ benefits?: string[] | undefined;
160
+ description?: string | undefined;
161
+ experienceYears?: number | undefined;
162
+ }, {
163
+ jobTitle?: string | undefined;
164
+ normalizedJobTitle?: string | undefined;
165
+ company?: string | undefined;
166
+ techStack?: string[] | undefined;
167
+ salary?: string | undefined;
168
+ contactInfo?: {
169
+ telegram?: string | undefined;
170
+ email?: string | undefined;
171
+ applicationUrl?: string | undefined;
172
+ other?: string | undefined;
173
+ } | undefined;
174
+ isRemote?: boolean | undefined;
175
+ level?: string | undefined;
176
+ employmentType?: string | undefined;
177
+ location?: string | undefined;
178
+ candidateLocation?: string | undefined;
179
+ responsibilities?: string[] | undefined;
180
+ requiredQualifications?: string[] | undefined;
181
+ preferredQualifications?: string[] | undefined;
182
+ benefits?: string[] | undefined;
183
+ description?: string | undefined;
184
+ experienceYears?: number | undefined;
185
+ }>>;
186
+ status: z.ZodOptional<z.ZodEnum<["pending_parse", "parsed", "failed"]>>;
187
+ telegramMessageDate: z.ZodOptional<z.ZodString>;
188
+ createdAt: z.ZodString;
189
+ updatedAt: z.ZodOptional<z.ZodString>;
190
+ isVisited: z.ZodOptional<z.ZodBoolean>;
191
+ }, "strip", z.ZodTypeAny, {
192
+ id: string;
193
+ telegramMessageId: string;
194
+ channelId: string;
195
+ rawText: string;
196
+ createdAt: string;
197
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
198
+ channelUsername?: string | undefined;
199
+ senderUserId?: string | undefined;
200
+ senderUsername?: string | undefined;
201
+ parsedData?: {
202
+ jobTitle?: string | undefined;
203
+ normalizedJobTitle?: string | undefined;
204
+ company?: string | undefined;
205
+ techStack?: string[] | undefined;
206
+ salary?: string | undefined;
207
+ contactInfo?: {
208
+ telegram?: string | undefined;
209
+ email?: string | undefined;
210
+ applicationUrl?: string | undefined;
211
+ other?: string | undefined;
212
+ } | undefined;
213
+ isRemote?: boolean | undefined;
214
+ level?: string | undefined;
215
+ employmentType?: string | undefined;
216
+ location?: string | undefined;
217
+ candidateLocation?: string | undefined;
218
+ responsibilities?: string[] | undefined;
219
+ requiredQualifications?: string[] | undefined;
220
+ preferredQualifications?: string[] | undefined;
221
+ benefits?: string[] | undefined;
222
+ description?: string | undefined;
223
+ experienceYears?: number | undefined;
224
+ } | undefined;
225
+ telegramMessageDate?: string | undefined;
226
+ updatedAt?: string | undefined;
227
+ isVisited?: boolean | undefined;
228
+ }, {
229
+ id: string;
230
+ telegramMessageId: string;
231
+ channelId: string;
232
+ rawText: string;
233
+ createdAt: string;
234
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
235
+ channelUsername?: string | undefined;
236
+ senderUserId?: string | undefined;
237
+ senderUsername?: string | undefined;
238
+ parsedData?: {
239
+ jobTitle?: string | undefined;
240
+ normalizedJobTitle?: string | undefined;
241
+ company?: string | undefined;
242
+ techStack?: string[] | undefined;
243
+ salary?: string | undefined;
244
+ contactInfo?: {
245
+ telegram?: string | undefined;
246
+ email?: string | undefined;
247
+ applicationUrl?: string | undefined;
248
+ other?: string | undefined;
249
+ } | undefined;
250
+ isRemote?: boolean | undefined;
251
+ level?: string | undefined;
252
+ employmentType?: string | undefined;
253
+ location?: string | undefined;
254
+ candidateLocation?: string | undefined;
255
+ responsibilities?: string[] | undefined;
256
+ requiredQualifications?: string[] | undefined;
257
+ preferredQualifications?: string[] | undefined;
258
+ benefits?: string[] | undefined;
259
+ description?: string | undefined;
260
+ experienceYears?: number | undefined;
261
+ } | undefined;
262
+ telegramMessageDate?: string | undefined;
263
+ updatedAt?: string | undefined;
264
+ isVisited?: boolean | undefined;
265
+ }>;
266
+ export declare const JobFiltersSchema: z.ZodObject<{
267
+ stack: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
268
+ level: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
269
+ jobFunction: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
270
+ locationType: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
271
+ excludedTitles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
272
+ muteKeywords: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
273
+ experienceYears: z.ZodOptional<z.ZodObject<{
274
+ min: z.ZodOptional<z.ZodNumber>;
275
+ max: z.ZodOptional<z.ZodNumber>;
276
+ }, "strip", z.ZodTypeAny, {
277
+ min?: number | undefined;
278
+ max?: number | undefined;
279
+ }, {
280
+ min?: number | undefined;
281
+ max?: number | undefined;
282
+ }>>;
283
+ }, "strip", z.ZodTypeAny, {
284
+ level?: string[] | undefined;
285
+ experienceYears?: {
286
+ min?: number | undefined;
287
+ max?: number | undefined;
288
+ } | undefined;
289
+ stack?: string[] | undefined;
290
+ jobFunction?: string[] | undefined;
291
+ locationType?: string[] | undefined;
292
+ excludedTitles?: string[] | undefined;
293
+ muteKeywords?: string[] | undefined;
294
+ }, {
295
+ level?: string[] | undefined;
296
+ experienceYears?: {
297
+ min?: number | undefined;
298
+ max?: number | undefined;
299
+ } | undefined;
300
+ stack?: string[] | undefined;
301
+ jobFunction?: string[] | undefined;
302
+ locationType?: string[] | undefined;
303
+ excludedTitles?: string[] | undefined;
304
+ muteKeywords?: string[] | undefined;
305
+ }>;
306
+ export declare const JobsResponseSchema: z.ZodObject<{
307
+ jobs: z.ZodArray<z.ZodObject<{
308
+ id: z.ZodString;
309
+ telegramMessageId: z.ZodString;
310
+ channelId: z.ZodString;
311
+ channelUsername: z.ZodOptional<z.ZodString>;
312
+ senderUserId: z.ZodOptional<z.ZodString>;
313
+ senderUsername: z.ZodOptional<z.ZodString>;
314
+ rawText: z.ZodString;
315
+ parsedData: z.ZodOptional<z.ZodObject<{
316
+ jobTitle: z.ZodOptional<z.ZodString>;
317
+ normalizedJobTitle: z.ZodOptional<z.ZodString>;
318
+ company: z.ZodOptional<z.ZodString>;
319
+ techStack: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
320
+ salary: z.ZodOptional<z.ZodString>;
321
+ contactInfo: z.ZodOptional<z.ZodObject<{
322
+ telegram: z.ZodOptional<z.ZodString>;
323
+ email: z.ZodOptional<z.ZodString>;
324
+ applicationUrl: z.ZodOptional<z.ZodString>;
325
+ other: z.ZodOptional<z.ZodString>;
326
+ }, "strip", z.ZodTypeAny, {
327
+ telegram?: string | undefined;
328
+ email?: string | undefined;
329
+ applicationUrl?: string | undefined;
330
+ other?: string | undefined;
331
+ }, {
332
+ telegram?: string | undefined;
333
+ email?: string | undefined;
334
+ applicationUrl?: string | undefined;
335
+ other?: string | undefined;
336
+ }>>;
337
+ isRemote: z.ZodOptional<z.ZodBoolean>;
338
+ level: z.ZodOptional<z.ZodString>;
339
+ employmentType: z.ZodOptional<z.ZodString>;
340
+ location: z.ZodOptional<z.ZodString>;
341
+ candidateLocation: z.ZodOptional<z.ZodString>;
342
+ responsibilities: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
343
+ requiredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
344
+ preferredQualifications: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
345
+ benefits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
346
+ description: z.ZodOptional<z.ZodString>;
347
+ experienceYears: z.ZodOptional<z.ZodNumber>;
348
+ }, "strip", z.ZodTypeAny, {
349
+ jobTitle?: string | undefined;
350
+ normalizedJobTitle?: string | undefined;
351
+ company?: string | undefined;
352
+ techStack?: string[] | undefined;
353
+ salary?: string | undefined;
354
+ contactInfo?: {
355
+ telegram?: string | undefined;
356
+ email?: string | undefined;
357
+ applicationUrl?: string | undefined;
358
+ other?: string | undefined;
359
+ } | undefined;
360
+ isRemote?: boolean | undefined;
361
+ level?: string | undefined;
362
+ employmentType?: string | undefined;
363
+ location?: string | undefined;
364
+ candidateLocation?: string | undefined;
365
+ responsibilities?: string[] | undefined;
366
+ requiredQualifications?: string[] | undefined;
367
+ preferredQualifications?: string[] | undefined;
368
+ benefits?: string[] | undefined;
369
+ description?: string | undefined;
370
+ experienceYears?: number | undefined;
371
+ }, {
372
+ jobTitle?: string | undefined;
373
+ normalizedJobTitle?: string | undefined;
374
+ company?: string | undefined;
375
+ techStack?: string[] | undefined;
376
+ salary?: string | undefined;
377
+ contactInfo?: {
378
+ telegram?: string | undefined;
379
+ email?: string | undefined;
380
+ applicationUrl?: string | undefined;
381
+ other?: string | undefined;
382
+ } | undefined;
383
+ isRemote?: boolean | undefined;
384
+ level?: string | undefined;
385
+ employmentType?: string | undefined;
386
+ location?: string | undefined;
387
+ candidateLocation?: string | undefined;
388
+ responsibilities?: string[] | undefined;
389
+ requiredQualifications?: string[] | undefined;
390
+ preferredQualifications?: string[] | undefined;
391
+ benefits?: string[] | undefined;
392
+ description?: string | undefined;
393
+ experienceYears?: number | undefined;
394
+ }>>;
395
+ status: z.ZodOptional<z.ZodEnum<["pending_parse", "parsed", "failed"]>>;
396
+ telegramMessageDate: z.ZodOptional<z.ZodString>;
397
+ createdAt: z.ZodString;
398
+ updatedAt: z.ZodOptional<z.ZodString>;
399
+ isVisited: z.ZodOptional<z.ZodBoolean>;
400
+ }, "strip", z.ZodTypeAny, {
401
+ id: string;
402
+ telegramMessageId: string;
403
+ channelId: string;
404
+ rawText: string;
405
+ createdAt: string;
406
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
407
+ channelUsername?: string | undefined;
408
+ senderUserId?: string | undefined;
409
+ senderUsername?: string | undefined;
410
+ parsedData?: {
411
+ jobTitle?: string | undefined;
412
+ normalizedJobTitle?: string | undefined;
413
+ company?: string | undefined;
414
+ techStack?: string[] | undefined;
415
+ salary?: string | undefined;
416
+ contactInfo?: {
417
+ telegram?: string | undefined;
418
+ email?: string | undefined;
419
+ applicationUrl?: string | undefined;
420
+ other?: string | undefined;
421
+ } | undefined;
422
+ isRemote?: boolean | undefined;
423
+ level?: string | undefined;
424
+ employmentType?: string | undefined;
425
+ location?: string | undefined;
426
+ candidateLocation?: string | undefined;
427
+ responsibilities?: string[] | undefined;
428
+ requiredQualifications?: string[] | undefined;
429
+ preferredQualifications?: string[] | undefined;
430
+ benefits?: string[] | undefined;
431
+ description?: string | undefined;
432
+ experienceYears?: number | undefined;
433
+ } | undefined;
434
+ telegramMessageDate?: string | undefined;
435
+ updatedAt?: string | undefined;
436
+ isVisited?: boolean | undefined;
437
+ }, {
438
+ id: string;
439
+ telegramMessageId: string;
440
+ channelId: string;
441
+ rawText: string;
442
+ createdAt: string;
443
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
444
+ channelUsername?: string | undefined;
445
+ senderUserId?: string | undefined;
446
+ senderUsername?: string | undefined;
447
+ parsedData?: {
448
+ jobTitle?: string | undefined;
449
+ normalizedJobTitle?: string | undefined;
450
+ company?: string | undefined;
451
+ techStack?: string[] | undefined;
452
+ salary?: string | undefined;
453
+ contactInfo?: {
454
+ telegram?: string | undefined;
455
+ email?: string | undefined;
456
+ applicationUrl?: string | undefined;
457
+ other?: string | undefined;
458
+ } | undefined;
459
+ isRemote?: boolean | undefined;
460
+ level?: string | undefined;
461
+ employmentType?: string | undefined;
462
+ location?: string | undefined;
463
+ candidateLocation?: string | undefined;
464
+ responsibilities?: string[] | undefined;
465
+ requiredQualifications?: string[] | undefined;
466
+ preferredQualifications?: string[] | undefined;
467
+ benefits?: string[] | undefined;
468
+ description?: string | undefined;
469
+ experienceYears?: number | undefined;
470
+ } | undefined;
471
+ telegramMessageDate?: string | undefined;
472
+ updatedAt?: string | undefined;
473
+ isVisited?: boolean | undefined;
474
+ }>, "many">;
475
+ total: z.ZodNumber;
476
+ limit: z.ZodNumber;
477
+ offset: z.ZodNumber;
478
+ }, "strip", z.ZodTypeAny, {
479
+ jobs: {
480
+ id: string;
481
+ telegramMessageId: string;
482
+ channelId: string;
483
+ rawText: string;
484
+ createdAt: string;
485
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
486
+ channelUsername?: string | undefined;
487
+ senderUserId?: string | undefined;
488
+ senderUsername?: string | undefined;
489
+ parsedData?: {
490
+ jobTitle?: string | undefined;
491
+ normalizedJobTitle?: string | undefined;
492
+ company?: string | undefined;
493
+ techStack?: string[] | undefined;
494
+ salary?: string | undefined;
495
+ contactInfo?: {
496
+ telegram?: string | undefined;
497
+ email?: string | undefined;
498
+ applicationUrl?: string | undefined;
499
+ other?: string | undefined;
500
+ } | undefined;
501
+ isRemote?: boolean | undefined;
502
+ level?: string | undefined;
503
+ employmentType?: string | undefined;
504
+ location?: string | undefined;
505
+ candidateLocation?: string | undefined;
506
+ responsibilities?: string[] | undefined;
507
+ requiredQualifications?: string[] | undefined;
508
+ preferredQualifications?: string[] | undefined;
509
+ benefits?: string[] | undefined;
510
+ description?: string | undefined;
511
+ experienceYears?: number | undefined;
512
+ } | undefined;
513
+ telegramMessageDate?: string | undefined;
514
+ updatedAt?: string | undefined;
515
+ isVisited?: boolean | undefined;
516
+ }[];
517
+ total: number;
518
+ limit: number;
519
+ offset: number;
520
+ }, {
521
+ jobs: {
522
+ id: string;
523
+ telegramMessageId: string;
524
+ channelId: string;
525
+ rawText: string;
526
+ createdAt: string;
527
+ status?: "pending_parse" | "parsed" | "failed" | undefined;
528
+ channelUsername?: string | undefined;
529
+ senderUserId?: string | undefined;
530
+ senderUsername?: string | undefined;
531
+ parsedData?: {
532
+ jobTitle?: string | undefined;
533
+ normalizedJobTitle?: string | undefined;
534
+ company?: string | undefined;
535
+ techStack?: string[] | undefined;
536
+ salary?: string | undefined;
537
+ contactInfo?: {
538
+ telegram?: string | undefined;
539
+ email?: string | undefined;
540
+ applicationUrl?: string | undefined;
541
+ other?: string | undefined;
542
+ } | undefined;
543
+ isRemote?: boolean | undefined;
544
+ level?: string | undefined;
545
+ employmentType?: string | undefined;
546
+ location?: string | undefined;
547
+ candidateLocation?: string | undefined;
548
+ responsibilities?: string[] | undefined;
549
+ requiredQualifications?: string[] | undefined;
550
+ preferredQualifications?: string[] | undefined;
551
+ benefits?: string[] | undefined;
552
+ description?: string | undefined;
553
+ experienceYears?: number | undefined;
554
+ } | undefined;
555
+ telegramMessageDate?: string | undefined;
556
+ updatedAt?: string | undefined;
557
+ isVisited?: boolean | undefined;
558
+ }[];
559
+ total: number;
560
+ limit: number;
561
+ offset: number;
562
+ }>;
563
+ //# sourceMappingURL=jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/schemas/jobs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAK5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkB9B,CAAC;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcpB,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B,CAAC"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JobsResponseSchema = exports.JobFiltersSchema = exports.JobSchema = exports.ParsedJobDataSchema = exports.ContactInfoSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.ContactInfoSchema = zod_1.z.object({
6
+ telegram: zod_1.z.string().optional(),
7
+ email: zod_1.z.string().optional(),
8
+ applicationUrl: zod_1.z.string().optional(),
9
+ other: zod_1.z.string().optional(),
10
+ });
11
+ exports.ParsedJobDataSchema = zod_1.z.object({
12
+ jobTitle: zod_1.z.string().optional(),
13
+ normalizedJobTitle: zod_1.z.string().optional(),
14
+ company: zod_1.z.string().optional(),
15
+ techStack: zod_1.z.array(zod_1.z.string()).optional(),
16
+ salary: zod_1.z.string().optional(),
17
+ contactInfo: exports.ContactInfoSchema.optional(),
18
+ isRemote: zod_1.z.boolean().optional(),
19
+ level: zod_1.z.string().optional(),
20
+ employmentType: zod_1.z.string().optional(),
21
+ location: zod_1.z.string().optional(),
22
+ candidateLocation: zod_1.z.string().optional(),
23
+ responsibilities: zod_1.z.array(zod_1.z.string()).optional(),
24
+ requiredQualifications: zod_1.z.array(zod_1.z.string()).optional(),
25
+ preferredQualifications: zod_1.z.array(zod_1.z.string()).optional(),
26
+ benefits: zod_1.z.array(zod_1.z.string()).optional(),
27
+ description: zod_1.z.string().optional(),
28
+ experienceYears: zod_1.z.number().optional(),
29
+ });
30
+ exports.JobSchema = zod_1.z.object({
31
+ id: zod_1.z.string(),
32
+ telegramMessageId: zod_1.z.string(),
33
+ channelId: zod_1.z.string(),
34
+ channelUsername: zod_1.z.string().optional(),
35
+ senderUserId: zod_1.z.string().optional(),
36
+ senderUsername: zod_1.z.string().optional(),
37
+ rawText: zod_1.z.string(),
38
+ parsedData: exports.ParsedJobDataSchema.optional(),
39
+ status: zod_1.z.enum(['pending_parse', 'parsed', 'failed']).optional(),
40
+ telegramMessageDate: zod_1.z.string().optional(),
41
+ createdAt: zod_1.z.string(),
42
+ updatedAt: zod_1.z.string().optional(),
43
+ isVisited: zod_1.z.boolean().optional(),
44
+ });
45
+ exports.JobFiltersSchema = zod_1.z.object({
46
+ stack: zod_1.z.array(zod_1.z.string()).optional(),
47
+ level: zod_1.z.array(zod_1.z.string()).optional(),
48
+ jobFunction: zod_1.z.array(zod_1.z.string()).optional(),
49
+ locationType: zod_1.z.array(zod_1.z.string()).optional(),
50
+ excludedTitles: zod_1.z.array(zod_1.z.string()).optional(),
51
+ muteKeywords: zod_1.z.array(zod_1.z.string()).optional(),
52
+ experienceYears: zod_1.z
53
+ .object({
54
+ min: zod_1.z.number().optional(),
55
+ max: zod_1.z.number().optional(),
56
+ })
57
+ .optional(),
58
+ });
59
+ exports.JobsResponseSchema = zod_1.z.object({
60
+ jobs: zod_1.z.array(exports.JobSchema),
61
+ total: zod_1.z.number(),
62
+ limit: zod_1.z.number(),
63
+ offset: zod_1.z.number(),
64
+ });