import { EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { Router } from '@angular/router'; import { CdkDragDrop } from '@angular/cdk/drag-drop'; import { MatDialog } from '@angular/material/dialog'; import { UserService } from '../services/user.service'; import { APIService } from '../services/api.service'; import { SiteSettingsService } from '../services/site-settings.service'; import { DeviceService } from '../services/device.service'; import { LineService } from '../services/line.service'; import { RecordingOptions } from '../classes/device'; import * as i0 from "@angular/core"; export interface AssociatedLineRow { id: number; pkid: string; extension: string; routePartitionName: string; order: number; lineNumber: string; displayCallerId: string; textLabel: string; e164Mask: string; maxNumberOfCalls: number; busyTrigger: number; recordingOption: RecordingOptions; recordingMediaSource: string; recordingProfile: string; visualMWI: string; ringSettingIdle: string; pickupAASIdle: string; monitorCSS: string; audibleMWI: string; ringSettingActive: string; pickupAASActive: string; logMissedCalls: boolean; callerName: boolean; redirectedNumber: boolean; callerNumber: boolean; dialedNumber: boolean; } export declare class AssociateLinesComponent implements OnInit, OnDestroy { userService: UserService; private apiService; private readonly siteSettingsService; private readonly deviceService; private readonly lineService; private readonly dialog; private readonly router; goBack: EventEmitter; token: string; host: string; siteId: string; userId: string; deviceName: string; private readonly destroy$; dataPending: boolean; device: any; hasChanges: boolean; expandedOrder: number | null; readonly recordingOptions: typeof RecordingOptions; readonly recordingMediaSources: string[]; recordingProfiles: string[]; readonly visualMwiOptions: string[]; readonly audibleMwiOptions: string[]; readonly ringSettingIdleOptions: string[]; readonly ringSettingActiveOptions: string[]; readonly pickupAasIdleOptions: string[]; readonly pickupAasActiveOptions: string[]; rows: AssociatedLineRow[]; private originRows; private static readonly FIELD_MAP; private static readonly BOOLEAN_FIELDS; constructor(userService: UserService, apiService: APIService, siteSettingsService: SiteSettingsService, deviceService: DeviceService, lineService: LineService, dialog: MatDialog, router: Router); ngOnInit(): void; private loadDevice; private fetchLineSlots; private loadRecordingProfiles; private initRows; private createRow; isRowEditable(row: AssociatedLineRow): boolean; toggleExpanded(row: AssociatedLineRow): void; isExpanded(row: AssociatedLineRow): boolean; onFieldChange(): void; recordingOptionChanged(row: AssociatedLineRow): void; isRecordingProfileDisabled(row: AssociatedLineRow): boolean; drop(event: CdkDragDrop): void; confirmDisassociate(row: AssociatedLineRow): void; private disassociateLine; onGoBack(): void; onCancel(): void; onSave(): void; private buildUpdateBody; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }