import { EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { MessageService, PrimeNGConfig } from 'primeng/api'; import { ContactService, GenericOption, UserCoreService, UserProfileProperty } from '@cas-hub/acabim-common-client'; import { ContactTypeService } from '../../../_services/contact-type-service'; import { ContactOrganisationsService } from '../../../_services/contact-organisations-service'; import { FormGroup } from '@angular/forms'; import { Observable } from 'rxjs'; import { ContactMethods, ContactNames, ContactParcel, ContactSimple } from '../../../_models/contact-details.model'; import { ContactSetterService } from '../../../_services/contact-setter.service'; import { GenericPair } from '../../../_models/generic.model'; import { Contact } from '@cas-hub/acabim-common-client/lib/_models/user.model'; import * as i0 from "@angular/core"; export declare class AddContactComponent implements OnInit, OnDestroy { private readonly contactService; private readonly contactOrganisationsService; private readonly contactSetterService; private readonly contactTypeService; private readonly messageService; private readonly primengConfig; private readonly userCoreService; set loadContact(contactId: number); submit: EventEmitter; private contactOrgSub; private contactTypeSub; addContactForm: FormGroup | null; addPrimaryContact: boolean; allOrganisations: { label: string; value: string; }[]; contactDetailsForm: FormGroup | null; contactInvitation: boolean; contactNames: ContactNames; contactOrganisationPropertiesForm: FormGroup | null; contactTypes: { label: string; value: string; }[]; displayAddEmailModal: boolean; displayAddPhoneModal: boolean; emails: ContactMethods[]; editEmail: ContactMethods | null; editPhone: ContactMethods | null; existingContact: Contact | null; existingContactId: string | null; gatheredData: ContactParcel | null; inviteContact: boolean; invitePrimaryContact: boolean; isLoading: boolean; isOrganisation: boolean; members: GenericPair[]; organisationAttributes: string[]; organisationAttributesInput: any[]; organisationContactForm: FormGroup | null; organisationContacts: ContactSimple[]; organisationDetailsForm: FormGroup | null; organisationName: string; organisationProperties: string[]; organisationPropertiesInput: any[]; phones: ContactMethods[]; previousStepNumbers: number[]; processing: boolean; roleOptions: GenericOption[]; selectedMember: boolean; selectedNewMember: boolean; stepNumber: number; stepOneForm: FormGroup | null; stepThreeForm: FormGroup | null; success: { present: string; past: string; }; userDetailsForm: FormGroup | null; user_id: string; userName: string; stepTitlesEdit: { step1: string; step2: string; step3: string; step5: string; step6: string; }; stepTitles: { step1: string; step2: string; step3: string; step5: string; step6: string; }; constructor(contactService: ContactService, contactOrganisationsService: ContactOrganisationsService, contactSetterService: ContactSetterService, contactTypeService: ContactTypeService, messageService: MessageService, primengConfig: PrimeNGConfig, userCoreService: UserCoreService); ngOnInit(): void; ngOnDestroy(): void; initForms(): void; initOrganisationContactForm(): void; initServices(): void; setFormData(): void; onChanges(): void; collectFormData(): void; collectNames(): void; collectContacts(): void; collectOrganisationProperties(): UserProfileProperty[]; collectProfileProperties(): UserProfileProperty[]; submitForm(): void; onCancel(): void; onDone(): void; step(step: any, next?: any): void; backStep(): void; afterStepOne(): void; afterOrganisationDetails(): void; afterContactDetails(): void; anotherOrganisationContact(): void; userExist(email: string): Observable; invite(): void; legalSame(): void; deleteDetail(type: string, index: number): void; editDetail(type: string, details: ContactMethods): void; openAddEmail(): void; openAddPhone(): void; makeDefaultDetail(type: string, index: number): void; handleDetailClose(value: any): void; handleAdd(details: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }