import * as i0 from '@angular/core'; import { PipeTransform, ElementRef, OnInit, OnDestroy, EventEmitter } from '@angular/core'; import * as i24 from '@angular/forms'; import { FormGroup, AbstractControl, FormBuilder, ValidatorFn, FormArray, FormControl } from '@angular/forms'; import * as i17 from '@angular/material/snack-bar'; import { MatSnackBar } from '@angular/material/snack-bar'; import * as i27 from '@ngx-translate/core'; import { TranslateService } from '@ngx-translate/core'; import { Observable } from 'rxjs'; import * as i2 from '@angular/common/http'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import * as i22 from '@angular/common'; import { DatePipe } from '@angular/common'; import * as i21 from '@angular/material/checkbox'; import { MatCheckboxChange } from '@angular/material/checkbox'; import * as i12 from '@angular/material/select'; import { MatSelectChange } from '@angular/material/select'; import * as i14 from '@angular/material/datepicker'; import { MatDatepicker } from '@angular/material/datepicker'; import { Moment } from 'moment'; import * as i18 from '@angular/material/table'; import { MatTable } from '@angular/material/table'; import * as i25 from 'ng2-file-upload'; import { FileUploader, FileItem } from 'ng2-file-upload'; import { IconDefinition } from '@fortawesome/free-solid-svg-icons'; import * as i8 from '@angular/material/stepper'; import * as i9 from '@angular/material/button'; import * as i10 from '@angular/material/form-field'; import * as i11 from '@angular/material/input'; import * as i13 from '@angular/material/divider'; import * as i15 from '@angular/material-moment-adapter'; import * as i16 from '@angular/material/core'; import * as i19 from '@angular/material/icon'; import * as i20 from '@angular/material/radio'; import * as i23 from '@ngbracket/ngx-layout'; import * as i26 from '@fortawesome/angular-fontawesome'; declare class LocalTranslatePipe implements PipeTransform { /** * Translates the value using local values * @param value Value to translate locally * @param args Arguments to translate */ transform(value: any, args?: any): any; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** * The alert service */ declare class AlertService { private translateService; private localTranslatePipe; private snackBar; /** the translation ket for close text */ private readonly closeTextKey; /** * The constructor * @param translateService The translate service. * @param localTranslatePipe The local translate pipe. * @param snackBar The snackbar to display message. */ constructor(translateService: TranslateService, localTranslatePipe: LocalTranslatePipe, snackBar: MatSnackBar); /** * Opens a generic snack bar alert * @param detailsTextKey text to show in the alert * @param durationLength how long the alert should be shown before it fades */ openCustomSnackBarAlert(detailsTextKey: string, params?: any, durationLength?: number): void; /** * Opens an alert with a the specific form validation error * @param form the form to validate * @param el the element reference from the forms page, used to set focus on invalid form * @param durationLength how long the alert should be shown before it fades */ openFormInvalidSnackBarAlert(form: FormGroup, el: ElementRef, durationLength?: number): void; /** * Iterates through a form (form group/form array) recursively to get the individual form control that is invalid * @param form the form to validate * @param el the element reference from the forms page, used to set focus on invalid form * @param durationLength how long the alert should be shown before it fades */ getWhatIsNotFilledOut(form: FormGroup, el: ElementRef, durationLength: number): string; /** * Gets the error message based on the form control that is invalid * @param control the invalid form control * @param field the field name that is invalid * @param el the element reference from the forms page, used to set focus on invalid form * @param durationLength how long the alert should be shown before it fades */ getErrorMessage(control: AbstractControl, field: string, el: ElementRef, durationLength: number): string; /** * Formats the form control name to readable text to display to the user in an error alert * @param field The field */ getFieldFormattedText(field: string): string; /** * Sets focus to the first invalid form control element * @param el Element to focus on */ setFocusToFormControl(el: ElementRef): void; /** * Get the translated message * @param messageKey en.json translation key for message * @param interpolateParams additional params for message */ getTranslatedMessage(messageKey: string, interpolateParams?: any): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** The message service */ declare class MessageService { /** The subject for message */ private subject; /** * Send message notification * @param message The message content */ sendMessage(message: any): void; /** * Clear the current messages */ clearMessages(): void; /** * Get the current messages */ getMessage(): Observable; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * The attachment class */ interface Attachment { /** The attachment name */ name: string; /** The attachment file */ file: File; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The ApprovalProfile. */ interface ApprovalProfile { /** * The Approver. */ approver?: string; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The ExpediteProfile. */ interface ExpediteProfile { /** * The ExpediteSource. */ expediteSource?: string; /** * The ExpediteMethod. */ expediteMethod?: string; /** * The RequestedBy. */ requestedBy?: string; /** * The EmailAddress. */ emailAddress?: string; /** * The Severity. */ severity?: number; /** * The ReOpenedCase. */ reOpenedCase?: number; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The InformationProfile. */ interface InformationProfile { /** * The EncounterType. */ encounterType?: string; /** * The SubscriberID. */ subscriberID?: string; /** * The MemberID. */ memberID?: string; /** * The BrokerID. */ brokerID?: string; /** * The EmployerID. */ employerID?: string; /** * The LastName. */ lastName?: string; /** * The FirstName. */ firstName?: string; /** * The SSN. */ ssn?: string; /** * The DOB. */ dob?: string; /** * The GroupID. */ groupID?: string; /** * The CompanyName. */ companyName?: string; /** * The TIN. */ tin?: string; /** * The Address1. */ address1?: string; /** * The Address2. */ address2?: string; /** * The City. */ city?: string; /** * The State. */ state?: string; /** * The Zip. */ zip?: string; /** * The IncomingPhone. */ incomingPhone?: string; /** * The HomePhone. */ homePhone?: string; /** * The WorkPhone. */ workPhone?: string; /** * The MobilePhone. */ mobilePhone?: string; /** * The Fax. */ fax?: string; /** * The EmailAddress. */ emailAddress?: string; /** * The CurrentPaidThroughDate. */ currentPaidThroughDate?: string; /** * The MemberEnrollmentFolderID. */ memberEnrollmentFolderID?: string; /** * The MemberFolderID. */ memberFolderID?: string; /** * The ReferenceQualifier. */ referenceQualifier?: string; /** * The ReferenceID. */ referenceID?: string; /** * The RemoteFolderID. */ remoteFolderID?: number; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The InternalProfile. */ interface InternalProfile { /** * The InternalResponse. */ internalResponse?: string; /** * The ProcessType. */ processType?: number; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ interface NewValuesRow { key?: string; value?: string; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The RequestProfile. */ interface RequestProfile { /** * The PrimaryRequest. */ primaryRequest?: string; /** * The Subcategory. */ subcategory?: string; /** * The Action. */ action?: string; /** * The CurrentValue. */ currentValue?: string; /** * The NewValue. */ newValue?: string; /** * The Request. */ request?: string; /** * The Response. */ response?: string; /** * The ArticleID. */ articleID?: string; /** * The PriorCase. */ priorCase?: number; /** * The StatusCode. */ statusCode?: number; /** * The OptOutOfEmails. */ optOutOfEmails?: number; /** * The ReceivedDateTime. */ receivedDateTime?: Date; /** * The NewValues. */ newValues?: Array; } /** * Softheon.API.Lighthouse.Web * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) * * OpenAPI spec version: 1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /** * The ServiceRequestModel. */ interface ServiceRequestModel { /** * The InformationProfile. */ information?: InformationProfile; /** * The RequestProfile. */ request?: RequestProfile; /** * The ExpediteProfile. */ expedite?: ExpediteProfile; /** * The InternalProfile. */ internal?: InternalProfile; /** * The ApprovalProfile. */ approval?: ApprovalProfile; drawerId?: number; id?: number; name?: string; state?: ServiceRequestModel.StateEnum; } declare namespace ServiceRequestModel { type StateEnum = 'Undefined' | 'Available' | 'Locked' | 'Suspended' | 'Archived' | 'Deleted' | 'Canceled' | 'Complete' | 'Reviewed' | 'ReviewedSuspended' | 'ReviewedComplete' | 'Rejected' | 'RoutingSlipOpen' | 'ReviewedRoutingSlipOpen'; const StateEnum: { Undefined: StateEnum; Available: StateEnum; Locked: StateEnum; Suspended: StateEnum; Archived: StateEnum; Deleted: StateEnum; Canceled: StateEnum; Complete: StateEnum; Reviewed: StateEnum; ReviewedSuspended: StateEnum; ReviewedComplete: StateEnum; Rejected: StateEnum; RoutingSlipOpen: StateEnum; ReviewedRoutingSlipOpen: StateEnum; }; } declare class AdditionalFieldsConfiguration { /** The Issue Type */ issueType: string; /** The category */ category: string; /** The field label */ label: string; /** The input type */ inputType: string; /**The form control name */ formControlName: string; /** The input type options */ inputTypeOptions: Array; } declare class ExistingAdditionalFieldsConfiguration { /** The Issue Type */ issueType: string; /** The category */ category: string; /** The field label */ required: boolean; /** The field name */ fieldName: string; /** The input type options */ inputOptions: Array; /** The input type options */ inputDisplayOptions: Array; } declare class IssueCategoryConfiguration { /** The Issue Type */ issueType: string; /** The Category Action Map */ categoryActionMap: Map; } declare class ServiceRequestConfig { /** The service request model */ serviceRequest: ServiceRequestModel; /** The drawer id */ drawerId: number; /** The entity id */ entityId: number; /** The base uri for api call */ baseUri: string; /** The optional service request full uri for api call */ serviceRequestFullUri: string; /** The optional attachment full uri for api call */ attachmentFullUri: string; /** The flag to check whether the input uri is full uri */ isFullUri: boolean; /** The access token for api call */ accessToken: string; /** The path to language file */ languagePath: string; /** The path for encounter type */ encounterType: string; /** The api version */ apiVersion: number; /** The Issue Category Configured values */ issueCategoryConfiguration: Array; /** The Additional Questions Configured values */ additionalFieldsConfig: Array; /** The existing additional fields configuration */ modifiedExistingFieldsConfig: Array; /** The health coverage monthly premium, used to determine max hardship waiver amount */ healthCoverageMonthlyPremium: number; /** The constructor */ constructor(); } /** * The model for additional information form */ declare const additionalInformationForm: any; /** * The model for service category form */ declare const serviceCategoryForm: any; /** * The model for dedup member form */ declare const dedupMemberForm: any; /** * The model for service request form */ interface ServiceRequestForm { serviceCategory: FormGroup; additionalInformation: FormGroup; } /** * The model for service request */ declare const serviceRequestModelForm: any; /** The form service */ declare class FormService { private formBuilder; /** The service request form */ serviceRequestForm: FormGroup; /** The non required fields */ nonRequiredFields: Map; /** The service request config model */ config: ServiceRequestConfig; /** * The constructor * @param formBuilder The form builder */ constructor(formBuilder: FormBuilder); /** * The function to update form validation based on the current form values */ updateFormValidation(): void; /** * The function to update service request form group by the values from service request model. * @param model The service request model */ updateServiceRequestForm(model: ServiceRequestModel): void; /** * The function to check the given field is required field * @param key The key */ isRequiredField(key: string): boolean; /** * The function to add from array element by the given key. * @param key The key */ addArrayElement(key: string): void; /** * Range validator for number inputs * @param min Minimum value (exclusive) * @param max Maximum value (inclusive) * @returns rangeError if min <= value or value > max error; otherwise, null. */ numberRangeValidator(min: number, max: number): ValidatorFn; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** The abstract entity service */ declare abstract class AbstractEntityService { /** * Create entity. * @param uri Target uri for api call. * @param accessToken The access token for api call. * @param model Model. * @param isFullUri flag value to check the uri is full uri * @param drawerId Drawer id. */ abstract createEntity(uri: string, accessToken: string, model: T, isFullUri?: boolean, drawerId?: number): Promise; /** * Retrieve entity. * * @param uri Target uri for api call. * @param accessToken The access token for api call. * @param isFullUri flag value to check the uri is full uri * @param drawerId Drawer id. * @param entityId Model. */ abstract retrieveEntity(uri: string, accessToken: string, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; /** * Update entity. * @param uri Target uri for api call. * @param accessToken The access token for api call. * @param model Model. * @param isFullUri flag value to check the uri is full uri * @param drawerId Drawer id. * @param entityId Entity id. */ abstract updateEntity(uri: string, accessToken: string, model: T, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; /** * Delete entity. * @param uri Target uri for api call. * @param accessToken The access token for api call. * @param isFullUri flag value to check the uri is full uri * @param drawerId Drawer id. * @param entityId Entity id. */ abstract deleteEntity(uri: string, accessToken: string, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; } /** * The API service */ declare class ApiService { private http; private messageService; /** * The constructor * @param http The http client * @param messageService The message service for observable subscription */ constructor(http: HttpClient, messageService: MessageService); /** * Performs HTTP GET request using the provided uri. * @param fullUri the uri to GET from * @param header the header for http request */ get(fullUri: string, header?: HttpHeaders): Promise; /** * Performs HTTP POST request using the provided uri. * @param fullUri the uri to POST from * @param content the content body for http request * @param header the header for http request */ post(fullUri: string, content: any, header?: HttpHeaders): Promise>; /** * Performs HTTP PUT request using the provided uri. * @param fullUri the uri to PUT from * @param content the content body for http request * @param header the header for http request */ put(fullUri: string, content: any, header?: HttpHeaders): Promise>; /** * Performs HTTP PATCH request using the provided uri. * @param fullUri the uri to PATCH from * @param content the content body for http request * @param header the header for http request */ patch(fullUri: string, content: any, header?: HttpHeaders): Promise>; /** * Performs HTTP DELETE request using the provided uri. * @param fullUri the uri to DELETE from * @param header the header for http request */ delete(fullUri: string, header?: HttpHeaders): Promise>; /** * Returns a new http header with content type set to application/json */ private getHeader; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** The service request entity service */ declare class ServiceRequestEntityService extends AbstractEntityService { private readonly apiService; /** * constructor * @param apiService the api service */ constructor(apiService: ApiService); /** * Perform the action to create service request entity to the server. * @param uri the uri for api call * @param accessToken the access token * @param model the model for content body * @param isFullUri flag to check the uri is for full uri * @param drawerId the drawer id */ createEntity(uri: string, accessToken: string, model: ServiceRequestModel, isFullUri?: boolean, drawerId?: number): Promise; /** * Perform the action to retrieve service request entity from the server. * @param uri the uri for api call * @param accessToken the access token * @param isFullUri flag to check the uri is for full uri * @param drawerId the drawer id * @param entityId the entity id */ retrieveEntity(uri: string, accessToken: string, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; /** * Perform the action to update service request entity to the server. * @param uri the uri for api call * @param accessToken the access token * @param model the model for content body * @param isFullUri flag to check the uri is for full uri * @param drawerId the drawer id * @param entityId the entity id */ updateEntity(uri: string, accessToken: string, model: ServiceRequestModel, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; /** * Perform the action to delete service request entity from the server. * @param uri the uri for api call * @param accessToken the access token * @param isFullUri flag to check the uri is for full uri * @param drawerId the drawer id * @param entityId the entity id */ deleteEntity(uri: string, accessToken: string, isFullUri?: boolean, drawerId?: number, entityId?: number): Promise; /** * Returns a new http header with content type set to application/json with access token. * @param accessToken token to authorize for api call */ private getHeader; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * The attachment service */ declare class AttachmentService { private readonly apiService; /** * The constructor * @param apiService The api service */ constructor(apiService: ApiService); /** * Perform the action to create attachments to the target entity with api versioning. * @param uri the target uri * @param accessToken the access token * @param attachments the attachment array to insert * @param isFullUri the boolean flag to check the uri is full uri * @param drawerId the target drawer id * @param entityId the target entity id * @param apiVersion the api version for Lighthouse api */ createAttachments(uri: string, accessToken: string, attachments: Attachment[], isFullUri?: boolean, drawerId?: number, entityId?: number, apiVersion?: number): Promise; /** * Returns a new http header with content type set to application/json with access token. * @param accessToken token to authorize for api call */ private getHeader; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** The service request service */ declare class ServiceRequestService { private datePipe; /** The service request model */ serviceRequest: ServiceRequestModel; /** * The constructor * @param datePipe The date pipe */ constructor(datePipe: DatePipe); /** * The function to update current service request model. * @param serviceRequestForm The form group for service request */ updateServiceRequest(serviceRequestForm: FormGroup, additionalFieldsFormControls: Array): void; /** * The function to retrieve the formatted date * @param date The date */ private getFormattedDate; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * The service request component */ declare class ServiceRequestComponent implements OnInit, OnDestroy { private entityService; private attachmentService; private messageService; private formService; private alertService; private serviceRequestService; /** The service request config model */ config: ServiceRequestConfig; /** The number of api call count emitter */ apiCallCountEmitter: EventEmitter; /** The service request model emitter */ serviceRequestEmitter: EventEmitter; /** The service request submit result emitter */ isSubmitSuccessEmitter: EventEmitter; /** The service request form group */ serviceRequestFormGroup: FormGroup; /** The boolean flag to specify whether the submit is requested */ isSubmitRequested: boolean; /** The subscription to count the current api calls */ private apiCallCountSubscription; /** The current api calls counter */ private apiCallCounter; /** The attachments */ private attachments; /** The formControlsForAdditionalFields */ additionalFieldsFormControls: Array; /** * The constructor * @param entityService The entity service for api call * @param attachmentService The attachment service for api call * @param messageService The message service for subscription * @param formService The form service * @param alertService The alert service * @param serviceRequestService The service request service */ constructor(entityService: AbstractEntityService, attachmentService: AttachmentService, messageService: MessageService, formService: FormService, alertService: AlertService, serviceRequestService: ServiceRequestService); /** Initialize the component */ ngOnInit(): void; /** Destroy the component */ ngOnDestroy(): void; /** * Set the non required fields for adding validators to form */ private setNonRequiredFieldsFromConfig; /** * The function to update attachments * @param attachments The attachments from child components */ updateAttachments(attachments: Attachment[]): void; /** * The function to check the comments field has required validation. */ isCommentsRequired(): boolean; /** * The function to trigger if user click either next or submit button from mat stepper * @param groupKey The key for form group */ onClickNextStepper(groupKey: "serviceCategory" | "additionalInformation"): void; /** * Submit the completed service request */ submitServiceRequest(): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The additional information component */ declare class AdditionalInformationComponent implements OnInit { private formService; /** The flag to specify the comments field is required */ isCommentsRequired: boolean; /** The language path */ languagePath: string; /** The attachments emitter */ attachmentsEmitter: EventEmitter; /** The service request form group */ serviceRequestForm: FormGroup; /** * The constructor * @param formService The form service */ constructor(formService: FormService); /** * Initialize the component */ ngOnInit(): void; /** * The function to update current attachment list from file uploader component * @param attachments The attachments */ updateAttachments(attachments: Attachment[]): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The service category component */ declare class ServiceCategoryComponent implements OnInit { private translateService; private localTranslatePipe; private formService; /** The language path */ languagePath: string; /** The Array of issue category configurations*/ issueCategoryConfiguration: Array; /** The Array of additional questions configurations*/ additionalFieldsConfig: Array; /** The Array of modified existing fields configurations*/ modifiedExistingFieldsConfig: Array; /** The service request form group */ serviceRequestForm: FormGroup; /** The selected issue */ selectedIssue: string; /** The selected category */ selectedCategory: string; /** The selected notice type */ selectedNoticeType: string; /** The selected correction reason set */ selectedCorrectionReasonSet: Set; /** The issue data list */ issues: Array; /** The severity data list */ severities: Array; /** The category data list */ categoriesByIssue: Map>; /** The generated notice type data list */ generatedNoticeType: Array; /** The regenerated notice type data list */ regeneratedNoticeType: Array; /** The reason data list */ reason: Array; /** The discount type data list */ discountType: Array; /** The discount approved or denied data list */ discountApprovedOrDenied: Array; /** The correction type data list */ correctionType: Array; /** The correction reason data list */ correctionReason: Array; /** The update handicap data list */ updateHandicap: Array; /** The maximum date */ maxDate: Date; /** The current billing period */ currentBillingPeriod: String; /** The issue data list for drop down */ displayedIssues: Array; /** The severity data list for drop down */ displayedSeverities: Array; /** The category data list for drop down */ displayedCategoriesByIssue: Map>; /** The regenerated notice type data list for drop down */ displayedRegeneratedNoticeType: Array; /** The generated notice type data list for drop down */ displayedGeneratedNoticeType: Array; /** The reason data list for drop down */ displayedReason: Array; /** The discount type data list for drop down */ displayedDiscountType: Array; /** The discount type amount data list for dropdown */ displayedDiscountAmountType: Array; /** The discount approved or denied data list for drop down */ displayedDiscountApprovedOrDenied: Array; /** The correction type data list for radio button */ displayedCorrectionType: Array; /** The correction reason data list for check boxes */ displayedCorrectionReason: Array; /** The update handicap data list for drop down */ displayedUpdateHandicap: Array; /** The additional form fields based on category selected */ formFieldsBasedOnCategorySelected: Array; /** The display values for additional fields */ displayOptionsByAdditionalField: Map>; /** The additional fields display Check */ additionalFieldsDisplay: boolean; /** The values for additional field options */ optionsByAdditionalField: Map>; /** The dedup member form array */ get dedupMembers(): FormArray; /** The existing fields config */ existingFieldsConfig: ExistingAdditionalFieldsConfiguration[]; /** The selected existing fields config based on issue and category*/ selectedExistingFieldsConfig: ExistingAdditionalFieldsConfiguration[]; /** * The constructor * @param translateService The translate service for language * @param localTranslatePipe The local translate pipe * @param formService The form service */ constructor(translateService: TranslateService, localTranslatePipe: LocalTranslatePipe, formService: FormService); /** * Initialize the component */ ngOnInit(): void; /** * Update the existing field configs with the modified ones from the config */ private updateExistingFieldConfigs; /** * Update the current correction reason based on the check box selections * @param event The triggered check box event * @param index The current selected index */ onClickCorrectionReasonCheckBox(event: MatCheckboxChange, index: number): void; /** * Update the checkbox value in service category form group based on check box selections * @param event The triggered check box event * @param index The current selected index * @param formControlName The form control name defined for the checkbox field */ onCheckBoxSelectionForAdditionalFields(event: MatCheckboxChange, index: number, formControlName: string): void; /** Patches the default invoice period */ private patchDefaultInvoicePeriod; /** * load new fields based on the category selected and update form validation for that fields */ private populateNewFieldsAndUpdateFormValidation; /** * load additional fields based on the category selected and update form validation for that fields */ private populateExistingFieldsBasedOnCategorySelected; /** * Updates the action * @param event The triggered mat select event */ updateAction(event: MatSelectChange): void; /** * The function to add dedup member */ addDedupMember(): void; /** * The function to remove dedup member * @param index the target index to remove at */ removeDedupMember(index: number): void; /** * The function to initialize the selected field values */ private initializeSelectedValue; /** * Initialize the list of data to be displayed */ private initializeTranslation; /** * Initialize the additional fields in the form */ private intializeAdditionalFields; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The month year picker component */ declare class MonthYearPickerComponent { /** The form control for month year value */ monthYearFormControl: FormControl; /** The string value for placeholder */ placeholder: string; /** * The handler function for year selection event by date picker * @param normalizedYear The value of year */ chosenYearHandler(normalizedYear: Moment): void; /** * The handler function for month selection event by date picker * @param normalizedMonth The value of month * @param datePicker The date picker dom */ chosenMonthHandler(normalizedMonth: Moment, datePicker: MatDatepicker): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The year picker component */ declare class YearPickerComponent { /** The form control for year value */ yearFormControl: FormControl; /** The string value for placeholder */ placeholder: string; /** * The handler function for year selection event by date picker * @param normalizedYear The value of year * @param datePicker The date picker dom */ chosenYearHandler(normalizedYear: Moment, datePicker: MatDatepicker): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The file uploader component */ declare class FileUploaderComponent implements OnInit, OnDestroy { private snackBar; private translateService; private localTranslatePipe; /** The maximum file size config. 10MB by default */ maxFileSize: number; /** The language path */ languagePath: string; /** The event emitter for attachments */ attachmentsEmitter: EventEmitter; /** The attachmente material table */ attachmentTable: MatTable; /** The font awesome icon for cloud upload alt */ faCloudUploadAlt: IconDefinition; /** The font awesome icon for trash */ faTrash: IconDefinition; /** The file uploader object */ fileUploader: FileUploader; /** The boolean flag to check file drop zone over status */ hasBaseDropZoneOver: boolean; /** The boolean flag to check the file is over the limit file size config */ isMaxSizeOver: boolean; /** The displayed columns for attachment table */ displayedColumns: string[]; /** * The constructor * @param snackBar The snack bar material component * @param translateService The translate service for language * @param localTranslatePipe The local translate pipe */ constructor(snackBar: MatSnackBar, translateService: TranslateService, localTranslatePipe: LocalTranslatePipe); /** * Initialize the component life cycle */ ngOnInit(): void; /** * Destroy the component life cycle */ ngOnDestroy(): void; /** * The function when mouse is over the file drop area */ fileOverBase(event: any): void; /** * The function for removing item from queue */ removeItem(item: FileItem): void; /** * Emit the attachments with the file items in the queue */ emitAttachments(): void; /** * The function to create attachments based on file items from the queue */ private createAttachments; /** * Initialize the file uploader instance */ private initializeFileUploader; /** * Display snack bar for error message * @param errorMsgKey en.json translation key for error message * @param buttonMsgKey en.json translation key for error button message * @param interpolateParams Additional params for error message */ private showSnackBarErrorMsg; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * The letters only directive */ declare class LettersOnlyDirective { private el; /** True if only letters allowed */ lettersOnly: boolean; /** The array of allowed keys */ private allowedKeys; /** * Constructs the directive * @param el The element */ constructor(el: ElementRef); /** * Only allows letter inputs * @param event Key Event */ onKeyDown(event: any): void; /** * Prevent copy pasted inputs * @param event the event */ blockPaste(event: KeyboardEvent): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * Numbers only directive */ declare class NumbersOnlyDirective { private el; /** True if only numbers allowed */ numbersOnly: boolean; /** The array of allowed keys */ private allowedKeys; /** * Constructs the directive * @param el The element */ constructor(el: ElementRef); /** * Only allows number inputs * @param event Key Event */ onKeyDown(event: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * A pipe that takes a simple string phone number and formats it */ declare class PhoneFormatPipe implements PipeTransform { transform(phoneNumber: string): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵpipe: i0.ɵɵPipeDeclaration; } /** The shared module */ declare class SharedModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** The lighthouse service request module */ declare class ServiceRequestModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** The lighthouse core module */ declare class CoreModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** The lighthouse root module */ declare class LighthouseModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { AbstractEntityService, AdditionalInformationComponent, AttachmentService, FormService, LighthouseModule, ServiceCategoryComponent, ServiceRequestComponent, ServiceRequestConfig, ServiceRequestEntityService, ServiceRequestModel, ServiceRequestModule, ServiceRequestService, additionalInformationForm, dedupMemberForm, serviceCategoryForm, serviceRequestModelForm }; export type { ApprovalProfile, ExpediteProfile, InformationProfile, InternalProfile, NewValuesRow, RequestProfile, ServiceRequestForm };