@experts_hub/shared 1.0.134 → 1.0.136

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.mts CHANGED
@@ -241,320 +241,355 @@ declare const CLIENT_PROFILE_PATTERN: {
241
241
  changeClientPassword: string;
242
242
  };
243
243
 
244
- declare abstract class BaseEntity {
245
- id: number;
246
- uuid: string;
247
- createdAt: Date;
248
- createdBy: number;
249
- updatedAt: Date;
250
- updatedBy: number;
251
- isDeleted: boolean;
252
- deletedBy: number;
253
- deletedAt: Date;
244
+ declare class UpdateCompanyProfileDto {
245
+ companyName?: string;
246
+ webSite?: string;
247
+ companyAddress: string;
248
+ phoneNumber?: string;
249
+ email?: string;
250
+ aboutCompany?: string;
254
251
  }
255
252
 
256
- declare class RefreshToken {
257
- id: string;
258
- userId: number;
259
- tokenId: string;
260
- deviceInfo: any;
261
- isRevoked: boolean;
262
- expiresAt: Date;
263
- createdAt: Date;
264
- updatedAt: Date;
265
- user: User;
253
+ declare class ClientChangePasswordDto {
254
+ oldPassword: string;
255
+ newPassword: string;
266
256
  }
267
257
 
268
- declare class SenseloafLog {
269
- id: number;
270
- userId: number;
271
- type: string;
272
- endpoint: string;
273
- success: boolean;
274
- request: any;
275
- response: any;
276
- errorMessage: string;
277
- scope: string;
278
- createdAt: Date;
279
- user: User;
258
+ interface IFetchClientProfileQuery {
259
+ page_size?: number;
260
+ page: number;
261
+ searchText?: string;
262
+ companyName: string;
263
+ right: string;
264
+ sortColumn?: string;
265
+ sortBy?: string;
280
266
  }
281
-
282
- declare class Otp {
283
- id: number;
284
- userId: number;
285
- otp: string;
286
- otpPurpose: string;
287
- target: string;
288
- expiresAt: Date;
289
- isUsed: boolean;
290
- resendCount: number;
291
- createdAt: Date;
292
- user: User;
267
+ interface IFetchClientProfileResponse {
268
+ statusCode: number;
269
+ status: boolean;
270
+ message: string;
271
+ data: any;
293
272
  }
294
-
295
- declare enum NatureOfWork {
296
- FULLTIME = "FULLTIME",
297
- PARTTIME = "PARTTIME",
298
- BOTH = "BOTH"
273
+ interface IUpdateClientProfilePayload {
274
+ userId?: number;
275
+ companyName?: string;
276
+ bio?: string;
277
+ webSite?: string;
278
+ isServiceAgreementSigned?: boolean;
279
+ aboutCompany: string;
280
+ companyAddress: string;
281
+ phoneNumber: string;
282
+ skills?: string[];
283
+ requiredFreelancer?: string;
284
+ kindOfHiring?: string;
285
+ modeOfHire?: string;
286
+ foundUsOn?: string;
299
287
  }
300
- declare enum ModeOfWork {
301
- ONSITE = "ONSITE",
302
- REMOTE = "REMOTE",
303
- BOTH = "BOTH"
288
+ interface IUpdateClientLogoPayload {
289
+ logo: string;
304
290
  }
305
- declare enum OnboardingStepEnum {
306
- SIGN_UP = "SIGN_UP",
307
- OTP_VERIFIED = "OTP_VERIFIED",
308
- UPLOAD_RESUME = "UPLOAD_RESUME",
309
- AI_VIDEO_ASSESMENT = "AI_VIDEO_ASSESMENT",
310
- CODING_CHALLENGE = "CODING_CHALLENGE",
311
- PROFILE_COMPLETION = "PROFILE_COMPLETION"
291
+ interface IUpdateClientLogoResponse {
292
+ statusCode: number;
293
+ status: boolean;
294
+ message: string;
312
295
  }
313
- declare class FreelancerProfile extends BaseEntity {
314
- userId: number;
315
- user: User;
316
- resumeUrl: string;
317
- resumeData: string;
318
- isDeveloper: boolean;
319
- natureOfWork: NatureOfWork;
320
- currency: string;
321
- expectedHourlyCompensation: number;
322
- modeOfWork: ModeOfWork;
323
- availabilityToJoin: string;
324
- isImmediateJoiner: boolean;
325
- linkedinProfileLink: string;
326
- kaggleProfileLink: string;
327
- githubProfileLink: string;
328
- stackOverflowProfileLink: string;
329
- portfolioLink: string;
330
- onboardingStepCompleted: OnboardingStepEnum;
331
- countryId: number;
332
- address: string;
333
- about: string;
296
+ interface IUpdateClientPasswordPayload {
297
+ oldPassword: string;
298
+ newPassword: string;
334
299
  }
335
-
336
- declare class Skill extends BaseEntity {
337
- name: string;
338
- slug: string;
339
- isActive: boolean;
340
- jobSkills: JobSkill[];
300
+ interface IUpdateClientProfileResponse {
301
+ statusCode: number;
302
+ status: boolean;
303
+ message: string;
304
+ }
305
+ interface IUpdateClientProfileResponse {
306
+ statusCode: number;
307
+ status: boolean;
308
+ message: string;
341
309
  }
342
310
 
343
- declare class JobSkill extends BaseEntity {
344
- jobId: number;
345
- job: Job;
346
- skillId: number;
347
- skill: Skill;
311
+ declare const QUESTION_PATTERN: {
312
+ fetchQuestions: string;
313
+ };
314
+
315
+ declare class CreateQuestionDto {
316
+ questionId: string;
317
+ question: string;
318
+ questionFor: string;
319
+ options: string;
320
+ isActive: boolean;
348
321
  }
349
322
 
350
- declare enum ApplicationStatusEnum {
351
- PENDING = "PENDING",
352
- SHORTLISTED = "SHORTLISTED",
353
- INTERVIEW_IN_PROGRESS = "INTERVIEW_IN_PROGRESS",
354
- INTERVIEWED = "INTERVIEWED",
355
- OFFERED = "OFFERED",
356
- HIRED = "HIRED",
357
- REJECTED_BEFORE_INTERVIEW = "REJECTED_BEFORE_INTERVIEW",
358
- REJECTED_IN_INTERVIEW = "REJECTED_IN_INTERVIEW",
359
- REJECTED_AFTER_INTERVIEW = "REJECTED_AFTER_INTERVIEW",
360
- NOT_SUITABLE = "NOT_SUITABLE",
361
- WITHDRAWN = "WITHDRAWN"
323
+ interface IFetchQuestionQuery {
324
+ page_size?: number;
325
+ page: number;
326
+ searchText?: string;
327
+ question: string;
328
+ right: string;
329
+ sortColumn?: string;
330
+ sortBy?: string;
331
+ type?: string;
362
332
  }
363
- declare class JobApplication extends BaseEntity {
364
- jobApplicationId: string;
365
- jobId: number;
366
- job: Job;
367
- userId: number;
368
- user: User;
369
- status: ApplicationStatusEnum;
370
- appliedAt: Date;
371
- shortlistedAt: Date;
372
- interviewStartedAt: Date;
373
- interviewCompletedAt: Date;
374
- offeredAt: Date;
375
- hiredAt: Date;
376
- rejectedAt: Date;
377
- rejectionReason: string;
378
- withdrawnAt: Date;
379
- withdrawnReason: string;
333
+ interface IFetchQuestionResponse {
334
+ statusCode: number;
335
+ status: boolean;
336
+ message: string;
337
+ data: any;
380
338
  }
381
339
 
382
- declare enum JobLocationEnum {
340
+ declare const JOB_ROLE_PATTERN: {
341
+ fetchJobRolesForDropdown: string;
342
+ };
343
+ declare const JOB_PATTERN: {
344
+ fetchJobs: string;
345
+ fetchJobCountAsPerStatus: string;
346
+ fetchJobsDropdown: string;
347
+ fetchJobDetail: string;
348
+ handleJdUpload: string;
349
+ fetchJobBasicInformation: string;
350
+ createJobBasicInformation: string;
351
+ updateJobBasicInformation: string;
352
+ fetchJobAdditionalComments: string;
353
+ updateJobAdditionalComments: string;
354
+ fetchJobDescription: string;
355
+ updateJobDescription: string;
356
+ updateJobStatus: string;
357
+ searchJobsByRoleAndSkills: string;
358
+ };
359
+
360
+ declare enum JobLocation {
383
361
  ONSITE = "ONSITE",
384
362
  REMOTE = "REMOTE",
385
363
  BOTH = "BOTH"
386
364
  }
387
- declare enum TypeOfEmploymentEnum {
365
+ declare enum EmploymentType {
388
366
  FULLTIME = "FULLTIME",
389
367
  PARTTIME = "PARTTIME",
390
368
  BOTH = "BOTH"
391
369
  }
392
- declare enum Step {
393
- BASIC_INFORMATION = "BASIC_INFORMATION",
394
- ADDITIONAL_COMMENTS = "ADDITIONAL_COMMENTS",
395
- JOB_DESCRIPTION = "JOB_DESCRIPTION"
370
+ declare class JobBasicInformationDto {
371
+ jobRole: string;
372
+ note?: string;
373
+ skills: number[];
374
+ openings: number;
375
+ location: JobLocation;
376
+ typeOfEmployment: EmploymentType;
377
+ expectedSalaryFrom: number;
378
+ expectedSalaryTo: number;
379
+ onboardingTat?: string;
380
+ candidateCommunicationSkills?: string;
396
381
  }
397
- declare enum JobStatusEnum {
382
+
383
+ declare class JobAdditionalCommentDto {
384
+ additionalComment?: string;
385
+ }
386
+
387
+ declare class JobDescriptionDto {
388
+ description: string;
389
+ }
390
+
391
+ declare enum JobStatus {
398
392
  ACTIVE = "ACTIVE",
399
393
  OPEN = "OPEN",
400
394
  DRAFT = "DRAFT",
401
395
  ONHOLD = "ONHOLD",
402
396
  CLOSED = "CLOSED"
403
397
  }
404
- declare enum DurationTypeEnum {
405
- DAY = "DAY",
406
- WEEK = "WEEK",
407
- MONTH = "MONTH",
408
- YEAR = "YEAR"
398
+ declare class JobStatusDto {
399
+ status: JobStatus;
409
400
  }
410
- declare class Job extends BaseEntity {
411
- jobId: string;
412
- userId: number;
413
- user: User;
414
- jobRole: string;
415
- note: string;
416
- openings: number;
417
- location: JobLocationEnum;
418
- typeOfEmployment: TypeOfEmploymentEnum;
419
- currency: string;
420
- expectedSalaryFrom: number;
421
- expectedSalaryTo: number;
422
- tentativeStartDate: Date;
423
- duration: string;
424
- durationType: DurationTypeEnum;
425
- description: string;
426
- additionalComment: string;
427
- onboardingTat: string;
428
- candidateCommunicationSkills: string;
429
- stepCompleted: Step;
430
- status: JobStatusEnum;
431
- jobSkills: JobSkill[];
432
- jobApplications: JobApplication[];
401
+
402
+ declare class JobIdParamDto {
403
+ id: string;
433
404
  }
434
405
 
435
- declare enum BankAccountTypeEnum {
436
- PRIMARY = "PRIMARY",
437
- SECONDARY = "SECONDARY"
406
+ declare const PROFILE_PATTERN: {
407
+ fetchFreelancerProfile: string;
408
+ changeFreelancerPassword: string;
409
+ uploadFreelancerProfilePic: string;
410
+ updateFreelancerProfile: string;
411
+ };
412
+
413
+ declare class FreelancerChangePasswordDto {
414
+ oldPassword: string;
415
+ newPassword: string;
438
416
  }
439
- declare enum BankAccountScopeEnum {
417
+
418
+ declare enum NatureOfWorkDto {
419
+ FULLTIME = "FULLTIME",
420
+ PARTTIME = "PARTTIME",
421
+ BOTH = "BOTH"
422
+ }
423
+ declare class UpdateFreelancerProfileDto {
424
+ firstName?: string;
425
+ lastName?: string;
426
+ email?: string;
427
+ mobile?: string;
428
+ countryId?: number;
429
+ currency?: string;
430
+ expectedHourlyCompensation?: string;
431
+ natureOfWork: NatureOfWorkDto;
432
+ portfolioLink?: string;
433
+ address?: string;
434
+ about?: string;
435
+ linkedinProfileLink?: string;
436
+ kaggleProfileLink?: string;
437
+ githubProfileLink?: string;
438
+ stackOverflowProfileLink?: string;
439
+ }
440
+
441
+ declare const BANK_PATTERN: {
442
+ addFreelancerBankDetails: string;
443
+ fetchFreelancerBankDetails: string;
444
+ updateFreelancerBankDetails: string;
445
+ };
446
+
447
+ declare enum BankAccountScope {
440
448
  DOMESTIC = "DOMESTIC",
441
449
  INTERNATIONAL = "INTERNATIONAL"
442
450
  }
443
- declare class BankDetail extends BaseEntity {
444
- userId: number;
445
- user: User;
451
+ declare class FreelancerBankDetailsDto {
446
452
  name: string;
447
453
  mobile: string;
448
454
  email: string;
449
455
  address: string;
450
456
  accountNumber: string;
451
457
  bankName: string;
452
- ifscCode: string;
453
458
  branchName: string;
459
+ ifscCode: string;
454
460
  routingNo: string;
455
461
  abaNumber: string;
456
462
  iban: string;
457
- accountType: BankAccountTypeEnum;
458
- accountScope: BankAccountScopeEnum;
463
+ accountType: string;
464
+ accountScope: BankAccountScope;
459
465
  }
460
466
 
461
- declare class SystemPreference extends BaseEntity {
462
- userId: number;
463
- user: User;
464
- key: string;
467
+ declare const PLAN_PATTERN: {
468
+ fetchPlans: string;
469
+ };
470
+
471
+ interface IFetchPlanResponse {
472
+ statusCode: number;
473
+ status: boolean;
474
+ message: string;
475
+ data: any;
476
+ }
477
+
478
+ declare const SYSTEM_PREFERENCES_PATTERN: {
479
+ fetchSystemPreference: string;
480
+ updateSystemPreference: string;
481
+ createSystemPreference: string;
482
+ };
483
+
484
+ declare enum SystemPreferenceKey {
485
+ EMAIL_NOTIFICATION = "EMAIL_NOTIFICATION",
486
+ DARK_MODE = "DARK_MODE"
487
+ }
488
+ declare class SystemPreferenceDto {
465
489
  value: boolean;
490
+ key: SystemPreferenceKey;
466
491
  }
467
492
 
468
- declare enum RatingTypeEnum {
469
- FREELANCER_TO_CLIENT = "FREELANCER_TO_CLIENT",
470
- CLIENT_TO_FREELANCER = "CLIENT_TO_FREELANCER"
493
+ declare const NOTIFICATION_PATTERN: {
494
+ handleAccountVerificationNotification: string;
495
+ handleResetLinkNotification: string;
496
+ };
497
+
498
+ declare const RATING_PATTERN: {
499
+ addRating: string;
500
+ fetchRating: string;
501
+ };
502
+
503
+ declare abstract class BaseEntity {
504
+ id: number;
505
+ uuid: string;
506
+ createdAt: Date;
507
+ createdBy: number;
508
+ updatedAt: Date;
509
+ updatedBy: number;
510
+ isDeleted: boolean;
511
+ deletedBy: number;
512
+ deletedAt: Date;
471
513
  }
472
- declare class Rating extends BaseEntity {
473
- reviewer_id: number;
474
- reviewer: User;
475
- reviewee_id: number;
476
- reviewee: User;
477
- ratingType: RatingTypeEnum;
478
- rating: number;
479
- review: string;
514
+
515
+ declare class RefreshToken {
516
+ id: string;
517
+ userId: number;
518
+ tokenId: string;
519
+ deviceInfo: any;
520
+ isRevoked: boolean;
521
+ expiresAt: Date;
522
+ createdAt: Date;
523
+ updatedAt: Date;
524
+ user: User;
480
525
  }
481
526
 
482
- declare class CompanyRole extends BaseEntity {
527
+ declare class SenseloafLog {
528
+ id: number;
483
529
  userId: number;
530
+ type: string;
531
+ endpoint: string;
532
+ success: boolean;
533
+ request: any;
534
+ response: any;
535
+ errorMessage: string;
536
+ scope: string;
537
+ createdAt: Date;
484
538
  user: User;
485
- name: string;
486
- slug: string;
487
- description: string;
488
- isActive: boolean;
489
539
  }
490
540
 
491
- declare class FreelancerExperience extends BaseEntity {
541
+ declare class Otp {
542
+ id: number;
492
543
  userId: number;
544
+ otp: string;
545
+ otpPurpose: string;
546
+ target: string;
547
+ expiresAt: Date;
548
+ isUsed: boolean;
549
+ resendCount: number;
550
+ createdAt: Date;
493
551
  user: User;
494
- companyName: string;
495
- designation: string;
496
- jobDuration: string;
497
- description: string;
498
552
  }
499
553
 
500
- declare enum AccountType {
501
- ADMIN = "ADMIN",
502
- SUB_ADMIN = "SUB_ADMIN",
503
- CLIENT = "CLIENT",
504
- FREELANCER = "FREELANCER"
554
+ declare enum NatureOfWork {
555
+ FULLTIME = "FULLTIME",
556
+ PARTTIME = "PARTTIME",
557
+ BOTH = "BOTH"
505
558
  }
506
- declare enum AccountStatus {
507
- INACTIVE = "INACTIVE",
508
- ACTIVE = "ACTIVE",
509
- SUSPENDED = "SUSPENDED",
510
- BLOCKED = "BLOCKED"
559
+ declare enum ModeOfWork {
560
+ ONSITE = "ONSITE",
561
+ REMOTE = "REMOTE",
562
+ BOTH = "BOTH"
511
563
  }
512
- declare enum Provider {
513
- LINKEDIN = "LINKEDIN",
514
- GOOGLE = "GOOGLE",
515
- GITLABS = "GITLABS"
564
+ declare enum OnboardingStepEnum {
565
+ SIGN_UP = "SIGN_UP",
566
+ OTP_VERIFIED = "OTP_VERIFIED",
567
+ UPLOAD_RESUME = "UPLOAD_RESUME",
568
+ AI_VIDEO_ASSESMENT = "AI_VIDEO_ASSESMENT",
569
+ CODING_CHALLENGE = "CODING_CHALLENGE",
570
+ PROFILE_COMPLETION = "PROFILE_COMPLETION"
516
571
  }
517
- declare class User extends BaseEntity {
518
- uniqueId: string;
519
- parentId: number;
520
- parent: User;
521
- children: User[];
522
- username: string;
523
- firstName: string;
524
- lastName: string;
525
- dateOfBirth: Date;
526
- gender: string;
527
- profilePictureUrl: string;
528
- email: string;
529
- mobileCode: string;
530
- mobile: string;
531
- password: string;
532
- accountType: AccountType;
533
- accountStatus: AccountStatus;
534
- isEmailVerified: boolean;
535
- isMobileVerified: boolean;
536
- lastLoginAt: Date;
537
- lastLoginIp: string;
538
- resetToken: string | null;
539
- resetTokenExpireAt: Date | null;
540
- refreshTokens: RefreshToken[];
541
- provider: Provider;
542
- providerToken: string;
543
- linkedInId: string;
544
- googleId: string;
545
- gitLabsId: string;
546
- otps: Otp[];
547
- senseloafLogs: SenseloafLog[];
548
- freelancerProfile: FreelancerProfile;
549
- companyProfile: CompanyProfile;
550
- jobs: Job[];
551
- bankDetail: BankDetail[];
552
- systemPreference: SystemPreference[];
553
- givenRatings: Rating[];
554
- receivedRatings: Rating[];
555
- jobApplications: JobApplication[];
556
- companyRole: CompanyRole[];
557
- freelancerExperience: FreelancerExperience;
572
+ declare class FreelancerProfile extends BaseEntity {
573
+ userId: number;
574
+ user: User;
575
+ resumeUrl: string;
576
+ resumeData: string;
577
+ isDeveloper: boolean;
578
+ natureOfWork: NatureOfWork;
579
+ currency: string;
580
+ expectedHourlyCompensation: number;
581
+ modeOfWork: ModeOfWork;
582
+ availabilityToJoin: string;
583
+ isImmediateJoiner: boolean;
584
+ linkedinProfileLink: string;
585
+ kaggleProfileLink: string;
586
+ githubProfileLink: string;
587
+ stackOverflowProfileLink: string;
588
+ portfolioLink: string;
589
+ onboardingStepCompleted: OnboardingStepEnum;
590
+ countryId: number;
591
+ address: string;
592
+ about: string;
558
593
  }
559
594
 
560
595
  declare enum KindOfHire {
@@ -590,270 +625,229 @@ declare class CompanyProfile extends BaseEntity {
590
625
  foundUsOn: FromUsOn;
591
626
  }
592
627
 
593
- declare class UpdateCompanyProfileDto {
594
- companyName?: string;
595
- bio?: string;
596
- webSite?: string;
597
- aboutCompany?: string;
598
- isServiceAgreementSigned?: boolean;
599
- companyAddress?: string;
600
- phoneNumber?: string;
601
- skills?: string[];
602
- requiredFreelancer?: string;
603
- kindOfHiring?: KindOfHire;
604
- modeOfHire?: ModeOfHire;
605
- foundUsOn?: FromUsOn;
606
- }
607
-
608
- declare class ClientChangePasswordDto {
609
- oldPassword: string;
610
- newPassword: string;
611
- }
612
-
613
- interface IFetchClientProfileQuery {
614
- page_size?: number;
615
- page: number;
616
- searchText?: string;
617
- companyName: string;
618
- right: string;
619
- sortColumn?: string;
620
- sortBy?: string;
621
- }
622
- interface IFetchClientProfileResponse {
623
- statusCode: number;
624
- status: boolean;
625
- message: string;
626
- data: any;
627
- }
628
- interface IUpdateClientProfilePayload {
629
- userId?: number;
630
- companyName?: string;
631
- bio?: string;
632
- webSite?: string;
633
- isServiceAgreementSigned?: boolean;
634
- aboutCompany: string;
635
- companyAddress: string;
636
- phoneNumber: string;
637
- skills?: string[];
638
- requiredFreelancer?: string;
639
- kindOfHiring?: string;
640
- modeOfHire?: string;
641
- foundUsOn?: string;
642
- }
643
- interface IUpdateClientLogoPayload {
644
- logo: string;
645
- }
646
- interface IUpdateClientLogoResponse {
647
- statusCode: number;
648
- status: boolean;
649
- message: string;
650
- }
651
- interface IUpdateClientPasswordPayload {
652
- oldPassword: string;
653
- newPassword: string;
654
- }
655
- interface IUpdateClientProfileResponse {
656
- statusCode: number;
657
- status: boolean;
658
- message: string;
659
- }
660
- interface IUpdateClientProfileResponse {
661
- statusCode: number;
662
- status: boolean;
663
- message: string;
664
- }
665
-
666
- declare const QUESTION_PATTERN: {
667
- fetchQuestions: string;
668
- };
669
-
670
- declare class CreateQuestionDto {
671
- questionId: string;
672
- question: string;
673
- questionFor: string;
674
- options: string;
628
+ declare class Skill extends BaseEntity {
629
+ name: string;
630
+ slug: string;
675
631
  isActive: boolean;
632
+ jobSkills: JobSkill[];
676
633
  }
677
634
 
678
- interface IFetchQuestionQuery {
679
- page_size?: number;
680
- page: number;
681
- searchText?: string;
682
- question: string;
683
- right: string;
684
- sortColumn?: string;
685
- sortBy?: string;
686
- type?: string;
687
- }
688
- interface IFetchQuestionResponse {
689
- statusCode: number;
690
- status: boolean;
691
- message: string;
692
- data: any;
635
+ declare class JobSkill extends BaseEntity {
636
+ jobId: number;
637
+ job: Job;
638
+ skillId: number;
639
+ skill: Skill;
693
640
  }
694
641
 
695
- declare const JOB_ROLE_PATTERN: {
696
- fetchJobRolesForDropdown: string;
697
- };
698
- declare const JOB_PATTERN: {
699
- fetchJobs: string;
700
- fetchJobCountAsPerStatus: string;
701
- fetchJobsDropdown: string;
702
- fetchJobDetail: string;
703
- handleJdUpload: string;
704
- fetchJobBasicInformation: string;
705
- createJobBasicInformation: string;
706
- updateJobBasicInformation: string;
707
- fetchJobAdditionalComments: string;
708
- updateJobAdditionalComments: string;
709
- fetchJobDescription: string;
710
- updateJobDescription: string;
711
- updateJobStatus: string;
712
- searchJobsByRoleAndSkills: string;
713
- };
642
+ declare enum ApplicationStatusEnum {
643
+ PENDING = "PENDING",
644
+ SHORTLISTED = "SHORTLISTED",
645
+ INTERVIEW_IN_PROGRESS = "INTERVIEW_IN_PROGRESS",
646
+ INTERVIEWED = "INTERVIEWED",
647
+ OFFERED = "OFFERED",
648
+ HIRED = "HIRED",
649
+ REJECTED_BEFORE_INTERVIEW = "REJECTED_BEFORE_INTERVIEW",
650
+ REJECTED_IN_INTERVIEW = "REJECTED_IN_INTERVIEW",
651
+ REJECTED_AFTER_INTERVIEW = "REJECTED_AFTER_INTERVIEW",
652
+ NOT_SUITABLE = "NOT_SUITABLE",
653
+ WITHDRAWN = "WITHDRAWN"
654
+ }
655
+ declare class JobApplication extends BaseEntity {
656
+ jobApplicationId: string;
657
+ jobId: number;
658
+ job: Job;
659
+ userId: number;
660
+ user: User;
661
+ status: ApplicationStatusEnum;
662
+ appliedAt: Date;
663
+ shortlistedAt: Date;
664
+ interviewStartedAt: Date;
665
+ interviewCompletedAt: Date;
666
+ offeredAt: Date;
667
+ hiredAt: Date;
668
+ rejectedAt: Date;
669
+ rejectionReason: string;
670
+ withdrawnAt: Date;
671
+ withdrawnReason: string;
672
+ }
714
673
 
715
- declare enum JobLocation {
674
+ declare enum JobLocationEnum {
716
675
  ONSITE = "ONSITE",
717
676
  REMOTE = "REMOTE",
718
677
  BOTH = "BOTH"
719
678
  }
720
- declare enum EmploymentType {
679
+ declare enum TypeOfEmploymentEnum {
721
680
  FULLTIME = "FULLTIME",
722
681
  PARTTIME = "PARTTIME",
723
682
  BOTH = "BOTH"
724
683
  }
725
- declare class JobBasicInformationDto {
726
- jobRole: string;
727
- note?: string;
728
- skills: number[];
729
- openings: number;
730
- location: JobLocation;
731
- typeOfEmployment: EmploymentType;
732
- expectedSalaryFrom: number;
733
- expectedSalaryTo: number;
734
- onboardingTat?: string;
735
- candidateCommunicationSkills?: string;
736
- }
737
-
738
- declare class JobAdditionalCommentDto {
739
- additionalComment?: string;
740
- }
741
-
742
- declare class JobDescriptionDto {
743
- description: string;
684
+ declare enum Step {
685
+ BASIC_INFORMATION = "BASIC_INFORMATION",
686
+ ADDITIONAL_COMMENTS = "ADDITIONAL_COMMENTS",
687
+ JOB_DESCRIPTION = "JOB_DESCRIPTION"
744
688
  }
745
-
746
- declare enum JobStatus {
689
+ declare enum JobStatusEnum {
747
690
  ACTIVE = "ACTIVE",
748
691
  OPEN = "OPEN",
749
692
  DRAFT = "DRAFT",
750
693
  ONHOLD = "ONHOLD",
751
694
  CLOSED = "CLOSED"
752
695
  }
753
- declare class JobStatusDto {
754
- status: JobStatus;
755
- }
756
-
757
- declare class JobIdParamDto {
758
- id: string;
696
+ declare enum DurationTypeEnum {
697
+ DAY = "DAY",
698
+ WEEK = "WEEK",
699
+ MONTH = "MONTH",
700
+ YEAR = "YEAR"
759
701
  }
760
-
761
- declare const PROFILE_PATTERN: {
762
- fetchFreelancerProfile: string;
763
- changeFreelancerPassword: string;
764
- uploadFreelancerProfilePic: string;
765
- updateFreelancerProfile: string;
766
- };
767
-
768
- declare class FreelancerChangePasswordDto {
769
- oldPassword: string;
770
- newPassword: string;
702
+ declare class Job extends BaseEntity {
703
+ jobId: string;
704
+ userId: number;
705
+ user: User;
706
+ jobRole: string;
707
+ note: string;
708
+ openings: number;
709
+ location: JobLocationEnum;
710
+ typeOfEmployment: TypeOfEmploymentEnum;
711
+ currency: string;
712
+ expectedSalaryFrom: number;
713
+ expectedSalaryTo: number;
714
+ tentativeStartDate: Date;
715
+ duration: string;
716
+ durationType: DurationTypeEnum;
717
+ description: string;
718
+ additionalComment: string;
719
+ onboardingTat: string;
720
+ candidateCommunicationSkills: string;
721
+ stepCompleted: Step;
722
+ status: JobStatusEnum;
723
+ jobSkills: JobSkill[];
724
+ jobApplications: JobApplication[];
771
725
  }
772
726
 
773
- declare enum NatureOfWorkDto {
774
- FULLTIME = "FULLTIME",
775
- PARTTIME = "PARTTIME",
776
- BOTH = "BOTH"
777
- }
778
- declare class UpdateFreelancerProfileDto {
779
- firstName?: string;
780
- lastName?: string;
781
- email?: string;
782
- mobile?: string;
783
- countryId?: number;
784
- currency?: string;
785
- expectedHourlyCompensation?: string;
786
- natureOfWork: NatureOfWorkDto;
787
- portfolioLink?: string;
788
- address?: string;
789
- about?: string;
790
- linkedinProfileLink?: string;
791
- kaggleProfileLink?: string;
792
- githubProfileLink?: string;
793
- stackOverflowProfileLink?: string;
727
+ declare enum BankAccountTypeEnum {
728
+ PRIMARY = "PRIMARY",
729
+ SECONDARY = "SECONDARY"
794
730
  }
795
-
796
- declare const BANK_PATTERN: {
797
- addFreelancerBankDetails: string;
798
- fetchFreelancerBankDetails: string;
799
- updateFreelancerBankDetails: string;
800
- };
801
-
802
- declare enum BankAccountScope {
731
+ declare enum BankAccountScopeEnum {
803
732
  DOMESTIC = "DOMESTIC",
804
733
  INTERNATIONAL = "INTERNATIONAL"
805
734
  }
806
- declare class FreelancerBankDetailsDto {
735
+ declare class BankDetail extends BaseEntity {
736
+ userId: number;
737
+ user: User;
807
738
  name: string;
808
739
  mobile: string;
809
740
  email: string;
810
741
  address: string;
811
742
  accountNumber: string;
812
743
  bankName: string;
813
- branchName: string;
814
744
  ifscCode: string;
745
+ branchName: string;
815
746
  routingNo: string;
816
747
  abaNumber: string;
817
748
  iban: string;
818
- accountType: string;
819
- accountScope: BankAccountScope;
749
+ accountType: BankAccountTypeEnum;
750
+ accountScope: BankAccountScopeEnum;
820
751
  }
821
752
 
822
- declare const PLAN_PATTERN: {
823
- fetchPlans: string;
824
- };
753
+ declare class SystemPreference extends BaseEntity {
754
+ userId: number;
755
+ user: User;
756
+ key: string;
757
+ value: boolean;
758
+ }
825
759
 
826
- interface IFetchPlanResponse {
827
- statusCode: number;
828
- status: boolean;
829
- message: string;
830
- data: any;
760
+ declare class CompanyRole extends BaseEntity {
761
+ userId: number;
762
+ user: User;
763
+ name: string;
764
+ slug: string;
765
+ description: string;
766
+ isActive: boolean;
831
767
  }
832
768
 
833
- declare const SYSTEM_PREFERENCES_PATTERN: {
834
- fetchSystemPreference: string;
835
- updateSystemPreference: string;
836
- createSystemPreference: string;
837
- };
769
+ declare class FreelancerExperience extends BaseEntity {
770
+ userId: number;
771
+ user: User;
772
+ companyName: string;
773
+ designation: string;
774
+ jobDuration: string;
775
+ description: string;
776
+ }
838
777
 
839
- declare enum SystemPreferenceKey {
840
- EMAIL_NOTIFICATION = "EMAIL_NOTIFICATION",
841
- DARK_MODE = "DARK_MODE"
778
+ declare enum AccountType {
779
+ ADMIN = "ADMIN",
780
+ SUB_ADMIN = "SUB_ADMIN",
781
+ CLIENT = "CLIENT",
782
+ FREELANCER = "FREELANCER"
842
783
  }
843
- declare class SystemPreferenceDto {
844
- value: boolean;
845
- key: SystemPreferenceKey;
784
+ declare enum AccountStatus {
785
+ INACTIVE = "INACTIVE",
786
+ ACTIVE = "ACTIVE",
787
+ SUSPENDED = "SUSPENDED",
788
+ BLOCKED = "BLOCKED"
789
+ }
790
+ declare enum Provider {
791
+ LINKEDIN = "LINKEDIN",
792
+ GOOGLE = "GOOGLE",
793
+ GITLABS = "GITLABS"
794
+ }
795
+ declare class User extends BaseEntity {
796
+ uniqueId: string;
797
+ parentId: number;
798
+ parent: User;
799
+ children: User[];
800
+ username: string;
801
+ firstName: string;
802
+ lastName: string;
803
+ dateOfBirth: Date;
804
+ gender: string;
805
+ profilePictureUrl: string;
806
+ email: string;
807
+ mobileCode: string;
808
+ mobile: string;
809
+ password: string;
810
+ accountType: AccountType;
811
+ accountStatus: AccountStatus;
812
+ isEmailVerified: boolean;
813
+ isMobileVerified: boolean;
814
+ lastLoginAt: Date;
815
+ lastLoginIp: string;
816
+ resetToken: string | null;
817
+ resetTokenExpireAt: Date | null;
818
+ refreshTokens: RefreshToken[];
819
+ provider: Provider;
820
+ providerToken: string;
821
+ linkedInId: string;
822
+ googleId: string;
823
+ gitLabsId: string;
824
+ otps: Otp[];
825
+ senseloafLogs: SenseloafLog[];
826
+ freelancerProfile: FreelancerProfile;
827
+ companyProfile: CompanyProfile;
828
+ jobs: Job[];
829
+ bankDetail: BankDetail[];
830
+ systemPreference: SystemPreference[];
831
+ givenRatings: Rating[];
832
+ receivedRatings: Rating[];
833
+ jobApplications: JobApplication[];
834
+ companyRole: CompanyRole[];
835
+ freelancerExperience: FreelancerExperience;
846
836
  }
847
837
 
848
- declare const NOTIFICATION_PATTERN: {
849
- handleAccountVerificationNotification: string;
850
- handleResetLinkNotification: string;
851
- };
852
-
853
- declare const RATING_PATTERN: {
854
- addRating: string;
855
- fetchRating: string;
856
- };
838
+ declare enum RatingTypeEnum {
839
+ FREELANCER_TO_CLIENT = "FREELANCER_TO_CLIENT",
840
+ CLIENT_TO_FREELANCER = "CLIENT_TO_FREELANCER"
841
+ }
842
+ declare class Rating extends BaseEntity {
843
+ reviewer_id: number;
844
+ reviewer: User;
845
+ reviewee_id: number;
846
+ reviewee: User;
847
+ ratingType: RatingTypeEnum;
848
+ rating: number;
849
+ review: string;
850
+ }
857
851
 
858
852
  declare class CreateRatingDto {
859
853
  revieweeId: number;