export interface LdapUserRow { userId: string; firstName: string; lastName: string; email: string; } export type LdapQueryType = 'userId' | 'firstName' | 'lastName'; export interface OverviewUserRow extends LdapUserRow { userTemplate: string; } export interface OverviewLineRow { number: string; did: string; routePartitionName: string; css: string; description: string; } export interface OverviewDeviceRow { name: string; deviceType: string; lines: string; description: string; } export type UserCreationType = 'CUCM' | 'MT'; export interface UserDetailsForm { userId: string; firstName: string; lastName: string; email: string; } export interface UserDetailsLineFormValue { lineNumber: string; number: string; routePartition: string; } export interface UserDetailsDeviceFormValue { deviceType: string; protocol: string; buttonTemplate: string; name: string; } export interface UserDetailsFormValue { userId: string; firstName: string; lastName: string; email: string; lines: UserDetailsLineFormValue[]; devices: UserDetailsDeviceFormValue[]; deviceProfiles: UserDetailsDeviceFormValue[]; } export interface LineOption { number: string; did: string; css: string; description: string; } export interface SelectedLineRow { lineNumber: string | null; routePartitionName: string | null; } export interface DeviceEntry { deviceType: string; protocol: string; buttonTemplate: string; name: string; } export interface TemplateLineLike { directoryNumber?: { directoryNumber?: string; routePartitionName?: string | null; templateDirectoryNumber?: string | null; }; description?: string | null; callingSearchSpace?: string | { name?: string | null; } | null; didPatterns?: Array<{ pattern?: string | null; }> | null; } export interface TemplateDeviceLike { deviceType?: string | null; protocol?: string | null; buttonTemplate?: string | null; name?: string | null; lineAssociations?: Array<{ logMissedCall?: boolean | string | null; directoryNumber?: { directoryNumber?: string; routePartitionName?: string | null; templateDirectoryNumber?: string | null; } | null; }>; } export interface TemplateEndUserLike { userid?: string | null; firstName?: string | null; lastName?: string | null; email?: string | null; lines?: TemplateLineLike[] | null; devices?: TemplateDeviceLike[] | null; } export interface UserTemplateInterface { id: number; name: string; description: string; createOrUpload: string | null; userTemplateSettings: UserTemplateSetting[]; customerId: number; userRequiredFields: string[]; deviceRequiredFields: string[]; udpRequiredFields: string[]; lineRequiredFields: string[]; endUser: EndUserInterface; type: string; globalTemplate: boolean; } export interface UserTemplateSetting { } export declare class EndUser implements Partial { lines: LineInterface[]; voicemail: Voicemail; constructor(init?: EndUserInterface); } export interface EndUserInterface { userid?: string | null; email?: string | null; firstName?: string | null; lastName?: string | null; domain?: string | null; customerId?: number | null; department?: string | null; userProfile?: string | null; manager?: string | null; enableMobileVoiceAccess?: boolean | null; associatedPc?: string | null; userLocale?: string | null; digestCredentials?: string | null; middleName?: string | null; title?: string | null; telephoneNumber?: string | null; homeNumber?: string | null; mobileNumber?: string | null; pagerNumber?: string | null; displayName?: string | null; directoryUri?: string | null; presenceGroup?: string | null; subscribeCss?: string | null; allowDeviceControlFromCti?: boolean | null; enableCrossClusterEm?: boolean | null; mlppUserIdNumber?: string | null; mlppPrecedencePattern?: string | null; createUserMode?: boolean; enableMobility?: boolean | null; devices?: DeviceInterface[]; deviceProfiles?: DeviceInterface[]; lines: LineInterface[]; singleNumberReach?: { associatedLines?: LineInterface[] | null; remoteDestinations?: { lineAssociations?: LineInterface[] | null; }[] | null; remoteDestinationProfileName?: string | null; } | null; primaryLineReference?: unknown | null; voicemail?: Voicemail; features?: Feature[]; migrationVmUnchanged?: boolean | null; migrationImPUnchanged?: boolean | null; ucServiceProfile?: string | null; telecomManagerRule?: boolean; userTemplateUdpDeviceTypesRules?: UserTemplateUdpDeviceTypesRule[]; ldapIntegrated?: boolean | null; } export interface CallInfoDisplay { callerName?: string | null; callerNumber?: string | null; redirectedNumber?: string | null; dialedNumber?: string | null; } export interface DidPattern { calledPartyTransformationMask?: string | null; pattern?: string | null; } export interface ProtocolSpecificDefaults { buttonTemplates: string[]; securityProfiles: string[]; supportedExpansionModules: string[]; supportsSoftkeyTemplates: boolean; supportsBLF: boolean; supportsEM: boolean; supportsMultipleCallDisplay: boolean; } export interface DeviceDefaultsInterface { deviceType: string; deviceNameRegex: string; deviceNameExplained: string; networkLocales: string[]; protocolProtocolSpecificDefault: Record; } export interface DeviceInterface { deviceType: string | null; protocol: string | null; name: string | null; newName: string | null; prefix: string | null; description?: string | null; buttonTemplate: string | null; location: string | null; devicePoolName: string | null; softkeyTemplate: string | null; entityChangeType: string | null; createDeviceMode?: boolean; callingSearchSpaceName: string | null; commonPhoneConfigName: string | null; securityProfile: string | null; userLocale: string | null; networkLocale: string | null; enabledExtensionMobility: boolean | null; firstExpansionModule: string | null; secondExpansionModule: string | null; withUdp: boolean; lineAssociations: LineAssociation[]; sipProfile: string | null; subscribeCallingSearchSpaceName: string | null; extraOptions: DeviceExtraOptions; userDeviceType: string | null; builtInBridge: string | null; services: Service[]; speedDials: SpeedDial[]; busyLampFields: BusyLampField[]; webexUUID: string | null; pkid: string | null; deviceDefaults?: DeviceDefaultsInterface | null; nameValidationRegex?: string | null; nameValidationCaption?: string | null; } export interface LineAssociation { linePkid: string | null; index: number; position: string | null; directoryNumber: DirectoryNumber; e164Mask: string | null; textLabel: string | null; displayLabel: string | null; displayLabelAscii: string | null; maxNumberOfCalls: number | null; busyTrigger: number | null; recordingOption: string | null; recordingProfile: string | null; recordingMediaSource: string | null; visualMWI: boolean | null; audibleMWI: boolean | null; ringSetting_idle: string | null; ringSetting_active: string | null; pickupAAS_idle: string | null; pickupAAS_active: string | null; monitorCSS: string | null; logMissedCall: boolean | string | null; callInfoDisplay: CallInfoDisplay | string | null; lineLocalId: string; didPattern: DidPattern | string | null; entityChangeType?: string | null; sharedDevices: SharedDevice[]; sharedUsers: SharedUser[]; ownerUserId: string[]; associated: boolean; patternUsage: string | null; alertingName: string | null; populateWithDid: boolean; } export interface DirectoryNumber { directoryNumber: string; templateDirectoryNumber?: string; routePartitionName: string; pkid?: string | null; dnType?: string | null; subType?: string | null; displayValue?: string; } export interface DeviceExtraOptions { mediaResourceGroupList: string | null; userHoldMOHAudioSourceId: string | null; userHoldMOHAudioSourceName: string | null; networkMOHAudioSourceId: string | null; networkMOHAudioSourceName: string | null; aarCss: string | null; aarGroup: string | null; privacy: string | null; deviceMobilityMode: string | null; mobilityUserId: string | null; phonePersonalization: string | null; servicesProvisioning: string | null; phoneLoadName: string | null; phoneIdleBLFAlertSetting: string | null; phoneBusyBLFAlertSetting: string | null; useTrustedRelayPoint: boolean | null; alwaysUsePrimeLine: boolean | null; alwaysUsePrimeLineForVoiceMessage: boolean | null; geolocation: string | null; ignorePresentationIndicators: boolean | null; loggedIntoHuntGroup: boolean | null; enabledExtensionMobility: boolean | null; remoteDevice: string | null; protectedDevice: boolean | null; hotlineDevice: boolean; commonDeviceConfigName: string | null; useDevicePoolCgpnIngressDN: boolean | null; cgpnIngressDN: string | null; useDevicePoolCgpnTransformCss: boolean | null; cgpnTransformationCss: string | null; packetCaptureMode: string | null; packetCaptureDuration: number | null; blfPresenceGroup: string | null; sipDialRules: string | null; mtpPreferredOriginatingCodec: string | null; rerouteCss: string | null; subscribeCss: string | null; digestUser: string | null; mtpRequired: boolean | null; unattendedPort: boolean | null; requireDtmfReception: boolean | null; informationUrl: string | null; directoryUrl: string | null; messagesUrl: string | null; servicesUrl: string | null; authenticationUrl: string | null; proxyServerUrl: string | null; idleUrl: string | null; idleTimeout: number | null; secureAuthenticationUrl: string | null; secureDirectoryUrl: string | null; secureIdleUrl: string | null; secureInformationUrl: string | null; secureMessageUrl: string | null; secureServicesUrl: string | null; mlppDomain: string | null; mlppIndication: string | null; mlppPreemption: string | null; confidentialAccessMode: string | null; confidentialAccessLevel: string | null; confidentialAccessLevelName: string | null; doNotDisturb: boolean | null; dndOption: string | null; dndIncomingCallAlert: string | null; disableSpeakerphone: boolean | null; disableSpeakerphoneAndHeadset: boolean | null; forwardingDelay: number | null; pcPort: boolean | null; settingsAccess: string | null; gratuitousARP: boolean | null; pcVoiceVlanAccess: string | null; videoCapabilities: string | null; webAccess: boolean | null; daysDisplayNotActive: number | null; displayOnTime: string | null; displayOnDuration: number | null; displayIdleTimeout: number | null; wirelessHeadsetHookswitchControl: boolean | null; minRingVolume: number | null; showAllCallsOnPL: boolean | null; lineMode: string | null; latentCapabilityRegistration: boolean | null; actionableAlert: boolean | null; revertToAllCalls: boolean | null; widebandHeadsetUIControl: boolean | null; widebandHeadset: boolean | null; authentication802: boolean | null; spanToPcPort: boolean | null; headsetMonitor: boolean | null; headsetRecording: boolean | null; updatedFields: string[]; enableCdpSwPort: boolean | null; enableCdpPcPort: boolean | null; enableLldpPcPort: boolean | null; defaultWallpaperFile: string | null; analogGatewayPortInformation: string | null; loadServer: string | null; peerFirmwareSharing: string | null; } export interface LineInterface { directoryNumber: DirectoryNumber; callingSearchSpace: string | null; description: string | null; localId: string; entityChangeType: string | null; alertingName: string | null; asciiAlertingName: string | null; callForwardAll: CallForward; callForwardAllSecondaryCSS: CallForward; callForwardBusyInternal: CallForward; callForwardBusyExternal: CallForward; callForwardNoAnswerInternal: CallForward; callForwardNoAnswerExternal: CallForward; callForwardNoCoverageInternal: CallForward; callForwardNoCoverageExternal: CallForward; callForwardOnCTIFailure: CallForward; callForwardUnregisteredInternal: CallForward; callForwardUnregisteredExternal: CallForward; voiceMailProfile: string | null; noAnswerRingDuration: number | null; autoAnswer: string | null; callPickupGroup: string | null; aarSettings: AarSettings; parkMonitoringInternal: string | null; parkMonitoringExternal: string | null; urgentPriority: string | null; blfPresenceGroup: string | null; userHoldMOHAudioSourceId: string | null; userHoldMOHAudioSourceName: string | null; networkMOHAudioSourceId: string | null; networkMOHAudioSourceName: string | null; rejectAnonymousCall: boolean | null; enterpriseAltNum: string | null; e164AltNum: string | null; directoryUris: string[]; callForwardAlternateParty: CallForward; mlppNoAnswerRingDuration: number | null; confidentialAccessMode: string | null; confidentialAccessLevel: string | null; confidentialAccessLevelName: string | null; callControlAgentProfile: string | null; holdReversionRingDuration: number | null; holdReversionNotificationInterval: number | null; partyEntranceTone: string | null; pstnFailover: string | null; newToUser: boolean | null; didPatterns: string[]; } export interface CallForward { forwardToVoiceMail: boolean | null; destination: string | null; callingSearchSpace: string | null; duration: number | null; } export interface AarSettings { aarDestinationMask: string | null; aarGroup: string | null; aarVoiceMailEnabled: boolean | null; aarKeepCallHistory: boolean | null; } export interface DeviceProfile { } export interface Feature { } export interface UserTemplateUdpDeviceTypesRule { id: number; originalDeviceType: string; protocol: string; newDeviceType: string; originNewDeviceType: string; entityChangeType: string; newProtocol: string; isTemplateRule: boolean; localId: number; } export interface SharedDevice { } export interface SharedUser { } export interface Service { } export interface SpeedDial { } export interface BusyLampField { } export declare enum DnRangeType { extension = "EXTENSION", cpg = "CPG", callpark = "CALLPARK", huntgroup = "HUNTGROUP", meetme = "MEETME", did = "DID" } export interface DnRangeInterface { from: string; to: string; prefix: string; routePartition: string; dnType: DnRangeType; tempIdx: number; } export interface AvailablePhoneNumberRangeInterface { phoneNumberRange: DnRangeInterface; usedNumbers: string[]; requestedNumber: string; unUsedNumbersWithDids: any[]; } export interface AvailableRangeInterface { availableNumberList: AvailablePhoneNumberRangeInterface[]; } export declare enum UserViewType { details = 0, devices = 1, lines = 2, snr = 3, features = 4, overview = 5 } export interface ListUserInterface { userid: string; firstName?: string; lastName?: string; email?: string; telephoneNumber?: string; viewMode?: UserViewType; devices: DeviceInterface[]; deviceProfiles: DeviceInterface[]; lines?: LineInterface[]; siteId?: number; siteName?: string; checked?: boolean; } export interface LdapUsersTableResponse { total: number; pageData: ListUserInterface[]; } export declare class Voicemail implements Partial { callHandlerObjectId?: string; extension: string; vmUserTemplate: string; emailAddress: string; vmPassword?: any; vmMailbox?: any; vmUnifiedMessagingAccount?: any[]; notificationDevices?: any[]; alternateExtensions?: any[]; language?: any; messageActions?: any; callerInput?: any; webAppPasswordSettings?: any; vmPasswordSettings?: any; greetings: any[]; pkid?: string; pin: string; changeExtensionByNewLine: number; constructor(vm?: VoicemailInterface); getSavableData(): any; } export interface VoicemailInterface { callHandlerObjectId?: string; extension: string; vmUserTemplate?: string; vmPassword?: any; vmMailbox?: any; vmUnifiedMessagingAccount?: any[]; notificationDevices?: any[]; alternateExtensions?: any[]; language?: any; messageActions?: any; webAppPassword?: any; vmPasswordSettings?: any; pkid?: string; }