@thejob/schema 2.0.0 → 2.0.2

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/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as yup from 'yup';
2
- import { Maybe, AnyObject, MixedSchema, Reference, InferType, ObjectSchema } from 'yup';
2
+ import { InferType, Maybe, AnyObject, MixedSchema, Reference, ObjectSchema } from 'yup';
3
3
 
4
4
  declare const TermsAcceptedSchema: yup.ObjectSchema<{
5
5
  termsAccepted: NonNullable<boolean | undefined>;
@@ -28,7 +28,46 @@ declare const CompletenessScoreSchema: (minScore?: number) => yup.ObjectSchema<{
28
28
  totalSteps: 0;
29
29
  completedSteps: 0;
30
30
  }, "">;
31
+ /**
32
+ * Tracks a user reference plus when the relation was created (bookmarks,
33
+ * applicants, reports on a job). The v1 `userId` used `.objectId()`; plain
34
+ * `string()` in v2.
35
+ */
36
+ declare const UserIdAndCreatedAtSchema: yup.ObjectSchema<{
37
+ userId: string;
38
+ createdAt: string;
39
+ }, yup.AnyObject, {
40
+ userId: undefined;
41
+ createdAt: undefined;
42
+ }, "">;
43
+ type TUserIdAndCreatedAtSchema = InferType<typeof UserIdAndCreatedAtSchema>;
31
44
 
45
+ /**
46
+ * Common option keys shared across schemas. `Yes`/`No` are used by acknowledge
47
+ * questions; `Skill`/`EducationLevel`/`ExperienceLevel`/etc. tag where a choice
48
+ * question sources its options from. Migrated from schema v1.
49
+ */
50
+ declare enum Common {
51
+ Yes = "yes",
52
+ No = "no",
53
+ DateRangeOption = "date_range_option",
54
+ ExperienceLevel = "experience_level",
55
+ Company = "company",
56
+ EmploymentType = "employment_type",
57
+ WorkMode = "work_mode",
58
+ Location = "location",
59
+ CareerLevel = "career_level",
60
+ Category = "category",
61
+ Designation = "designation",
62
+ EducationLevel = "education_level",
63
+ Language = "language",
64
+ Skill = "skill"
65
+ }
66
+ declare const EMPTY_STRING = "eMpTyStRiNg";
67
+ declare const SYSTEM_DATE_FORMAT = "YYYY-MM-DD";
68
+ declare const DISPLAY_DATE_FORMAT = "LL";
69
+ declare const DISPLAY_DATE_FORMAT_SHORT = "MMMM, YYYY";
70
+ declare const SITEMAP_FORMAT = "YYYY-MM-DDThh:mm:ssZ";
32
71
  declare enum StudyType {
33
72
  FullTime = "full_time",
34
73
  PartTime = "part_time",
@@ -208,6 +247,441 @@ declare const GroupMembershipSchema: yup.ObjectSchema<{
208
247
  updatedAt: undefined;
209
248
  }, "">;
210
249
 
250
+ declare enum JobStatus {
251
+ Published = "published",
252
+ Draft = "draft",
253
+ Deleted = "deleted",
254
+ Closed = "closed",
255
+ Expired = "expired"
256
+ }
257
+ declare const SupportedJobStatuses: JobStatus[];
258
+ declare enum EmploymentType {
259
+ Fulltime = "full_time",
260
+ PartTime = "part_time",
261
+ Temporary = "temporary",
262
+ Contract = "contract",
263
+ Internship = "internship",
264
+ Freelance = "freelance",
265
+ Volunteer = "volunteer",
266
+ PerDiem = "per_diem"
267
+ }
268
+ declare const SupportedEmploymentTypes: EmploymentType[];
269
+ declare enum WorkMode {
270
+ OnSite = "on_site",
271
+ Hybrid = "hybrid",
272
+ Remote = "remote"
273
+ }
274
+ declare const SupportedWorkModes: WorkMode[];
275
+ declare enum CompensationType {
276
+ Hourly = "hourly",
277
+ Weekly = "weekly",
278
+ Monthly = "monthly",
279
+ Yearly = "yearly",
280
+ OneTime = "one-time",
281
+ Other = "other"
282
+ }
283
+ declare const SupportedCompensationTypes: CompensationType[];
284
+ declare enum EmployeeCount {
285
+ _1_2 = "1_2_employees",
286
+ _3_10 = "3_10_employees",
287
+ _11_100 = "11_100_employees",
288
+ _101_1000 = "101_1000_employees",
289
+ _1001_5000 = "1001_5000_employees",
290
+ _5001_10000 = "5001_10000_employees",
291
+ _10001_Plus = "10001_plus_employees"
292
+ }
293
+ declare const SupportedEmployeeCounts: EmployeeCount[];
294
+ declare enum ApplicationReceivePreference {
295
+ Inbox = "inbox",
296
+ Email = "email",
297
+ ExternalWebsite = "external_website"
298
+ }
299
+ declare const SupportedApplicationReceivePreferences: ApplicationReceivePreference[];
300
+
301
+ declare enum QuestionType {
302
+ Input = "input",
303
+ Choice = "choice",
304
+ ReadAndAcknowledge = "readAndAcknowledge"
305
+ }
306
+ declare const SupportedQuestionTypes: QuestionType[];
307
+ declare enum AnswerChoiceType {
308
+ Single = "single",
309
+ Multiple = "multiple"
310
+ }
311
+ declare const SupportedAnswerChoiceTypes: AnswerChoiceType[];
312
+
313
+ declare const ChoiceQuestionSchema: yup.ObjectSchema<{
314
+ label: string | undefined;
315
+ default: boolean;
316
+ title: string;
317
+ type: QuestionType.Choice;
318
+ isOptional: boolean | undefined;
319
+ readonly: boolean | undefined;
320
+ isNew: boolean | undefined;
321
+ } & {
322
+ type: QuestionType.Choice;
323
+ optionsFrom: Common.ExperienceLevel | Common.EducationLevel | Common.Skill | undefined;
324
+ options: string[];
325
+ answerChoiceType: NonNullable<AnswerChoiceType | undefined>;
326
+ preferredAnswer: string | string[] | undefined;
327
+ answers: string | string[] | undefined;
328
+ }, yup.AnyObject, {
329
+ label: undefined;
330
+ default: false;
331
+ title: undefined;
332
+ type: undefined;
333
+ isOptional: undefined;
334
+ readonly: undefined;
335
+ isNew: undefined;
336
+ optionsFrom: undefined;
337
+ options: undefined;
338
+ answerChoiceType: AnswerChoiceType.Single;
339
+ preferredAnswer: undefined;
340
+ answers: undefined;
341
+ }, "">;
342
+ type TChoiceQuestionSchema = InferType<typeof ChoiceQuestionSchema>;
343
+
344
+ declare const InputQuestionSchema: yup.ObjectSchema<{
345
+ label: string | undefined;
346
+ default: boolean;
347
+ title: string;
348
+ type: QuestionType.Input;
349
+ isOptional: boolean | undefined;
350
+ readonly: boolean | undefined;
351
+ isNew: boolean | undefined;
352
+ } & {
353
+ type: QuestionType.Input;
354
+ preferredAnswer: string | undefined;
355
+ answers: string | undefined;
356
+ }, yup.AnyObject, {
357
+ label: undefined;
358
+ default: false;
359
+ title: undefined;
360
+ type: undefined;
361
+ isOptional: undefined;
362
+ readonly: undefined;
363
+ isNew: undefined;
364
+ preferredAnswer: undefined;
365
+ answers: undefined;
366
+ }, "">;
367
+ type TInputQuestionSchema = InferType<typeof InputQuestionSchema>;
368
+
369
+ declare const ReadAndAcknowledgeQuestionSchema: yup.ObjectSchema<{
370
+ label: string | undefined;
371
+ default: boolean;
372
+ title: string;
373
+ type: QuestionType.ReadAndAcknowledge;
374
+ isOptional: boolean | undefined;
375
+ readonly: boolean | undefined;
376
+ isNew: boolean | undefined;
377
+ } & {
378
+ type: QuestionType.ReadAndAcknowledge;
379
+ description: string;
380
+ preferredAnswer: NonNullable<Common.Yes | Common.No | undefined>;
381
+ answers: NonNullable<Common.Yes | Common.No | undefined>;
382
+ }, yup.AnyObject, {
383
+ label: undefined;
384
+ default: false;
385
+ title: undefined;
386
+ type: undefined;
387
+ isOptional: undefined;
388
+ readonly: undefined;
389
+ isNew: undefined;
390
+ description: undefined;
391
+ preferredAnswer: undefined;
392
+ answers: undefined;
393
+ }, "">;
394
+ type TReadAndAcknowledgeQuestionSchema = InferType<typeof ReadAndAcknowledgeQuestionSchema>;
395
+
396
+ /** Base fields shared by every question variant. The concrete variants concat
397
+ * their own `type`-narrowed fields onto this (see input/choice/acknowledge). */
398
+ declare const QuestionSchema: yup.ObjectSchema<{
399
+ label: string | undefined;
400
+ default: boolean;
401
+ title: string;
402
+ type: NonNullable<QuestionType | undefined>;
403
+ isOptional: boolean | undefined;
404
+ readonly: boolean | undefined;
405
+ isNew: boolean | undefined;
406
+ }, yup.AnyObject, {
407
+ label: undefined;
408
+ default: false;
409
+ title: undefined;
410
+ type: undefined;
411
+ isOptional: undefined;
412
+ readonly: undefined;
413
+ isNew: undefined;
414
+ }, "">;
415
+ type TQuestionSchema = TInputQuestionSchema | TChoiceQuestionSchema | TReadAndAcknowledgeQuestionSchema;
416
+
417
+ /** Resolve the concrete question schema for a question's `type`. Drives the
418
+ * `lazy` validation of the job questionnaire. */
419
+ declare const getSchemaByQuestion: (type: QuestionType) => ObjectSchema<TQuestionSchema>;
420
+
421
+ declare const JobSchema: ObjectSchema<{
422
+ uniqueId: string | undefined;
423
+ headline: string;
424
+ slug: string;
425
+ applicationReceivePreference: NonNullable<ApplicationReceivePreference | undefined>;
426
+ externalApplyLink: string | undefined;
427
+ company: {
428
+ slug?: string | undefined;
429
+ logo?: {
430
+ dark?: string | null | undefined;
431
+ light?: string | undefined;
432
+ } | null | undefined;
433
+ type: PageType;
434
+ name: string;
435
+ };
436
+ designation: string | null | undefined;
437
+ employmentType: string;
438
+ workMode: string;
439
+ skills: {
440
+ name: string;
441
+ logo: {
442
+ dark?: string | null | undefined;
443
+ light: string;
444
+ } | null;
445
+ }[] | null | undefined;
446
+ bookmarks: {
447
+ createdAt: string;
448
+ userId: string;
449
+ }[] | undefined;
450
+ embedding: {
451
+ vector?: number[] | undefined;
452
+ model?: string | undefined;
453
+ } | null | undefined;
454
+ applicants: {
455
+ createdAt: string;
456
+ userId: string;
457
+ }[] | undefined;
458
+ applicantCount: number | undefined;
459
+ externalApplicationLinkClickCount: number | undefined;
460
+ description: string;
461
+ descriptionMarkdown: string;
462
+ descriptionHTML: string | undefined;
463
+ locations: {
464
+ placeId?: string | null | undefined;
465
+ state?: string | null | undefined;
466
+ stateCode?: string | null | undefined;
467
+ city?: string | null | undefined;
468
+ address?: string | null | undefined;
469
+ country: string;
470
+ countryCode: string;
471
+ geo: {
472
+ type: "Point";
473
+ coordinates: number[];
474
+ };
475
+ }[];
476
+ educationLevel: (EducationLevel | undefined)[];
477
+ validity: {
478
+ [x: string]: string | boolean;
479
+ [x: number]: string | boolean;
480
+ };
481
+ experienceLevel: ExperienceLevel | null | undefined;
482
+ contactEmail: string | null | undefined;
483
+ workingHoursPerWeek: number | null | undefined;
484
+ tags: any[] | undefined;
485
+ questionnaire: ({
486
+ label?: string | undefined;
487
+ isNew?: boolean | undefined;
488
+ isOptional?: boolean | undefined;
489
+ readonly?: boolean | undefined;
490
+ preferredAnswer?: string | undefined;
491
+ answers?: string | undefined;
492
+ type: QuestionType.Input;
493
+ default: boolean;
494
+ title: string;
495
+ } | {
496
+ label?: string | undefined;
497
+ isNew?: boolean | undefined;
498
+ isOptional?: boolean | undefined;
499
+ readonly?: boolean | undefined;
500
+ preferredAnswer?: string | undefined;
501
+ type: QuestionType.Input;
502
+ default: boolean;
503
+ title: string;
504
+ } | {
505
+ label?: string | undefined;
506
+ isNew?: boolean | undefined;
507
+ isOptional?: boolean | undefined;
508
+ readonly?: boolean | undefined;
509
+ optionsFrom?: Common.ExperienceLevel | Common.EducationLevel | Common.Skill | undefined;
510
+ preferredAnswer?: string | string[] | undefined;
511
+ answers?: string | string[] | undefined;
512
+ type: QuestionType.Choice;
513
+ default: boolean;
514
+ title: string;
515
+ options: string[];
516
+ answerChoiceType: NonNullable<AnswerChoiceType | undefined>;
517
+ } | {
518
+ label?: string | undefined;
519
+ isNew?: boolean | undefined;
520
+ isOptional?: boolean | undefined;
521
+ readonly?: boolean | undefined;
522
+ optionsFrom?: Common.ExperienceLevel | Common.EducationLevel | Common.Skill | undefined;
523
+ preferredAnswer?: string | string[] | undefined;
524
+ type: QuestionType.Choice;
525
+ default: boolean;
526
+ title: string;
527
+ options: string[];
528
+ answerChoiceType: NonNullable<AnswerChoiceType | undefined>;
529
+ } | {
530
+ label?: string | undefined;
531
+ isNew?: boolean | undefined;
532
+ isOptional?: boolean | undefined;
533
+ readonly?: boolean | undefined;
534
+ type: QuestionType.ReadAndAcknowledge;
535
+ default: boolean;
536
+ description: string;
537
+ title: string;
538
+ preferredAnswer: NonNullable<Common.Yes | Common.No | undefined>;
539
+ answers: NonNullable<Common.Yes | Common.No | undefined>;
540
+ } | {
541
+ label?: string | undefined;
542
+ isNew?: boolean | undefined;
543
+ isOptional?: boolean | undefined;
544
+ readonly?: boolean | undefined;
545
+ type: QuestionType.ReadAndAcknowledge;
546
+ default: boolean;
547
+ description: string;
548
+ title: string;
549
+ preferredAnswer: NonNullable<Common.Yes | Common.No | undefined>;
550
+ })[] | undefined;
551
+ status: NonNullable<JobStatus | undefined>;
552
+ seoTags: {
553
+ description?: string | undefined;
554
+ keywords?: (string | undefined)[] | undefined;
555
+ } | null | undefined;
556
+ jdSummary: string | undefined;
557
+ canCreateAlert: boolean | undefined;
558
+ canDirectApply: boolean | undefined;
559
+ hasApplied: boolean | undefined;
560
+ isOwner: boolean | undefined;
561
+ hasBookmarked: boolean | undefined;
562
+ hasReported: boolean | undefined;
563
+ ratePerHour: number | undefined;
564
+ isPromoted: boolean | undefined;
565
+ salaryRange: {
566
+ min?: number | null | undefined;
567
+ max?: number | null | undefined;
568
+ compensationType?: CompensationType | null | undefined;
569
+ currency: string;
570
+ isNegotiable: boolean | null;
571
+ } | null | undefined;
572
+ reports: {
573
+ createdAt: string;
574
+ userId: string;
575
+ }[] | undefined;
576
+ category: string | null | undefined;
577
+ industry: string | null | undefined;
578
+ subCategories: string[] | null | undefined;
579
+ termsAccepted: NonNullable<boolean | undefined>;
580
+ isFeatured: boolean;
581
+ featuredMarkets: string[];
582
+ } & {
583
+ shortId: string;
584
+ createdBy: string;
585
+ createdAt: number;
586
+ updatedBy: string | undefined;
587
+ updatedAt: number | undefined;
588
+ }, yup.AnyObject, {
589
+ uniqueId: undefined;
590
+ headline: undefined;
591
+ slug: undefined;
592
+ applicationReceivePreference: undefined;
593
+ externalApplyLink: undefined;
594
+ company: {
595
+ id: undefined;
596
+ shortId: undefined;
597
+ name: undefined;
598
+ headline: undefined;
599
+ about: undefined;
600
+ website: undefined;
601
+ slug: undefined;
602
+ employeeCount: undefined;
603
+ yearFounded: undefined;
604
+ type: undefined;
605
+ locations: "";
606
+ contacts: "";
607
+ verified: undefined;
608
+ logo: null;
609
+ categories: "";
610
+ socialAccounts: "";
611
+ isOwner: undefined;
612
+ isFeatured: false;
613
+ featuredMarkets: never[];
614
+ status: undefined;
615
+ followersCount: undefined;
616
+ equalOpportunityEmployer: undefined;
617
+ perksAndBenefits: "";
618
+ createdBy: undefined;
619
+ createdAt: undefined;
620
+ updatedBy: undefined;
621
+ updatedAt: undefined;
622
+ };
623
+ designation: undefined;
624
+ employmentType: undefined;
625
+ workMode: undefined;
626
+ skills: "";
627
+ bookmarks: "";
628
+ embedding: {
629
+ vector: undefined;
630
+ model: undefined;
631
+ };
632
+ applicants: "";
633
+ applicantCount: undefined;
634
+ externalApplicationLinkClickCount: undefined;
635
+ description: undefined;
636
+ descriptionMarkdown: undefined;
637
+ descriptionHTML: undefined;
638
+ locations: never[];
639
+ educationLevel: undefined;
640
+ validity: {
641
+ [x: string]: string | false;
642
+ isActive: false;
643
+ };
644
+ experienceLevel: undefined;
645
+ contactEmail: undefined;
646
+ workingHoursPerWeek: undefined;
647
+ tags: undefined;
648
+ questionnaire: "";
649
+ status: JobStatus.Draft;
650
+ seoTags: {
651
+ description: undefined;
652
+ keywords: "";
653
+ };
654
+ jdSummary: undefined;
655
+ canCreateAlert: undefined;
656
+ canDirectApply: undefined;
657
+ hasApplied: undefined;
658
+ isOwner: undefined;
659
+ hasBookmarked: undefined;
660
+ hasReported: undefined;
661
+ ratePerHour: undefined;
662
+ isPromoted: undefined;
663
+ salaryRange: {
664
+ currency: "USD";
665
+ min: undefined;
666
+ max: undefined;
667
+ compensationType: undefined;
668
+ isNegotiable: true;
669
+ };
670
+ reports: "";
671
+ category: undefined;
672
+ industry: undefined;
673
+ subCategories: "";
674
+ termsAccepted: undefined;
675
+ isFeatured: false;
676
+ featuredMarkets: never[];
677
+ shortId: undefined;
678
+ createdBy: undefined;
679
+ createdAt: undefined;
680
+ updatedBy: undefined;
681
+ updatedAt: undefined;
682
+ }, "">;
683
+ type TJobSchema = InferType<typeof JobSchema>;
684
+
211
685
  declare const LocationSchema: yup.ObjectSchema<{
212
686
  placeId: string | null | undefined;
213
687
  country: string;
@@ -377,6 +851,36 @@ declare const DefaultPaginationOptions: {
377
851
  limit: number;
378
852
  };
379
853
 
854
+ declare enum ResourceType {
855
+ Job = "job",
856
+ User = "user",
857
+ Resume = "resume",
858
+ Company = "company"
859
+ }
860
+ declare const SupportedResourceTypes: ResourceType[];
861
+ declare enum ReportReason {
862
+ OffensiveOrHarassing = "offensive_or_harassing",
863
+ JobExpired = "job_expired",
864
+ AskingMoney = "asking_money",
865
+ FakeJob = "fake_job",
866
+ IncorrectJobDetails = "incorrect_job_details",
867
+ SellingSomething = "selling_something",
868
+ Other = "other"
869
+ }
870
+ declare const SupportedReportReasons: ReportReason[];
871
+
872
+ declare const ReportSchema: yup.ObjectSchema<{
873
+ type: NonNullable<ResourceType | undefined>;
874
+ resourceId: string;
875
+ reason: NonNullable<ReportReason | undefined>;
876
+ comment: string | undefined;
877
+ }, yup.AnyObject, {
878
+ type: undefined;
879
+ resourceId: undefined;
880
+ reason: undefined;
881
+ comment: undefined;
882
+ }, "">;
883
+
380
884
  declare const SkillSchema: yup.ObjectSchema<{
381
885
  name: string;
382
886
  logo: {
@@ -499,7 +1003,7 @@ declare enum JobSearchUrgency {
499
1003
  }
500
1004
  declare const SupportedJobSearchUrgencies: JobSearchUrgency[];
501
1005
  /**
502
- * How the user heard about the platform captured at the end of onboarding
1006
+ * How the user heard about the platform - captured at the end of onboarding
503
1007
  * for marketing attribution.
504
1008
  */
505
1009
  declare enum ReferralSource {
@@ -538,11 +1042,28 @@ declare const UserSchema: yup.ObjectSchema<{
538
1042
  type: PageType;
539
1043
  name: string;
540
1044
  };
1045
+ location: {
1046
+ placeId?: string | null | undefined;
1047
+ state?: string | null | undefined;
1048
+ stateCode?: string | null | undefined;
1049
+ city?: string | null | undefined;
1050
+ address?: string | null | undefined;
1051
+ country: string;
1052
+ countryCode: string;
1053
+ geo: {
1054
+ type: "Point";
1055
+ coordinates: number[];
1056
+ };
1057
+ };
541
1058
  designation: string;
542
1059
  duration: {
543
1060
  [x: string]: string | boolean;
544
1061
  [x: number]: string | boolean;
545
1062
  };
1063
+ isRemote: boolean;
1064
+ }[];
1065
+ educations: {
1066
+ description?: string | undefined;
546
1067
  location: {
547
1068
  placeId?: string | null | undefined;
548
1069
  state?: string | null | undefined;
@@ -556,10 +1077,6 @@ declare const UserSchema: yup.ObjectSchema<{
556
1077
  coordinates: number[];
557
1078
  };
558
1079
  };
559
- isRemote: boolean;
560
- }[];
561
- educations: {
562
- description?: string | undefined;
563
1080
  institute: {
564
1081
  slug?: string | undefined;
565
1082
  logo?: {
@@ -574,19 +1091,6 @@ declare const UserSchema: yup.ObjectSchema<{
574
1091
  endDate: string | null;
575
1092
  isActive: boolean;
576
1093
  };
577
- location: {
578
- placeId?: string | null | undefined;
579
- state?: string | null | undefined;
580
- stateCode?: string | null | undefined;
581
- city?: string | null | undefined;
582
- address?: string | null | undefined;
583
- country: string;
584
- countryCode: string;
585
- geo: {
586
- type: "Point";
587
- coordinates: number[];
588
- };
589
- };
590
1094
  course: string;
591
1095
  fieldOfStudy: string;
592
1096
  isDistanceLearning: boolean;
@@ -693,12 +1197,26 @@ declare const UserSchema: yup.ObjectSchema<{
693
1197
  }[];
694
1198
  onboardingCompletedAt: Date | null | undefined;
695
1199
  pendingPrefill: {
1200
+ location?: {
1201
+ placeId?: string | null | undefined;
1202
+ state?: string | null | undefined;
1203
+ stateCode?: string | null | undefined;
1204
+ city?: string | null | undefined;
1205
+ address?: string | null | undefined;
1206
+ country: string;
1207
+ countryCode: string;
1208
+ geo: {
1209
+ type: "Point";
1210
+ coordinates: number[];
1211
+ };
1212
+ } | undefined;
696
1213
  headline?: string | undefined;
697
1214
  socialAccounts?: {
698
1215
  type: NonNullable<SocialAccount | undefined>;
699
1216
  isNew: boolean;
700
1217
  url: string;
701
1218
  }[] | undefined;
1219
+ experienceLevel?: ExperienceLevel | undefined;
702
1220
  workExperiences?: {
703
1221
  description?: string | undefined;
704
1222
  company: {
@@ -710,11 +1228,28 @@ declare const UserSchema: yup.ObjectSchema<{
710
1228
  type: PageType;
711
1229
  name: string;
712
1230
  };
1231
+ location: {
1232
+ placeId?: string | null | undefined;
1233
+ state?: string | null | undefined;
1234
+ stateCode?: string | null | undefined;
1235
+ city?: string | null | undefined;
1236
+ address?: string | null | undefined;
1237
+ country: string;
1238
+ countryCode: string;
1239
+ geo: {
1240
+ type: "Point";
1241
+ coordinates: number[];
1242
+ };
1243
+ };
713
1244
  designation: string;
714
1245
  duration: {
715
1246
  [x: string]: string | boolean;
716
1247
  [x: number]: string | boolean;
717
1248
  };
1249
+ isRemote: boolean;
1250
+ }[] | undefined;
1251
+ educations?: {
1252
+ description?: string | undefined;
718
1253
  location: {
719
1254
  placeId?: string | null | undefined;
720
1255
  state?: string | null | undefined;
@@ -728,10 +1263,6 @@ declare const UserSchema: yup.ObjectSchema<{
728
1263
  coordinates: number[];
729
1264
  };
730
1265
  };
731
- isRemote: boolean;
732
- }[] | undefined;
733
- educations?: {
734
- description?: string | undefined;
735
1266
  institute: {
736
1267
  slug?: string | undefined;
737
1268
  logo?: {
@@ -746,40 +1277,13 @@ declare const UserSchema: yup.ObjectSchema<{
746
1277
  endDate: string | null;
747
1278
  isActive: boolean;
748
1279
  };
749
- location: {
750
- placeId?: string | null | undefined;
751
- state?: string | null | undefined;
752
- stateCode?: string | null | undefined;
753
- city?: string | null | undefined;
754
- address?: string | null | undefined;
755
- country: string;
756
- countryCode: string;
757
- geo: {
758
- type: "Point";
759
- coordinates: number[];
760
- };
761
- };
762
1280
  course: string;
763
1281
  fieldOfStudy: string;
764
1282
  isDistanceLearning: boolean;
765
1283
  studyType: NonNullable<StudyType | undefined>;
766
1284
  }[] | undefined;
767
- location?: {
768
- placeId?: string | null | undefined;
769
- state?: string | null | undefined;
770
- stateCode?: string | null | undefined;
771
- city?: string | null | undefined;
772
- address?: string | null | undefined;
773
- country: string;
774
- countryCode: string;
775
- geo: {
776
- type: "Point";
777
- coordinates: number[];
778
- };
779
- } | undefined;
780
1285
  aboutMe?: string | undefined;
781
1286
  mobile?: string | undefined;
782
- experienceLevel?: ExperienceLevel | undefined;
783
1287
  } | null | undefined;
784
1288
  recruiterProfile: {
785
1289
  hiringFor: {
@@ -1207,12 +1711,26 @@ declare const UserJobPreferencesSchema: yup.ObjectSchema<{
1207
1711
  }[];
1208
1712
  onboardingCompletedAt: Date | null | undefined;
1209
1713
  pendingPrefill: {
1714
+ location?: {
1715
+ placeId?: string | null | undefined;
1716
+ state?: string | null | undefined;
1717
+ stateCode?: string | null | undefined;
1718
+ city?: string | null | undefined;
1719
+ address?: string | null | undefined;
1720
+ country: string;
1721
+ countryCode: string;
1722
+ geo: {
1723
+ type: "Point";
1724
+ coordinates: number[];
1725
+ };
1726
+ } | undefined;
1210
1727
  headline?: string | undefined;
1211
1728
  socialAccounts?: {
1212
1729
  type: NonNullable<SocialAccount | undefined>;
1213
1730
  isNew: boolean;
1214
1731
  url: string;
1215
1732
  }[] | undefined;
1733
+ experienceLevel?: ExperienceLevel | undefined;
1216
1734
  workExperiences?: {
1217
1735
  description?: string | undefined;
1218
1736
  company: {
@@ -1224,11 +1742,28 @@ declare const UserJobPreferencesSchema: yup.ObjectSchema<{
1224
1742
  type: PageType;
1225
1743
  name: string;
1226
1744
  };
1745
+ location: {
1746
+ placeId?: string | null | undefined;
1747
+ state?: string | null | undefined;
1748
+ stateCode?: string | null | undefined;
1749
+ city?: string | null | undefined;
1750
+ address?: string | null | undefined;
1751
+ country: string;
1752
+ countryCode: string;
1753
+ geo: {
1754
+ type: "Point";
1755
+ coordinates: number[];
1756
+ };
1757
+ };
1227
1758
  designation: string;
1228
1759
  duration: {
1229
1760
  [x: string]: string | boolean;
1230
1761
  [x: number]: string | boolean;
1231
1762
  };
1763
+ isRemote: boolean;
1764
+ }[] | undefined;
1765
+ educations?: {
1766
+ description?: string | undefined;
1232
1767
  location: {
1233
1768
  placeId?: string | null | undefined;
1234
1769
  state?: string | null | undefined;
@@ -1242,10 +1777,6 @@ declare const UserJobPreferencesSchema: yup.ObjectSchema<{
1242
1777
  coordinates: number[];
1243
1778
  };
1244
1779
  };
1245
- isRemote: boolean;
1246
- }[] | undefined;
1247
- educations?: {
1248
- description?: string | undefined;
1249
1780
  institute: {
1250
1781
  slug?: string | undefined;
1251
1782
  logo?: {
@@ -1260,40 +1791,13 @@ declare const UserJobPreferencesSchema: yup.ObjectSchema<{
1260
1791
  endDate: string | null;
1261
1792
  isActive: boolean;
1262
1793
  };
1263
- location: {
1264
- placeId?: string | null | undefined;
1265
- state?: string | null | undefined;
1266
- stateCode?: string | null | undefined;
1267
- city?: string | null | undefined;
1268
- address?: string | null | undefined;
1269
- country: string;
1270
- countryCode: string;
1271
- geo: {
1272
- type: "Point";
1273
- coordinates: number[];
1274
- };
1275
- };
1276
1794
  course: string;
1277
1795
  fieldOfStudy: string;
1278
1796
  isDistanceLearning: boolean;
1279
1797
  studyType: NonNullable<StudyType | undefined>;
1280
1798
  }[] | undefined;
1281
- location?: {
1282
- placeId?: string | null | undefined;
1283
- state?: string | null | undefined;
1284
- stateCode?: string | null | undefined;
1285
- city?: string | null | undefined;
1286
- address?: string | null | undefined;
1287
- country: string;
1288
- countryCode: string;
1289
- geo: {
1290
- type: "Point";
1291
- coordinates: number[];
1292
- };
1293
- } | undefined;
1294
1799
  aboutMe?: string | undefined;
1295
1800
  mobile?: string | undefined;
1296
- experienceLevel?: ExperienceLevel | undefined;
1297
1801
  } | null | undefined;
1298
1802
  }, yup.AnyObject, {
1299
1803
  openToWork: false;
@@ -1365,7 +1869,7 @@ declare const RecruiterPageLinkSchema: yup.ObjectSchema<{
1365
1869
  }, "">;
1366
1870
  /**
1367
1871
  * Recruiter-role-specific fields on UserSchema. All optional at the field
1368
- * level presence is gated by `UserRole.Recruiter` in the user's `roles`,
1872
+ * level - presence is gated by `UserRole.Recruiter` in the user's `roles`,
1369
1873
  * not by schema branching, so the user shape stays flat.
1370
1874
  */
1371
1875
  declare const UserRecruiterProfileSchema: yup.ObjectSchema<{
@@ -1443,7 +1947,7 @@ declare const CoordinatorPageLinkSchema: yup.ObjectSchema<{
1443
1947
  }, "">;
1444
1948
  /**
1445
1949
  * Coordinator-role-specific fields on UserSchema. All optional at the field
1446
- * level presence is gated by `UserRole.Coordinator` in the user's
1950
+ * level - presence is gated by `UserRole.Coordinator` in the user's
1447
1951
  * `roles`, not by schema branching, so the user shape stays flat.
1448
1952
  */
1449
1953
  declare const UserCoordinatorProfileSchema: yup.ObjectSchema<{
@@ -1595,6 +2099,11 @@ declare const StudentCompletenessSchema: yup.ObjectSchema<{
1595
2099
  totalSteps: number;
1596
2100
  completedSteps: number;
1597
2101
  };
2102
+ skills: {
2103
+ score: number;
2104
+ totalSteps: number;
2105
+ completedSteps: number;
2106
+ };
1598
2107
  overview: {
1599
2108
  score: number;
1600
2109
  totalSteps: number;
@@ -1620,11 +2129,6 @@ declare const StudentCompletenessSchema: yup.ObjectSchema<{
1620
2129
  totalSteps: number;
1621
2130
  completedSteps: number;
1622
2131
  };
1623
- skills: {
1624
- score: number;
1625
- totalSteps: number;
1626
- completedSteps: number;
1627
- };
1628
2132
  languages: {
1629
2133
  score: number;
1630
2134
  totalSteps: number;
@@ -1703,4 +2207,4 @@ declare const StudentCompletenessSchema: yup.ObjectSchema<{
1703
2207
  };
1704
2208
  }, "">;
1705
2209
 
1706
- export { CompletenessScoreSchema, ContactTypes, CoordinatorPageLinkSchema, DateStringSchema, DbDefaultSchema, DefaultPaginatedResponse, DefaultPaginationOptions, DefaultUserRoles, DurationSchema, EducationLevel, EducationSchema, ExperienceLevel, GeneraDetailFields, GroupManagedBy, GroupMembershipSchema, GroupMembershipStatus, GroupSchema, GroupStatus, GroupTranslationSchema, GroupVisibility, JobSearchUrgency, LocationSchema, MIN_SALARY_LOWER_BOUND, MIN_SALARY_UPPER_BOUND, PageSchema, PageStatus, PageType, type PaginatedResponse, PaginationSchema, ProficiencyLevel, RecruiterPageLinkSchema, ReferralSource, SkillSchema, SocialAccount, SocialAccountSchema, StudentCompletenessSchema, StudyType, SupportedContactTypes, SupportedEducationLevels, SupportedExperienceLevels, SupportedJobSearchUrgencies, SupportedPageStatuses, SupportedPageTypes, SupportedProficiencyLevels, SupportedReferralSources, SupportedSalaryCurrencies, type SupportedSalaryCurrency, SupportedSocialAccounts, SupportedStudyTypes, SupportedUserProfileVisibilities, SupportedUserRoles, SupportedUserStatuses, type TDurationSchema, TermsAcceptedSchema, UserAdditionalInfoSchema, UserCertificationSchema, UserCompletenessSchema, UserCoordinatorProfileSchema, UserDetailType, UserGeneralDetailSchema, UserInterestSchema, UserJobPreferencesSchema, UserLanguageSchema, type UserProfileOverview, UserProfileVisibility, UserProjectSchema, UserRecruiterProfileSchema, UserRole, UserSchema, UserSkillSchema, UserStatus, WorkExperienceSchema, dateString };
2210
+ export { AnswerChoiceType, ApplicationReceivePreference, ChoiceQuestionSchema, Common, CompensationType, CompletenessScoreSchema, ContactTypes, CoordinatorPageLinkSchema, DISPLAY_DATE_FORMAT, DISPLAY_DATE_FORMAT_SHORT, DateStringSchema, DbDefaultSchema, DefaultPaginatedResponse, DefaultPaginationOptions, DefaultUserRoles, DurationSchema, EMPTY_STRING, EducationLevel, EducationSchema, EmployeeCount, EmploymentType, ExperienceLevel, GeneraDetailFields, GroupManagedBy, GroupMembershipSchema, GroupMembershipStatus, GroupSchema, GroupStatus, GroupTranslationSchema, GroupVisibility, InputQuestionSchema, JobSchema, JobSearchUrgency, JobStatus, LocationSchema, MIN_SALARY_LOWER_BOUND, MIN_SALARY_UPPER_BOUND, PageSchema, PageStatus, PageType, type PaginatedResponse, PaginationSchema, ProficiencyLevel, QuestionSchema, QuestionType, ReadAndAcknowledgeQuestionSchema, RecruiterPageLinkSchema, ReferralSource, ReportReason, ReportSchema, ResourceType, SITEMAP_FORMAT, SYSTEM_DATE_FORMAT, SkillSchema, SocialAccount, SocialAccountSchema, StudentCompletenessSchema, StudyType, SupportedAnswerChoiceTypes, SupportedApplicationReceivePreferences, SupportedCompensationTypes, SupportedContactTypes, SupportedEducationLevels, SupportedEmployeeCounts, SupportedEmploymentTypes, SupportedExperienceLevels, SupportedJobSearchUrgencies, SupportedJobStatuses, SupportedPageStatuses, SupportedPageTypes, SupportedProficiencyLevels, SupportedQuestionTypes, SupportedReferralSources, SupportedReportReasons, SupportedResourceTypes, SupportedSalaryCurrencies, type SupportedSalaryCurrency, SupportedSocialAccounts, SupportedStudyTypes, SupportedUserProfileVisibilities, SupportedUserRoles, SupportedUserStatuses, SupportedWorkModes, type TChoiceQuestionSchema, type TDurationSchema, type TInputQuestionSchema, type TJobSchema, type TQuestionSchema, type TReadAndAcknowledgeQuestionSchema, type TUserIdAndCreatedAtSchema, TermsAcceptedSchema, UserAdditionalInfoSchema, UserCertificationSchema, UserCompletenessSchema, UserCoordinatorProfileSchema, UserDetailType, UserGeneralDetailSchema, UserIdAndCreatedAtSchema, UserInterestSchema, UserJobPreferencesSchema, UserLanguageSchema, type UserProfileOverview, UserProfileVisibility, UserProjectSchema, UserRecruiterProfileSchema, UserRole, UserSchema, UserSkillSchema, UserStatus, WorkExperienceSchema, WorkMode, dateString, getSchemaByQuestion };