import { DatePipe } from '@angular/common';
import { OnInit, ElementRef } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { UserProfileService } from '../../services/user-profile.service';
import { ConfigurationsService } from '@sunbird-cb/utils-v2';
import { ProfileV2Service } from '../../services/profile-v2.service';
import { OtpService } from '../../services/otp.service';
import { NPSGridService } from '../../services/nps-grid.service';
import { MatLegacyDialogRef as MatDialogRef } from '@angular/material/legacy-dialog';
import { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';
import { TranslateService } from '@ngx-translate/core';
import * as i0 from "@angular/core";
export declare class EnrollProfileFormComponent implements OnInit {
    private snackBar;
    dialogRef: MatDialogRef<EnrollProfileFormComponent>;
    private userProfileService;
    private configSrc;
    private profileV2Svc;
    private otpService;
    private npsSvc;
    private translateService;
    private datePipe;
    data: any;
    afterSubmitAction: any;
    isReadOnly: boolean;
    batchDetails: any;
    customForm: boolean;
    userDetailsForm: FormGroup;
    groupData: any | undefined;
    private destroySubject$;
    designationsMeta: any;
    eUserGender: string[];
    masterLanguages: any;
    masterLanguageBackup: any;
    eCategory: string[];
    userProfileObject: any;
    eligible: boolean;
    isCadreStatus: boolean;
    showBatchForNoCadre: boolean;
    civilServiceData: any;
    civilServiceTypes: any;
    serviceName: any;
    serviceType: any;
    serviceListData: any;
    serviceId: any;
    errorMessage: any;
    selectedServiceName: any;
    selectedService: any;
    civilServiceName: any;
    civilServiceId: any;
    cadreId: any;
    cadre: any;
    cadreControllingAuthority: any;
    startBatch: any;
    endBatch: any;
    yearArray: any;
    exclusionYear: any;
    selectedCadreName: any;
    selectedCadre: any;
    verifyMobile: boolean;
    otpSent: boolean;
    emailOtpSent: boolean;
    otpEntered: string;
    mVerified: boolean;
    eVerified: boolean;
    timerDiv: any;
    emailTimerDiv: any;
    timeLeft: number;
    emailTimeLeft: number;
    interval: any;
    emailInterval: any;
    showResendOTP: boolean;
    showEmailResendOTP: boolean;
    otpForm: FormGroup;
    emailOtpForm: FormGroup;
    showname: boolean;
    showDesignation: boolean;
    showGroup: boolean;
    showEmployeeCode: boolean;
    showMobile: boolean;
    showGender: boolean;
    showDob: boolean;
    showCategory: boolean;
    showDecimalMedium: boolean;
    showPinCode: boolean;
    showCadreDetails: boolean;
    updateProfile: boolean;
    pendingFileds: any;
    pGroup: any;
    pDesignation: any;
    isLoading: boolean;
    canShowEmployeeCode: boolean;
    canshowMobile: boolean;
    canShowGender: boolean;
    canShowDob: boolean;
    canShowDomicileMedium: boolean;
    canShowCategory: boolean;
    canShowpinCode: boolean;
    canShowshowCadreDetails: boolean;
    canShowGroup: boolean;
    canShowDesignation: boolean;
    selectedDate: any;
    showCounter: number;
    disableCounter: number;
    canShowEmail: boolean;
    showEmail: boolean;
    canShowName: boolean;
    canShowOrg: boolean;
    showOrg: boolean;
    surveyId: any;
    showDoptChanges: boolean;
    profileFormType: any;
    verifyEmail: boolean;
    approvedDomainList: any;
    contextToken: any;
    verifiedEmailOtp: string;
    verifiedPhoneOtp: string;
    currentDate: Date;
    openDesignationDropdown: boolean;
    openLanguageDropdown: boolean;
    canShowOtherDesignation: boolean;
    designationListLoadCount: number;
    addLoader: number;
    isLoadingMoreDesignations: boolean;
    designationDefaultLoadCount: number;
    desigantionFilterEnable: boolean;
    organisationId: string;
    selectedOrgHasDesignations: boolean;
    designationsOffset: number;
    designationSearchText: string;
    designationsTotalCount: number;
    formId: string;
    formsDetils: any;
    textBox: ElementRef;
    dropdown: ElementRef;
    languageTextBox: ElementRef;
    languageDropdown: ElementRef;
    constructor(snackBar: MatSnackBar, dialogRef: MatDialogRef<EnrollProfileFormComponent>, userProfileService: UserProfileService, configSrc: ConfigurationsService, profileV2Svc: ProfileV2Service, otpService: OtpService, npsSvc: NPSGridService, translateService: TranslateService, datePipe: DatePipe, data: any);
    scrollToActive(type: any): void;
    handleClickOutside(event: MouseEvent): void;
    onDesignationsFocus(): void;
    onLanguageFocus(): void;
    filterLanguage(value: any): void;
    preventBlur(event: MouseEvent): void;
    preventLanguageBlur(event: MouseEvent): void;
    selectDesignation(designation: any): void;
    selectLanguage(language: any): void;
    isEmailAllowed(email: string): boolean;
    handleGenerateEmailOTP(verifyType?: any): void;
    handleGenerateOTP(verifyType?: string): void;
    handleResendOTP(): void;
    handleResendEmailOTP(): void;
    verifyEmailOTP(): void;
    verifyMobileOTP(): void;
    startTimer(): void;
    startEmailTimer(): void;
    checkAfterSubmit(_e: any): void;
    closePopup(): void;
    private openSnackbar;
    ngOnInit(): void;
    getFormDetails(): void;
    setValueChangeFunctions(): void;
    fetchCadreData(): void;
    getIsCadreStatus(value: boolean): void;
    getAllErrors(): string[];
    addValidators(): void;
    removeValidators(): void;
    getService(event: any): void;
    onServiceSelect(event: any): void;
    onCadreSelect(event: any): void;
    getPendingDetails(): void;
    defineFormAttributes(): void;
    findAttr(customAttr: any, fName: any): any;
    findInProfile(attr: string): any;
    getGroupData(): void;
    handleTranslateTo(menuName: string): string;
    checkSelectedOrgHasDesignations(): void;
    getdesignationsMeta(): void;
    private getIgotDesignations;
    private getDefaultDesignations;
    getMasterLanguage(): void;
    handleEmpty(type: string): void;
    onSubmitForm(form: any): void;
    submitProfile(payload: any): void;
    submitSurevy(status: any): void;
    generateProfilePayload(): any;
    formatDate(_dob: string | Date): string;
    getQuestionId(fieldName: string): string;
    genereateSurveyPayload(status: any): any;
    updateEmail(email: string): void;
    setupScrollListener(opened: boolean): void;
    onDesignationSelectScroll(event: any): void;
    checkCurrentDesignationPresent(): void;
    onDesignationDropdownClosed(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<EnrollProfileFormComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EnrollProfileFormComponent, "ws-app-enroll-profile-form", never, {}, {}, never, never, false, never>;
}
//# sourceMappingURL=enroll-profile-form.component.d.ts.map